OpenCode: OpenCode MCP服务器配置

最后更新:2026-08-31

MCP 让 OpenCode 通过标准化协议连接外部工具和服务,大幅扩展 AI 的能力边界。

1. 你将学到


2. 什么是 MCP

MCP(Model Context Protocol)是 Anthropic 提出的标准化协议,让 AI 模型能连接外部工具和数据源。

100%
graph LR
    A[OpenCode] <--> B[MCP 协议]
    B <--> C[数据库工具]
    B <--> D[文件系统]
    B <--> E[API 服务]
    B <--> F[自定义工具]

核心价值: 让 AI 的能力不再局限于内置工具,可以按需扩展。


3. 添加 MCP 服务器

(1) 命令行添加

BASH
opencode mcp add

交互式引导添加 MCP 服务器。

(2) 配置文件添加

在 opencode.json 中配置:

JSON
{
  "mcp": {
    "my-server": {
      "command": "npx",
      "args": ["-y", "@my-org/mcp-server"],
      "env": {
        "API_KEY": "sk-xxx"
      }
    }
  }
}

(3) 查看已添加的服务器

BASH
opencode mcp list

4. 常用 MCP 服务器

服务器 功能 安装方式
@modelcontextprotocol/server-filesystem 文件系统访问 npx 运行
@modelcontextprotocol/server-github GitHub 操作 npx 运行
@modelcontextprotocol/server-postgres PostgreSQL 查询 npx 运行
@modelcontextprotocol/server-brave-search Brave 搜索 npx 运行
@modelcontextprotocol/server-puppeteer 浏览器自动化 npx 运行

5. 配置示例

(1) 文件系统 MCP

JSON
{
  "mcp": {
    "filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/path/to/allowed/dir"
      ]
    }
  }
}

(2) GitHub MCP

JSON
{
  "mcp": {
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_TOKEN": "ghp_xxx"
      }
    }
  }
}

(3) PostgreSQL MCP

JSON
{
  "mcp": {
    "postgres": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-postgres",
        "postgresql://user:pass@localhost:5432/mydb"
      ]
    }
  }
}

6. MCP 工具权限

MCP 服务器的工具会出现在 OpenCode 的工具列表中,可以通过 tools 和 permission 配置控制:

JSON
{
  "agent": {
    "readonly": {
      "tools": {
        "mymcp_*": false
      }
    }
  }
}

使用 Glob 模式 服务器名_* 批量控制某 MCP 服务器的所有工具。


7. 调试 MCP

BASH
opencode mcp debug

查看 MCP 服务器的连接状态和工具列表。


8. MCP 认证

BASH
opencode mcp auth

为需要认证的 MCP 服务器配置凭据。


❓ 常见问题

Q MCP 服务器会影响 OpenCode 性能吗?
A 会。每个 MCP 服务器是一个独立进程,会占用额外资源。建议只添加需要的 MCP 服务器。
Q 可以自己开发 MCP 服务器吗?
A 可以。MCP 是开放协议,可以使用 TypeScript 或 Python 开发自定义服务器。参考 https://modelcontextprotocol.io
Q Alice 添加了 5 个 MCP 服务器,Bob 只用了内置工具,谁更高效?
A 取决于任务。如果需要数据库查询、浏览器自动化等外部能力,Alice 的 MCP 更高效;如果是纯代码分析和修改,Bob 的方式更简洁。按需添加。

📖 小节


📝 作业

  1. 基础题:添加一个文件系统 MCP 服务器,让 AI 能访问指定目录。

  2. 进阶题:配置 GitHub MCP 服务器,让 AI 能直接操作 GitHub 仓库。

  3. 挑战题:开发一个简单的自定义 MCP 服务器,提供特定的工具功能。

Web-Tutorial.com

Web-Tutorial 技术团队

由多位开发者共同维护的编程教程平台。每篇教程由对应领域的开发者编写和审核,确保内容准确可靠。如发现任何问题,欢迎向我们反馈。

100%

🙏 帮我们做得更好

我们是刚上线的编程教程站,几个人的小团队,精力有限。页面虽经检查,难免还有疏漏——链接失效、排版错乱、内容有误、语言生硬……

如果您发现了,麻烦告诉我们,我们会在收到反馈后第一时间进行修复,再次感谢您的光临 🙏