返回市场
esp-mcp服务器

esp-mcp服务器

作者:horw115 星标更新:2025-07-02

项目介绍

【技术文档摘要】: MseeP.ai 安全评估徽章

目标

本MCP的目标是:

  • 将ESP-IDF及相关项目的命令集中在一个地方。
  • 仅通过LLM通信简化入门过程。

如何贡献于项目

只需找到一个缺失的命令并为此创建一个PR!

如果您需要帮助实现此功能,请打开一个issue。

注意事项

该项目目前是一个针对ESP-IDF工作流定制的MCP服务器的概念验证(PoC)。

当前能力:

  • 支持基本的ESP-IDF项目构建命令。
  • 可以将构建好的固件烧录到连接的ESP设备上,并可选指定端口。
  • 包含基于构建日志的自动问题修复实验性支持。

愿景与未来工作: 长期愿景是将此MCP扩展成一个与嵌入式设备交互的综合工具包,可能集成到家庭助手平台中,并简化ESP-IDF及相关技术的文档访问。

我们设想的功能包括:

  • 更广泛的ESP-IDF命令支持(例如,如果可行的话,monitormenuconfig交互)。
  • 设备管理和信息检索。
  • 与其他嵌入式开发工具和平台的集成。

欢迎您的想法和贡献!请随时通过打开一个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/python3C:\\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项目的构建文件。”
  • “将固件烧录到我连接的ESP32设备上的my_app项目。”

MCP服务器将根据main.py中实现的工具执行相应的ESP-IDF命令(如idf.py buildidf.py fullcleanidf.py flash)。

下面的result.gif显示了一个示例交互:

结果

示例

  1. 构建和烧录 <img src="./examples/build-flash.png">

Star 历史

Star 历史图表