MCP服务器管理 MCPServerManagement

MCP 服务器管理技能是一款用于配置、连接和管理外部 MCP(模型上下文协议)服务器的工具。它允许用户通过添加文件系统、数据库、GitHub 等外部服务来扩展 AI 助手 Thoth 的功能。核心功能包括服务器列表查看、添加、更新、移除、状态切换和连接测试,支持 stdio、HTTP、SSE 多种传输协议,并具备热重载和自动附加工具的能力。关键词:MCP 服务器管理,AI 助手扩展,外部工具集成,模型上下文协议,Thoth 配置,工具服务器连接,热重载配置。

AI智能体 0 次安装 0 次浏览 更新于 2/27/2026

skill_id: mcp-management name: MCP 服务器管理 description: 管理外部 MCP 服务器连接以扩展 Thoth 的能力 version: 1.0.0 author: Thoth 团队 required_tools:

  • list_mcp_servers
  • add_mcp_server
  • update_mcp_server
  • remove_mcp_server
  • toggle_mcp_server
  • test_mcp_connection tags:
  • management
  • mcp
  • configuration
  • tools

MCP 服务器管理技能

概述

本技能提供对外部 MCP(模型上下文协议)服务器的全面管理,这些服务器可以通过额外的工具和资源来扩展 Thoth 的能力。

什么是 MCP?

MCP(模型上下文协议)是一种标准协议,允许 AI 助手连接到外部工具服务器。通过添加 MCP 服务器,您可以:

  • 访问额外的工具(文件系统、数据库、API 等)
  • 与外部服务集成
  • 无需修改核心代码即可扩展 Thoth 的能力
  • 连接到您或他人构建的自定义工具服务器

核心功能

1. 列出 MCP 服务器

查看所有已配置的外部 MCP 服务器、其连接状态和工具数量。

示例:

你能告诉我配置了哪些 MCP 服务器吗?

2. 添加 MCP 服务器

使用 stdio、HTTP 或 SSE 传输方式添加新的外部 MCP 服务器。

stdio 传输示例:

添加一个名为 "my-filesystem" 的 MCP 服务器,配置如下:
- 传输方式:stdio
- 命令:npx
- 参数:["-y", "@modelcontextprotocol/server-filesystem", "/path/to/folder"]
- 启用:true
- 自动附加:true

SSE 传输示例:

添加一个名为 "remote-analysis" 的 MCP 服务器,配置如下:
- 传输方式:sse
- URL:http://localhost:8080/mcp
- 启用:true
- 自动附加:false

3. 更新 MCP 服务器

修改现有服务器的配置。

示例:

更新 "my-filesystem" 服务器以启用自动附加

4. 移除 MCP 服务器

从配置中移除服务器(断开连接并分离工具)。

示例:

移除 "remote-analysis" MCP 服务器

5. 切换 MCP 服务器状态

启用或禁用服务器而不移除它。

示例:

禁用 "my-filesystem" 服务器

6. 测试连接

测试与已配置 MCP 服务器的连接性。

示例:

测试与 "my-filesystem" 服务器的连接

配置文件

所有 MCP 服务器都存储在 vault/thoth/_thoth/mcps.json 中。该文件作为单一事实来源,并受到监控以检测更改(已启用热重载)。

文件格式

{
  "version": "1.0.0",
  "mcpServers": {
    "server-id": {
      "name": "服务器名称",
      "enabled": true,
      "transport": "stdio|http|sse",
      "command": "stdio 的命令",
      "args": ["参数1", "参数2"],
      "url": "http 或 sse 的 URL",
      "env": {"环境变量": "值"},
      "autoAttach": true,
      "timeout": 30
    }
  }
}

传输类型

stdio(标准输入/输出)

最适合通过 stdin/stdout 进行通信的本地命令行工具。

必填字段: command, args 示例: 基于 npx 的 MCP 服务器

HTTP

最适合基于 HTTP 的 REST API。

必填字段: url 示例: http://localhost:8080/mcp

SSE(服务器发送事件)

最适合流式响应和实时更新。

必填字段: url 示例: http://localhost:8080/mcp

自动附加行为

autoAttach: true 时:

  • 来自服务器的工具会自动附加到所有 Letta 代理
  • 新代理会自动获得这些工具
  • 禁用服务器会从代理中分离工具

autoAttach: false 时:

  • 工具可用但不会自动附加
  • 适用于您希望选择性使用其工具的服务器

热重载

系统监视 mcps.json 的更改并自动:

  1. 添加新服务器时连接它们
  2. 配置更改时重新连接服务器
  3. 移除或禁用服务器时断开连接
  4. 与 Letta 代理同步工具附加状态

您可以手动编辑文件或使用提供的工具。

常见 MCP 服务器

文件系统访问

{
  "filesystem": {
    "name": "文件系统服务器",
    "enabled": true,
    "transport": "stdio",
    "command": "npx",
    "args": ["-y", "@modelcontextprotocol/server-filesystem", "/workspace"],
    "autoAttach": true,
    "timeout": 30
  }
}

SQLite 数据库

{
  "sqlite": {
    "name": "SQLite 数据库",
    "enabled": true,
    "transport": "stdio",
    "command": "npx",
    "args": ["-y", "@modelcontextprotocol/server-sqlite", "--db-path", "./data.db"],
    "autoAttach": true,
    "timeout": 30
  }
}

GitHub 集成

{
  "github": {
    "name": "GitHub 服务器",
    "enabled": true,
    "transport": "stdio",
    "command": "npx",
    "args": ["-y", "@modelcontextprotocol/server-github"],
    "env": {"GITHUB_TOKEN": "您的令牌"},
    "autoAttach": false,
    "timeout": 30
  }
}

最佳实践

  1. 初始禁用:以 enabled: false 添加新服务器,并在启用前进行测试
  2. 测试连接:在完全配置前始终测试连接性
  3. 明智使用自动附加:仅自动附加广泛有用的工具
  4. 设置适当的超时:根据服务器响应时间进行调整
  5. 保护凭证:对敏感数据使用环境变量
  6. 记录自定义服务器:为自定义 MCP 服务器添加清晰的描述

故障排除

服务器无法连接

  • 检查命令/URL 是否正确
  • 验证服务器是否已安装且可访问
  • 检查日志中的连接错误
  • 使用更长的超时时间进行测试

工具未出现

  • 确保服务器已启用
  • 检查 autoAttach 设置
  • 验证服务器连接状态
  • 检查 Letta 代理工具列表

配置未更新

  • 等待 2-3 秒以进行热重载
  • 检查 mcps.json 的文件权限
  • 验证 JSON 语法是否有效
  • 检查服务器日志中的错误

相关技能

  • settings-management:管理 Thoth 核心设置
  • skill-creation-workshop:创建自定义技能

参考资料