> ## Documentation Index
> Fetch the complete documentation index at: https://docs.devin.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# MCP 概述

> 使用 Model Context Protocol 通过外部工具服务器扩展 Devin CLI

MCP (Model Context Protocol) 可让你将外部工具服务器连接到 Devin CLI，使 Agent 能够访问 API、数据库、问题跟踪系统，以及任何其他你可以封装为 MCP 服务器的服务。

配置 MCP 服务器后，其中的工具会像内置工具一样对 Agent 可用。Agent 可以发现有哪些可用工具，并在需要时调用它们。

***

<div id="how-it-works">
  ## 工作方式
</div>

<Steps>
  <Step title="配置服务器">
    你可以在配置文件中通过命令、参数以及可选的环境变量来定义一个 MCP 服务器。
  </Step>

  <Step title="启动服务器">
    Devin CLI 会在需要时启动服务器进程。服务器随后会连接到外部 API (GitHub、Linear 等) 。
  </Step>

  <Step title="发现工具">
    Agent 会识别服务器提供了哪些工具 (例如 `create_issue`、`list_repos`) 。
  </Step>

  <Step title="执行工具">
    当 Agent 调用某个 MCP 工具时，请求会经由服务器发送到外部服务，并返回结果。
  </Step>
</Steps>

***

<div id="quick-example">
  ## 快速示例
</div>

将 GitHub MCP 服务器添加到你的项目：

```json theme={null}
// .devin/config.local.json  (已加入 .gitignore — 请勿将令牌提交至配置文件)
{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_TOKEN": "ghp_your_token_here"
      }
    }
  }
}
```

现在，Agent 可以通过自然语言创建 issue、查看 PR、搜索代码仓库等。

***

<div id="permission-control">
  ## 权限控制
</div>

配置完成后，MCP 工具会以带命名空间的格式显示：`mcp__<server>__<tool>`。例如，名为 "github" 的服务器搭配名为 "create\_issue" 的工具时，会显示为 `mcp__github__create_issue`。

MCP 工具与内置工具受同一权限系统约束。你可以在多个层级控制访问权限：

```json theme={null}
{
  "permissions": {
    "allow": [
      "mcp__github__*"
    ],
    "deny": [
      "mcp__github__delete_repo"
    ]
  }
}
```

完整的权限语法请参阅[权限](/zh/cli/reference/permissions)。

***

<div id="authentication">
  ## 身份验证
</div>

某些远程 MCP 服务器 (如 Atlassian、Notion 和 Linear) 需要通过 OAuth 进行身份验证。每个 MCP 客户端都单独进行身份验证——来自 Windsurf 或 Claude Code 的令牌**不会**与 Devin CLI 共享。

添加远程服务器后，使用以下方式进行身份验证：

```bash theme={null}
devin mcp login <server-name>
```

这会打开一个浏览器窗口，启动 OAuth 流程。详见 [MCP 配置 — 身份验证](/zh/cli/extensibility/mcp/configuration#authentication)。

***

<div id="disabling-servers">
  ## 禁用服务器
</div>

你可以暂时禁用 MCP 服务器，而无需移除其配置或凭据：

```bash theme={null}
devin mcp disable <server-name>
devin mcp enable <server-name>
```

请参阅 [MCP 配置 — 启用和禁用服务器](/zh/cli/extensibility/mcp/configuration#enabling-and-disabling-servers) 了解详情。

***

<div id="next-steps">
  ## 后续步骤
</div>

<CardGroup cols={2}>
  <Card title="配置" icon="gear" href="/zh/cli/extensibility/mcp/configuration">
    详细了解如何配置 MCP 服务器
  </Card>

  <Card title="权限" icon="shield" href="/zh/cli/reference/permissions">
    控制 Agent 可以使用哪些 MCP 工具
  </Card>
</CardGroup>
