配置MCP

在 Bob 中使用 MCP

模型上下文协议(MCP)通过连接到外部工具和服务来扩展 Bob 的功能。本指南向您展示如何使用 Bob 配置、管理和使用 MCP 服务器。

有关概念信息,请参阅理解 MCP

配置级别

您可以在两个级别配置 MCP 服务器:

  • 全局:存储在 ~/.bob/mcp.json 中,适用于所有工作区
  • 项目:存储在项目根目录的 .bob/mcp.json 中,允许通过版本控制进行团队共享

当服务器名称冲突时,项目级配置优先于全局设置。

编辑配置文件

您可以从设置菜单编辑 MCP 配置文件:

  1. 单击 Bob 面板中的 图标。
  2. 选择 MCP 选项卡。
  3. 单击适当的按钮:
    • 编辑全局 MCP:打开全局 ~/.bob/mcp.json 文件
    • 编辑项目 MCP:打开项目特定的 .bob/mcp.json 文件(如果不存在,Bob 会创建它)

两个文件都使用 JSON 格式,其中包含一个包含命名服务器配置的 mcpServers 对象。

查找和安装服务器

IBM Bob 不包含预安装的 MCP 服务器。要查找服务器:

  • 构建您自己的:使用 MCP SDK 创建自定义服务器(请参阅 MCP GitHub 存储库
  • 社区服务器:探索 MCP 生态系统中社区贡献的 MCP 服务器

启用或禁用 MCP 服务器

当您禁用 MCP 服务器时,Bob 会从系统提示中删除所有与 MCP 相关的逻辑和定义,从而减少 token 使用。Bob 无法连接到任何 MCP 服务器,并且 use_mcp_toolaccess_mcp_resource 工具不可用。此设置默认启用。

要启用或禁用 MCP 服务器:

  1. 单击 Bob 面板中的 图标。
  2. 选择 MCP 选项卡。
  3. 选中或取消选中使用 MCP 服务器

启用或禁用 MCP 服务器创建

当您禁用 MCP 服务器创建时,Bob 会从系统提示中删除 Bob 用于编写 MCP 服务器的指令。Bob 保留操作现有 MCP 服务器的上下文,从而减少 token 使用。此设置默认启用。

要启用或禁用 MCP 服务器创建:

  1. 单击 Bob 面板中的 图标。
  2. 选择 MCP 选项卡。
  3. 选中或取消选中启用 MCP 服务器创建

启用或禁用单个 MCP 工具

您可以启用或禁用 MCP 服务器中的特定工具,以控制 Bob 可以访问哪些功能。这提供了对 MCP 功能的细粒度控制,并通过排除未使用的工具定义来帮助减少上下文窗口使用。

要管理单个工具:

  1. 单击 Bob 面板中的 图标。
  2. 选择 MCP 选项卡。
  3. 在列表中找到 MCP 服务器。
  4. 展开服务器以查看其可用工具。
  5. 根据需要切换单个工具的开关。

禁用未使用的工具可减少工具定义消耗的上下文量,为您的代码和对话历史记录留出更多空间。

传输类型

MCP 支持不同的传输类型用于服务器通信。根据服务器运行的位置以及您希望如何部署它来选择传输。有关所有传输类型的详细信息,请参阅 MCP 服务器传输

对于需要 OAuth 2.1 用户身份验证而不是静态令牌的服务器,请参阅 MCP OAuth 身份验证

对于需要 OAuth 2.1 用户身份验证而非静态令牌的服务器,请参阅 MCP OAuth 身份验证

STDIO 传输

对在您的机器上本地运行的服务器使用 STDIO 传输。

优势:

  • 更低的延迟(无网络开销)
  • 更好的安全性(无网络暴露)
  • 更简单的设置(不需要 HTTP 服务器)

配置参数:

参数必需描述
command要运行的可执行文件(例如,nodepythonnpx
args要传递给命令的参数数组
cwd服务器进程的工作目录
env服务器进程的环境变量
alwaysAllow要自动批准的工具名称数组
disabled设置为 true 以禁用此服务器

示例:

{
  "mcpServers": {
    "local-server": {
      "command": "node",
      "args": ["server.js"],
      "cwd": "/path/to/project/root",
      "env": {
        "API_KEY": "your_api_key"
      },
      "alwaysAllow": ["tool1", "tool2"],
      "disabled": false
    }
  }
}

有关更多详细信息,请参阅 STDIO 传输

Streamable HTTP 传输

使用 Streamable HTTP 传输访问通过 HTTP/HTTPS 访问的远程服务器。这是新远程服务器实现的现代标准。

优势:

  • 可以托管在不同的机器上
  • 支持多个客户端连接
  • 允许集中部署
  • 支持简单的请求-响应和流式传输

配置参数:

参数必需描述
urlMCP 端点的完整 URL
headers自定义 HTTP 标头(例如身份验证令牌)
alwaysAllow自动批准的工具名称数组
disabled设置为 true 可禁用此服务器

示例:

{
  "mcpServers": {
    "remote-server": {
      "type": "streamable-http",
      "url": "https://your-server-url.com/mcp",
      "headers": {
        "Authorization": "Bearer your-token"
      },
      "alwaysAllow": ["tool3"],
      "disabled": false
    }
  }
}

有关更多详细信息,请参阅 Streamable HTTP 传输

SSE 传输(旧版)

对通过 HTTP/HTTPS 访问的远程服务器使用 SSE 传输。对于新的远程服务器,请改用 Streamable HTTP 传输。

优势:

  • 可以托管在不同的机器上
  • 支持多个客户端连接
  • 允许集中部署

配置参数:

参数必需描述
url远程 MCP 服务器的完整 URL 端点
headers自定义 HTTP 标头(例如,身份验证令牌)
alwaysAllow要自动批准的工具名称数组
disabled设置为 true 以禁用此服务器

示例:

{
  "mcpServers": {
    "remote-server": {
      "url": "https://your-server-url.com/mcp",
      "headers": {
        "Authorization": "Bearer your-token"
      },
      "alwaysAllow": ["tool3"],
      "disabled": false
    }
  }
}

使用 Bob 创建 MCP 服务器

您可以要求 Bob 为您需要的特定功能构建自定义 MCP 服务器。

先决条件: 启用启用 MCP 服务器创建设置。

要创建服务器:

  1. 向 Bob 请求工具或功能。例如:

    • "创建一个获取当前比特币价格的 MCP 工具"
    • "构建一个与 GitHub Gist API 交互的 MCP 服务器"
  2. Bob 将:

    • 在默认 MCP 目录中搭建服务器项目(通常是 TypeScript)
    • 使用必要的 API 调用实现请求的工具
    • 如果需要,提示您输入 API 密钥或凭据
    • 将服务器配置添加到您的设置文件
    • 自动连接到新服务器

有关工具机制的更多信息,请参阅理解 Bob 的工具

管理单个服务器

要访问服务器设置:

  1. 单击 Bob 面板中的 图标。
  2. 选择 MCP 选项卡。
  3. 在列表中找到服务器。

可用操作:

  • 删除:单击 并确认删除
  • 重启:单击 以重启服务器
  • 启用/禁用:使用电源开关打开或关闭服务器
  • 网络超时:设置响应超时(30 秒到 5 分钟,默认 1 分钟)
  • 管理工具:展开服务器以启用或禁用单个工具

自动批准工具

MCP 工具自动批准默认禁用,并按工具工作:

  1. 自动批准操作中启用全局"使用 MCP 服务器"选项。
  2. 在 MCP 服务器设置中,找到工具。
  3. 选中工具名称旁边的始终允许

全局设置优先——如果禁用,则不会自动批准任何 MCP 工具。

有效使用 MCP 工具

配置 MCP 服务器后,Bob 会自动检测可用工具。有效使用取决于清晰的工具定义。

工作流程

  1. 在 Bob 聊天界面中输入您的请求
  2. Bob 分析您的请求和可用的 MCP 工具
  3. Bob 建议使用工具;您批准(除非自动批准)

编写有效的工具描述

Bob 正确选择和使用工具的能力取决于描述质量。在定义 MCP 工具时遵循以下指南:

工具名称

使用描述性、明确的名称来指示主要功能。

工具描述

提供包括以下内容的全面摘要:

  • 工具的作用
  • 其目的和用例
  • 先决条件或重要上下文
  • 预期结果

参数描述

对于每个参数,指定:

  • 目的和预期数据类型
  • 格式要求或约束
  • 有效值示例
  • 是可选还是必需

示例

差的描述:

获取数据

好的描述:

使用用户 ID 从 API 检索用户配置文件数据。
返回包含用户名、电子邮件和帐户创建日期的 JSON。
需要环境中的有效身份验证令牌。

其他指导

使用自定义规则为您的团队定义首选方法、复杂工作流程或工具优先级。

MCP 安全注意事项

重要安全信息

使用 MCP 服务器会引入安全注意事项,您应在部署前仔细评估。

数据隐私风险

外部 MCP 服务器:

  • 可能会将您的数据发送到外部提供商或第三方服务
  • 可能会暴露敏感代码、凭据或专有信息
  • 可能以您无法控制的方式存储或记录数据

建议:

  • 使用前查看 MCP 服务器的数据处理政策
  • 避免将外部 MCP 服务器用于敏感或专有代码
  • 对于机密项目,首选本地 MCP 服务器

本地安全风险

本地 MCP 服务器:

  • 以与 Bob 相同的权限运行
  • 可以访问您的文件系统、环境变量和系统资源
  • 可以在您的机器上执行任意代码
  • 可能会修改或删除文件

建议:

  • 仅安装来自可信来源的 MCP 服务器
  • 如果可能,在安装前查看 MCP 服务器的源代码
  • 了解每个服务器需要哪些权限和功能
  • 对请求广泛文件系统访问的服务器要谨慎

组织合规性

业务和企业注意事项:

  • 确保 MCP 服务器使用符合您组织的安全政策
  • 验证数据处理是否符合监管要求(GDPR、HIPAA 等)
  • 检查 MCP 服务器是否被批准在受限网络中使用
  • 记录您环境中授权使用的 MCP 服务器

最佳实践:

  • 维护已批准 MCP 服务器的清单
  • 为新 MCP 服务器建立审查流程
  • 定期审核 MCP 服务器使用和权限
  • 为使用 MCP 的团队成员提供安全培训

审查 MCP 服务器

在安装任何 MCP 服务器之前:

  1. 研究来源:验证发布者的声誉和记录
  2. 查看文档:了解服务器的功能和访问内容
  3. 检查权限:评估服务器需要哪些系统资源
  4. 阅读代码:如果是开源的,检查实现是否存在安全问题
  5. 隔离测试:首先在非生产环境中试用服务器
  6. 监控行为:观察意外的网络活动或文件访问

如有疑问,请在安装 MCP 服务器之前咨询您的安全团队或 IT 部门,特别是在企业或受监管的环境中。

这个主题怎么样?