跳转到主要内容

Documentation Index

Fetch the complete documentation index at: https://docs.devinenterprise.com/llms.txt

Use this file to discover all available pages before exploring further.

添加 MCP 服务器

通过命令行

添加 MCP 服务器的最快方法:
# stdio 服务器 — 在 -- 后面传入命令
devin mcp add <name> -- <command> [args...]

# HTTP 服务器 — 将 URL 作为位置参数传入
devin mcp add <name> <URL>

# HTTP 服务器 — 或使用 --url 标志
devin mcp add <name> --url <URL>
传输类型会自动推断:URL 表示 HTTP (Streamable HTTP) ,末尾参数 (或 --command) 表示 stdio。
远程 MCP 服务器默认使用 Streamable HTTP。如果服务器返回 HTTP 4xx 错误,CLI 会回退到同一 URL 上的 SSE。如有需要,请显式设置 "transport": "sse"——请参阅下方的旧版 SSE 回退
默认情况下,服务器会保存到 local 作用域 (.devin/config.local.json,已加入 gitignore) 。可使用 -s/`—scope“ 更改:
devin mcp add -s project <name> <URL>   # 通过 .devin/config.json 共享
devin mcp add -s user <name> <URL>      # 全局(~/.config/devin/config.json;Windows 上为 %APPDATA%\devin\config.json)
你也可以通过命令行管理服务器:
devin mcp list              # 列出所有已配置的服务器
devin mcp get <name>        # 显示指定服务器的详细信息
devin mcp remove <name>     # 移除已配置的服务器
devin mcp login <name>      # 通过 OAuth 向服务器进行身份验证
devin mcp logout <name>     # 移除已存储的 OAuth 凭据

通过配置文件

直接在配置文件的 mcpServers 部分添加服务器:
// .devin/config.json
{
  "mcpServers": {
    "server-name": {
      "command": "npx",
      "args": ["-y", "@company/mcp-server"],
      "env": {
        "API_KEY": "your-key"
      }
    }
  }
}
项目级服务器会通过版本控制与你的团队共享。

服务器配置选项

MCP 服务器可配置为两种形式:本地命令 (stdio 传输) 或远程服务器 (HTTP 传输) 。

本地命令 (stdio)

字段类型必填描述
commandstring要运行的可执行文件
argsstring[]命令行参数
envobject要设置的环境变量

远程服务器 (Streamable HTTP)

字段类型必填描述
urlstringMCP 服务器端点的 URL
transportstring"http" (Streamable HTTP,URL 型服务器的默认值) 或 "sse" (旧版 SSE) 。设置为 "http" 或省略时,CLI 会先尝试 Streamable HTTP,并在出现 4xx 错误时回退到 SSE (依据规范) 。如果服务器的 SSE 端点位于其他路径,请显式设置为 "sse"
headersobject请求中附带的自定义 HTTP 标头

示例

{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_TOKEN": "ghp_..."
      }
    }
  }
}
{
  "mcpServers": {
    "notion": {
      "url": "https://mcp.notion.com/mcp",
      "transport": "http"
    }
  }
}
添加基于 OAuth 的服务器后,运行 devin mcp login notion 完成身份验证。请参阅下方的身份验证
{
  "mcpServers": {
    "linear": {
      "url": "https://mcp.linear.app/mcp",
      "transport": "http"
    }
  }
}
{
  "mcpServers": {
    "atlassian": {
      "url": "https://mcp.atlassian.com/v1/mcp",
      "transport": "http"
    }
  }
}
添加后,运行 devin mcp login atlassian 完成身份验证。每个 MCP 客户端 (Windsurf、Claude Code、Devin CLI) 都会维护各自的 OAuth 会话,因此即使你已在其他工具中完成身份验证,也仍需单独登录。
{
  "mcpServers": {
    "my-tools": {
      "command": "python",
      "args": ["./scripts/mcp-server.py"],
      "env": {
        "DB_URL": "postgres://localhost/mydb"
      }
    }
  }
}

身份验证

某些远程 MCP 服务器需要进行 OAuth 身份验证。将基于 OAuth 的服务器添加到你的配置中后,使用 login 命令进行身份验证:
devin mcp login <server-name>
例如:
devin mcp login notion    # 使用 Notion 进行身份验证
devin mcp login linear    # 使用 Linear 进行身份验证
这会打开一个浏览器窗口,你可以在其中授权访问。OAuth 令牌会存储在本地,并自动自动刷新。 你也可以按需请求特定的 OAuth 作用域:
devin mcp login notion --scopes read,write
要删除某个服务器已存储的 OAuth 凭据:
devin mcp logout <server-name>
如果服务器支持 OAuth,首次使用该服务器时,系统也会提示你自动完成身份验证。

管理敏感凭据

切勿将 API key 或其他敏感凭据提交到版本控制中。请使用 .devin/config.local.json 存放敏感值。
对于团队项目,推荐采用以下方式:
  1. .devin/config.json 中定义服务器,并使用占位符或不设置 env vars
  2. 每位团队成员在 .devin/config.local.json 中添加自己的个人密钥
本地配置文件会自动被 git 排除。

MCP 权限

你可以在权限配置中,将特定的 MCP 工具设为预先批准、拒绝或始终询问:
{
  "permissions": {
    "allow": [
      "mcp__github__list_issues",
      "mcp__github__create_issue"
    ],
    "deny": [
      "mcp__github__delete_repo"
    ],
    "ask": [
      "mcp__linear__*"
    ]
  }
}
权限匹配模式:
模式匹配对象
mcp__server__tool特定服务器上的特定工具
mcp__server__*特定服务器上的所有工具
mcp__*所有服务器上的所有 MCP 工具

故障排查

如果你在连接远程 MCP 服务器时看到 Auth requiredAuthRequired 之类的错误,说明该服务器需要 OAuth 身份验证。运行:
devin mcp login <server-name>
每个 MCP 客户端都需要单独进行身份验证。即使你已经在 Windsurf 或 Claude Code 中完成了身份验证,仍需单独为 Devin CLI 运行 devin mcp login要确认你的身份验证状态,可以尝试先移除凭据再重新添加:
devin mcp logout <server-name>
devin mcp login <server-name>
确认该命令在 Devin CLI 外部也能正常运行:
npx -y @modelcontextprotocol/server-github
检查是否已设置所有必需的环境变量。
让 Agent 列出 MCP 服务器和工具。服务器可能需要一点时间完成初始化。
检查你的权限配置。MCP 工具默认会提示你批准。将它们添加到 permissions.allow 中即可自动批准。
连接到 HTTP 服务器时,Devin CLI 会先尝试 Streamable HTTP。如果服务器返回 HTTP 4xx 错误 (如 404 或 405) ,它会自动回退到同一已配置 URL上的旧版 SSE。这遵循了 MCP 规范中的向后兼容性指南只有在收到 4xx 响应时才会触发回退——连接错误、超时和 5xx 响应会直接报错,不会尝试 SSE。如果你服务器的 SSE 端点位于其他路径 (如 /sse 而不是 /mcp) ,请将 "transport": "sse" 设置为使用该 SSE URL,以便直接连接,而不先尝试 Streamable HTTP。如果两种传输方式都失败,错误消息会包含两次尝试的详细信息,帮助你排查问题。