AI代理管理服务器

一个轻量级的MCP服务器,用于远程管理PydanticAI代理的生命周期和配置。

  • by ishevel
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 ishevel/pydentycai-mcp-server

使用说明

Go中的PydanticAI MCP服务器

该项目是一个用Go编写的轻量级MCP(模型上下文协议)服务器,专为远程管理PydanticAI代理而设计。它允许通过标准化的MCP协议启动、停止、获取状态和更新PydanticAI代理的配置。

概述

服务器提供了一组工具,可以与PydanticAI代理进行交互,管理它们的生命周期和配置。代理配置存储在文本文件(JSON)中,由MCP命令更新。

MCP服务器工具

MCP服务器提供以下工具来管理PydanticAI代理:

  • run_agent

    • 说明: 使用指定的ID启动PydanticAI代理。
    • 输入参数: agent_id (string,必填)-要启动的代理的唯一标识符。
  • stop_agent

    • 说明: 通过ID停止正在运行的PydanticAI代理。
    • 输入参数: agent_id (字符串,必填)-要停止的代理的唯一标识符。
  • update_agent_config

    • 说明: 更新PydanticAI代理的配置文件。
    • 输入参数: agent_id (string,必填)-需要更新其配置的代理的唯一标识符; config_data (string,必填)-JSON格式的配置数据(string)。
  • get_agent_status

    • 说明: 通过ID返回正在运行的PydanticAI代理的当前状态。
    • 输入参数: agent_id (字符串,必填)-要检索其状态的代理的唯一标识符。
  • list_agents

    • 说明: 返回所有已注册代理及其状态的列表。
    • 输入参数: 没有。

连接到MCP客户端(例如,Cline for VS Code)

要将我们的MCP服务器连接到像VS Code中的Cline这样的客户端,您需要将相应的配置添加到您的 cline_mcp_settings.json 文件(通常位于 C:/Users/vm-user/AppData/Roaming/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json).

由于我们的服务器使用Stdio传输(标准输入/输出),配置如下:

"pydentycai-mcp-server": {
  "autoApprove": [
    "run_agent",
    "stop_agent",
    "get_agent_status",
    "update_agent_config",
    "list_agents"
  ],
  "timeout": 60,
  "type": "stdio",
  "command": "./pydentycai-mcp-server.exe",
  "args": []
}

配置说明:

  • "pydentycai-mcp-server":一个唯一的名称,用于在Cline中标识我们的服务器。
  • "autoApprove":Cline将自动批准其调用的工具列表。建议在此处包含所有工具,以避免不断的确认提示。
  • "timeout":等待服务器响应的最长时间(秒)。
  • "type": "stdio":表示服务器使用标准输入/输出进行通信。
  • "command": "./pydentycai-mcp-server.exe":Go服务器可执行文件的路径。假设该文件位于项目的根目录中。
  • "args": []:启动服务器的其他命令行参数(本例中没有)。

将此配置添加到后 cline_mcp_settings.json 重新启动VS Code(或在Cline中执行相关操作以刷新服务器),您将能够直接从Cline调用我们服务器的工具。

运行服务器

您可以在项目的根目录中使用以下命令运行服务器:

./pydentycai-mcp-server.exe

开发和测试

对于开发和测试,您可以使用标准的Go命令:

  • go mod tidy:用于管理依赖关系。
  • go build -o pydentycai-mcp-server.exe:用于构建可执行文件。