本MCP的目标是:
只需找到一个缺失的命令并为此创建一个PR!
如果您需要帮助实现此功能,请打开一个issue。
该项目目前是一个针对ESP-IDF工作流定制的MCP服务器的概念验证(PoC)。
当前能力:
愿景与未来工作: 长期愿景是将此MCP扩展成一个与嵌入式设备交互的综合工具包,可能集成到家庭助手平台中,并简化ESP-IDF及相关技术的文档访问。
我们设想的功能包括:
monitor、menuconfig交互)。欢迎您的想法和贡献!请随时通过打开一个issue来讨论它们。
首先,克隆这个MCP仓库:
git clone git@github.com:horw/esp-mcp.git
然后,在您的聊天机器人中进行配置。
以下JSON片段展示了如何在支持模型上下文协议(MCP)的聊天机器人或代理系统中配置此esp-mcp服务器。具体的配置步骤和格式可能会因您使用的特定聊天机器人系统而有所不同。请参阅您的聊天机器人的文档以了解如何集成MCP服务器的详细信息。
{
"mcpServers": {
"esp-run": { // "esp-run" 是您可以分配给此服务器配置的任意名称。
"command": "<path_to_uv_or_python_executable>",
"args": [
"--directory",
"<path_to_cloned_esp-mcp_repository>", // 例如,/path/to/your/cloned/esp-mcp
"run",
"main.py" // 如果直接使用python,这可能是仅仅 "main.py",并且 `command` 应该指向您的python解释器
],
"env": {
"IDF_PATH": "<path_to_your_esp-idf_directory>" // 例如,~/esp/esp-idf 或 C:\\Espressif\\frameworks\\esp-idf
}
}
}
}
关于配置的一些注意事项:
command:如果您使用的是uv,则应为uv可执行文件的完整路径;如果您计划直接运行main.py,则应为您的Python解释器(如 /usr/bin/python3 或 C:\\Python39\\python.exe)。args:
--directory应该是您克隆esp-mcp仓库的绝对路径。uv,那么run main.py作为参数是合适的。如果您直接使用Python,您可能只需要在args列表中包含main.py,并确保command指向Python可执行文件。IDF_PATH:此环境变量必须指向您的ESP-IDF安装的根目录。ESP-IDF是Espressif的官方物联网开发框架。如果您尚未安装它,请参考官方ESP-IDF文档获取安装说明。一旦esp-mcp服务器被配置并运行,您的LLM或聊天机器人就可以使用在此MCP中定义的工具与其进行交互。例如,您可以要求您的聊天机器人:
esp-mcp构建位于/path/to/my/esp-project的项目。”examples/hello_world目录中的ESP32项目的构建文件。”my_app项目。”MCP服务器将根据main.py中实现的工具执行相应的ESP-IDF命令(如idf.py build、idf.py fullclean、idf.py flash)。
下面的result.gif显示了一个示例交互:
