【小技巧】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.pyload_dotenv()

  3. 如果有 requestsdotenvmcp 等第三方依赖,请确保 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)
相关推荐
黄雪超28 分钟前
JVM——函数式语法糖:如何使用Function、Stream来编写函数式程序?
java·开发语言·jvm
ThetaarSofVenice35 分钟前
对象的finalization机制Test
java·开发语言·jvm
思则变1 小时前
[Pytest] [Part 2]增加 log功能
开发语言·python·pytest
lijingguang1 小时前
在C#中根据URL下载文件并保存到本地,可以使用以下方法(推荐使用现代异步方式)
开发语言·c#
漫谈网络1 小时前
WebSocket 在前后端的完整使用流程
javascript·python·websocket
巴里巴气1 小时前
2025.1版本PyCharam找不到已存在的conda虚拟环境
pycharm·conda
¥-oriented1 小时前
【C#中路径相关的概念】
开发语言·c#
CoderCodingNo2 小时前
【GESP】C++四级考试大纲知识点梳理, (7) 排序算法基本概念
开发语言·c++·排序算法
恋猫de小郭2 小时前
Meta 宣布加入 Kotlin 基金会,将为 Kotlin 和 Android 生态提供全新支持
android·开发语言·ios·kotlin
JosieBook2 小时前
【Java编程动手学】使用IDEA创建第一个HelloJava程序
java·开发语言·intellij-idea