怎么给 Kiro CLI 添加 MCP 服务器(搜索、GitHub、自定义工具)
Kiro CLI 怎么连接外部工具?
通过 MCP(Model Context Protocol)。你在一个 JSON 文件里声明 MCP 服务器,Kiro CLI 启动时自动连接。AI 就能调用搜索、GitHub、数据库等外部能力。
配置文件位置:~/.kiro/settings/mcp.json
怎么接入 Web 搜索?
让 AI 能实时搜索互联网。编辑 ~/.kiro/settings/mcp.json:
{
"mcpServers": {
"exa": {
"command": "npx",
"args": ["-y", "exa-mcp-server"],
"env": {
"EXA_API_KEY": "your-exa-key"
}
}
}
}
API key 在 exa.ai 注册获取(免费 1000 次/月)。
重启 Kiro CLI 后直接说:
搜索一下 React 19 的 breaking changes
AI 会调 Exa 搜索,返回实时结果。
怎么接入 GitHub?
让 AI 能查 PR、issue、仓库代码:
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_TOKEN": "$GITHUB_TOKEN"
}
}
}
}
先设置环境变量:
export GITHUB_TOKEN=ghp_your_token_here
# 写入 .bashrc 持久化
echo 'export GITHUB_TOKEN=ghp_your_token_here' >> ~/.bashrc
现在可以说:
看看这个项目最近的未合并 PR
怎么同时配置多个 MCP 服务?
多个服务写在同一个 JSON 里:
{
"mcpServers": {
"exa": {
"command": "npx",
"args": ["-y", "exa-mcp-server"],
"env": { "EXA_API_KEY": "$EXA_API_KEY" }
},
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": { "GITHUB_TOKEN": "$GITHUB_TOKEN" }
},
"git": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-git"],
"env": {}
}
}
}
怎么做项目级 MCP 配置?
把 MCP 写在 agent 文件里,跟着项目代码走。创建 .kiro/agents/default.json:
{
"name": "default",
"mcpServers": {
"company-docs": {
"command": "node",
"args": ["./tools/mcp-docs-server.js"],
"env": {
"DOCS_API_URL": "https://internal-api.company.com/docs"
}
}
},
"includeMcpJson": true
}
includeMcpJson: true 表示同时加载全局 MCP 配置。团队 clone 代码后自动连接项目专属工具。
怎么验证 MCP 连接成功?
在 Kiro CLI 里:
/mcp # 查看 MCP 服务连接状态
/tools # 查看所有可用工具(包括 MCP 提供的)
注意事项
| 问题 | 解决 |
|---|---|
| Token/Key 不要写死 | 用 $ENV_VAR 引用环境变量 |
| 第一次启动慢 | npx 需要下载,之后缓存 |
| MCP 服务挂了 | 加 --require-mcp-startup 让 Kiro 报错而非静默跳过 |
| 想限制 agent 只用特定工具 | 在 agent 的 tools 字段里用 @server_name/tool_name 引用 |