项目简介

AutoMCP 旨在简化将现有Agent框架的功能集成到 MCP 服务器的过程,使开发者能够轻松地将他们的 Agent、工具和编排器通过标准化的 MCP 接口暴露给客户端应用,例如 Cursor IDE 和 Claude Desktop。AutoMCP 支持多种流行的 Agent 框架,包括 CrewAI, LangGraph, Llama Index, OpenAI Agents SDK, Pydantic AI 和 mcp-agent。

主要功能点

  • 多框架支持: 支持将 CrewAI, LangGraph, Llama Index, OpenAI Agents SDK, Pydantic AI, mcp-agent 等多种 Agent 框架快速转换为 MCP 服务器。
  • 自动化转换: 通过简单的命令行工具,自动生成 MCP 服务器所需的文件和代码框架。
  • 灵活部署: 支持 STDIO 和 SSE 两种传输协议,可以根据不同的客户端环境和需求选择合适的协议。
  • 易于配置: 生成的 'run_mcp.py' 文件结构清晰,用户只需少量修改即可集成自己的 Agent 逻辑。
  • 示例丰富: 提供针对不同 Agent 框架的示例,帮助用户快速上手和理解如何使用 AutoMCP。

安装步骤

  1. 安装 AutoMCP:

    使用 pip 从 PyPI 安装:

    pip install naptha-automcp

    或者从源代码安装:

    git clone https://github.com/napthaai/automcp.git
    cd automcp
    uv venv
    source .venv/bin/activate
    pip install -e .
  2. 初始化 MCP 服务器文件:

    进入您的 Agent 项目目录,使用 'automcp init' 命令,并指定您使用的 Agent 框架,例如为 CrewAI Orchestrator 创建 MCP 服务器文件:

    cd your-project-directory
    automcp init -f crewai_orchestrator

    可用的框架包括:'crewai_orchestrator', 'crewai_agent', 'crewai_tool', 'langgraph_agent', 'langchain_tool', 'llamaindex_agent', 'openai_agent', 'pydantic_agent', 'mcp_agent'。

  3. 配置 'run_mcp.py' 文件:

    编辑生成的 'run_mcp.py' 文件,导入您的 Agent 类,定义输入 schema,并配置适配器。根据文件中的注释进行修改,将占位符替换为您实际的 Agent 实现。

  4. 安装依赖并运行服务器:

    安装项目依赖,并使用 'automcp serve' 命令启动 MCP 服务器,例如使用 SSE 传输协议:

    automcp serve -t sse

服务器配置

对于 MCP 客户端(如 Cursor),您需要在项目根目录下创建一个 '.cursor' 文件夹,并在其中添加 'mcp.json' 文件来配置 MCP 服务器连接。以下是一个 'mcp.json' 示例,配置了使用 STDIO 传输协议连接名为 "crew-name-stdio" 的 MCP 服务器:

{
    "mcpServers": {
        "crew-name-stdio": {
            "type": "stdio",
            "command": "/absolute/path/to/your/.venv/bin/uv",
            "args": [
                "--directory",
                "/absolute/path/to/your/project_dir",
                "run",
                "serve_stdio"
            ],
            "env": {
                "OPENAI_API_KEY": "sk-",
                "SERPER_API_KEY": ""
            }
        }
    }
}

配置参数说明:

  • '"crew-name-stdio"': 服务器名称,在客户端中用于标识和选择该服务器。
  • '"type": "stdio"': 指定传输协议为 STDIO。
  • '"command": "/absolute/path/to/your/.venv/bin/uv"': MCP 服务器的启动命令,这里使用了 'uv' 运行器,需要替换为您的虚拟环境 'uv' 可执行文件的绝对路径。您也可以使用 Python 解释器直接运行 'run_mcp.py'。
  • '"args": [...]': 启动命令的参数列表。
    • '"--directory", "/absolute/path/to/your/project_dir"': 指定项目目录。
    • '"run", "serve_stdio"': 使用 'uv run' 运行 'serve_stdio' 函数,该函数在 'run_mcp.py' 中定义,用于启动 STDIO 传输的 MCP 服务器。
  • '"env": {...}': 环境变量配置,例如 OpenAI API 密钥等。

注意: 请务必将 '/absolute/path/to/your/.venv/bin/uv' 和 '/absolute/path/to/your/project_dir' 替换为您实际的虚拟环境路径和项目目录路径。

如果使用 SSE 传输协议,'mcp.json' 配置如下:

{
    "mcpServers": {
        "crew-name-sse": {
            "type": "sse",
            "url": "http://localhost:8000/sse"
        }
    }
}
  • '"type": "sse"': 指定传输协议为 SSE。
  • '"url": "http://localhost:8000/sse"': SSE 服务器的 URL 地址。您需要先手动启动 SSE 服务器 ('python run_mcp.py sse' 或 'automcp serve -t sse'),然后客户端才能连接到此 URL。

基本使用方法

  1. 确保已安装 AutoMCP 和项目依赖。
  2. 根据您的 Agent 框架,使用 'automcp init' 命令生成 MCP 服务器文件。
  3. 编辑 'run_mcp.py' 文件,配置您的 Agent 逻辑。
  4. 根据需要配置 '.env' 文件,添加必要的环境变量(如 API 密钥)。
  5. 启动 MCP 服务器 ('automcp serve -t stdio' 或 'automcp serve -t sse')。
  6. 在 MCP 客户端(如 Cursor)中配置 'mcp.json' 文件,连接到您的 MCP 服务器。
  7. 客户端即可通过 MCP 协议与您的 Agent 进行交互。

信息

分类

开发者工具