MCP¶
minacode 可以连接 Model Context Protocol server,并通过 MCP 工具调用其工具。Server 可以是远程(HTTP)或本地(stdio);在主动连接之前,该 server 的任何信息都不会进入模型 context。
配置 server¶
每个 server 对应一个 [mcp.<name>] 配置块。
远程(HTTP)¶
[mcp.example]
url = "https://example.com/mcp"
bearer_token_env_var = "EXAMPLE_MCP_TOKEN" # optional: send a bearer token from this env var
# auth = "oauth" # optional: use interactive OAuth instead
# auto_connect = true # optional: connect at startup (default false)
本地(stdio)¶
[mcp.filesystem]
command = "npx"
args = ["-y", "@modelcontextprotocol/server-filesystem", "/tmp"]
# env = { FOO = "bar" } # optional extra environment variables
# auto_connect = true
选项¶
配置项 |
适用范围 |
含义 |
|---|---|---|
|
远程 |
Server endpoint(不能与 |
|
本地 |
要启动的程序和参数 |
|
本地 |
传给子进程的额外环境变量 |
|
远程 |
通过交互式 OAuth 认证 |
|
远程 |
发送 |
|
远程 |
HTTP header 到保存其值的环境变量映射 |
|
两者 |
启动时连接,而不是按需连接(默认 |
连接¶
Server 默认手动连接:连接前保持未激活,也不会占用 token。对始终需要的 server,可设置 auto_connect = true。连接方式包括:
/mcp— 打开交互式管理器,切换 server 的连接状态。
/mcp 交互式 server 管理器。¶
在消息中输入
@server— 按需连接。连接会保持,直到主动断开。
通过 @ 引用按需连接 server。¶
/mcp connect <server> [server ...]//mcp disconnect <server>— 终端命令形式。/mcp tools [server]— 列出已连接 server 的工具。
一条命令连接多个 server 时会并发执行;交互式 OAuth 浏览器流程会串行进行,避免互相干扰。
连接后,minacode 可以像使用其他工具一样使用该 server 的工具。Server 标记为只读的工具无需确认即可运行;可能改变状态的操作会先请求确认。
认证¶
Bearer token — 设置
bearer_token_env_var,或通过env_http_headers设置自定义 header。OAuth — 设置
auth = "oauth"。连接时执行授权流程;断开连接会清除已保存的登录信息。
信任边界
本地(stdio)server 会在你的机器上运行程序,远程 server 会收到 agent 发给它的内容。只连接可信的 server。