【小技巧】Python + PyCharm 小智AI配置MCP接入点使用说明(内测)( PyInstaller打包成 .exe 可执行文件)


【小技巧】Python+PyCharm IDE 配置解释器出错,环境配置不完整或不兼容。(小智AI、MCP、聚合数据、实时新闻查询、NBA赛事查询)


设置环境变量遇到过大问题:

  • 使用 PowerShell

  • 打包成.exe

Python 脚本打包成 .exe 可执行文件,最常用工具是 PyInstaller。下面是详细的依赖包、安装命令和常用打包指令说明。


安装依赖包

使用 PyInstaller:

bash 复制代码
pip install pyinstaller

基本打包命令

假设你的脚本叫 calculator.py:

bash 复制代码
pyinstaller --onefile calculator.py

打包完成后会生成:

复制代码
dist/
  └── calculator.exe

常用参数说明

参数 说明
--onefile 打包成单个 .exe 文件
--noconsole 不显示命令行窗口(适用于 GUI 程序)
--icon=xxx.ico 指定图标文件
--name=自定义名称 指定打包后的 EXE 名称

示例(带图标和重命名):

bash 复制代码
pyinstaller --onefile --name=mcp_tool --icon=myicon.ico calculator.py

注意事项

  1. 打包后的 .exe 会很大,因为包含了 Python 解释器和依赖库。

  2. 如果脚本用到了外部文件(如 .env 或配置文件),需通过 --add-data 指定:

    bash 复制代码
    pyinstaller --onefile --add-data ".env;." calculator.py
  3. 如果有多个模块、第三方库,请确保它们都正确安装在当前 Python 环境中。


安装后的目录结构

复制代码
dist/           # 打包后的 EXE
build/          # 临时构建文件
calculator.spec # PyInstaller 的配置文件

如何将这两个文件打包成.exe文件,只需要点击一个.exe文件就可以同时运行这两个文件

python mcp_pipe.py calculator.py 这条命令实际上运行了两个 Python 文件,但 控制主逻辑的是 mcp_pipe.py,它 作为"中间转发器" 。


你可以使用 PyInstaller 将整个 mcp_pipe.py + calculator.py 项目打包为一个单独的 .exe 可执行文件 ,只生成一个 .exe,运行后自动完成启动和通信过程。以下是完整的打包流程与注意事项:

打包指令

在 mcp_pipe.py 所在目录打开 PowerShell,执行:

bash 复制代码
pyinstaller --onefile --add-data "calculator.py;." mcp_pipe.py

说明:

  • --onefile:打成一个单独的 exe

  • --add-data:把 calculator.py 一起打包进去

    • Windows 下用 ; 分隔路径
    • Linux/macOS 下用 :

打包完成后:

生成目录结构如下:

复制代码
dist/
└── mcp_pipe.exe  ✅ 你要的单文件

你可以将 mcp_pipe.exe 重命名为 mcp_client.exe。


使用方式

只需双击 mcp_client.exe 或命令行运行:

bash 复制代码
mcp_client.exe

程序将自动:

  1. 读取环境变量 MCP_ENDPOINT
  2. 启动内部的 calculator.py
  3. 与云端通信,响应请求

⚠️ 注意事项:

  1. calculator.py 被打包进去是静态文件,如需后期更新工具功能,必须重新打包。

  2. 环境变量 MCP_ENDPOINT 仍需通过:

    powershell 复制代码
    $env:MCP_ENDPOINT="wss://api.xxxx.com/..."

    或写入 .env 文件并在 calculator.py 中 load_dotenv()。

  3. 如果有 requests、dotenv、mcp 等第三方依赖,请确保 requirements.txt 已完整,打包前测试无误。



  • 打包成.bat

自动运行的 .bat 脚本内容(保存为 mcp_endpoint_run.bat):

bat 复制代码
@echo off
set MCP_ENDPOINT=你的xx
start "" mcp_pipe.exe

shell 复制代码
powershell (Add-Type -MemberDefinition @"
  [DllImport("user32.dll")]
  public static extern int SendMessage(int hWnd, int hMsg, int wParam, int lParam);
"@ -Name "Win32SendMessage" -Namespace Win32Functions -PassThru)::SendMessage(-1, 0x0112, 0xF170, 2)
相关推荐
马优晨5 小时前
JAVA 中 VO 实体类是什么意思,为什么要做这个
java·开发语言·状态模式·java vo·java vo是什么
Aurorar0rua5 小时前
CS50 x 2024 Notes Python - 01
开发语言·python·学习方法
用户6602676118795 小时前
备注接口返回成功,数据库却没变:怎样限定一次修复的范围?
python
Dumbness5 小时前
用 Python + UI Automation 读写微信 PC 版:一个群消息自动回复程序的实现与踩坑
python
艺杯羹5 小时前
Windows跨平台编码地雷全解:从GBK静默崩溃到内核级原子写入防御
人工智能·python·桌面客户端
用户8356290780515 小时前
使用 Python 在 Excel 中识别并高亮重复数据与唯一数据
后端·python
CCblandy5 小时前
Agent 工具调用怎么编排?本机实测:并行只到 2.63 倍,慢的先发省 30ms,CPU 活加 worker 无效
人工智能·后端·python·性能优化
茉莉玫瑰花茶6 小时前
GO [ 标准库 ]
开发语言·后端·golang
用户8356290780516 小时前
使用 Python 在 Excel 中查找、替换数据并高亮显示
后端·python
GPU实战笔记6 小时前
PyCharm 接云 GPU:远端项目连接与远程解释器别混为一谈
python·pycharm·ssh·远程开发·云gpu