Appearance
配置好 MCP server 后,有多种方式与其工具交互:直接提问让 Kiro 自动选择工具、明确指定工具名称、通过 # 调用 prompt 模板。除工具调用外,MCP 还支持资源模板和 elicitation(工具执行中途向用户补充询问)。本文覆盖从基础调用到高级场景的完整使用技巧。
完成 MCP server 配置后,可以通过多种方式与工具交互。
调用 MCP 工具
直接提问
最简单的方式——直接提出与 server 领域相关的问题,Kiro 自动匹配合适的工具:
告诉我 Amazon Bedrock 是什么如何配置 S3 存储桶策略?明确指定操作
通过描述具体操作来调用特定工具:
在 AWS 文档中搜索 ECS task definition 的相关内容获取 AWS CloudFormation 的最佳实践建议显式指定 server 和工具
需要精确控制时,使用 #[server]tool 格式:
#[aws-docs] search_documentation 告诉我 AWS Lambda 的相关信息这种格式同时指定了 server(aws-docs)和工具名(search_documentation)。
MCP 工具管理面板
Kiro 面板的 MCP servers 标签页提供:
- 所有已配置 server 的列表
- 连接状态指示器
- 单个工具的启用/禁用管理
- 快速访问 server 工具的入口
访问步骤:
- 点击活动栏中的 Kiro 图标
- 导航到 MCP servers 标签页
- 查看所有已连接的 server 及其可用工具
管理单个工具
每个 MCP server 可以暴露多个工具,可以单独控制:
通过 Kiro 面板:
- 打开 Kiro 面板并导航到 MCP servers
- 展开 server 查看可用工具列表
- 点击工具,选择启用或禁用
- 被禁用的工具会显示 "Disabled" 标签,agent 无法使用
通过 JSON 配置:
使用 disabledTools 数组永久禁用特定工具:
json
{
"mcpServers": {
"github": {
"command": "docker",
"args": ["run", "-i", "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", "ghcr.io/github/github-mcp-server"],
"disabledTools": ["delete_repository", "force_push", "merge_pull_request"]
}
}
}适用场景:
- 屏蔽危险操作(删除、强制推送)
- 减少工具列表噪音,隐藏不常用的工具
- 限制 agent 工具范围,提升性能
- 在共享工作区配置中统一团队规范
Server 级别操作
在 MCP 面板中右键点击 server,可以访问:
- Reconnect — 重新建立与 server 的连接
- Disable — 临时禁用整个 server
- Disable All Tools — 一次性禁用该 server 的所有工具
- Enable All Tools — 重新启用所有已禁用的工具
- Show MCP Logs — 查看 server 的详细日志
工具审批流程
当 Kiro 想要使用某个 MCP 工具时,会先请求你的确认:
- 看到工具描述和用途的提示
- 查看工具的具体参数
- 点击 "Approve" 允许执行,或 "Deny" 拒绝
为可信工具设置自动批准
对于频繁使用且可信的工具,可以跳过重复确认:
json
{
"mcpServers": {
"aws-docs": {
"autoApprove": [
"mcp_aws_docs_search_documentation",
"mcp_aws_docs_read_documentation"
]
}
}
}保存后(Cmd+S)立即生效。
使用示例
AWS Documentation Server
搜索文档:
搜索 S3 存储桶版本控制的 AWS 文档调用 mcp_aws_docs_search_documentation 工具。
读取文档:
阅读 AWS Lambda function URLs 的文档调用 mcp_aws_docs_read_documentation 工具。
获取推荐:
查找与 AWS ECS task definition 相关的内容调用 mcp_aws_docs_recommend 工具。
GitHub MCP Server
展示 tensorflow/tensorflow 仓库的信息
查找 facebook/react 中 React hooks 的使用示例
在我的仓库中创建一个关于登录 bug 的 issue高级使用技巧
链式调用多个 MCP 工具
先搜索 ECS task definition 的 AWS 文档,再查找服务发现的相关内容结合本地上下文
基于我的 Terraform 代码,参考 AWS 文档的最佳实践优化 Lambda 配置在 spec 中使用 MCP 工具
在实现阶段,参考 AWS 文档确保我们的 S3 存储桶配置符合最佳实践MCP Prompts
MCP server 可以暴露可复用的 prompt 模板,提供预制指令用于常见任务。Prompt 模板是由 server 定义的结构化消息,可选填参数来自定义内容。
访问 prompt 模板:
- 在聊天输入框中输入
#打开上下文菜单 - 已连接 server 的 MCP prompt 会显示 MCP 图标
- 选择 prompt 插入到消息中
无参数的 prompt 会将解析后的内容直接插入上下文;有参数的 prompt 会显示内联表单,填写完成后插入。
Prompt 始终由用户主动触发,Kiro 不会在未经选择的情况下向 server 发送 prompt 请求。
MCP 资源模板
MCP server 还可以暴露资源模板——参数化的 URI 模板,解析后指向特定内容。资源模板也出现在 # 提及列表中。
选择资源模板后,会显示参数填写表单。例如文档 server 可能暴露 docs://{topic}/{version} 模板,填写 topic 和 version 后,解析出的文档内容会作为上下文传入对话。
MCP Elicitation
工具执行过程中,MCP server 可能需要向你补充询问信息,这称为 elicitation。Kiro 支持两种 elicitation 形式:
表单式 elicitation:
工具执行暂停,Kiro 在执行时间线中展示内联表单:
| 字段类型 | 渲染形式 |
|---|---|
| 文本 | 文字输入框(可能包含格式提示如邮箱、日期) |
| 数字 | 数字输入框 |
| 是/否 | 复选框 |
| 选择 | 下拉选择框 |
填写完成后可以提交、拒绝或关闭表单。拒绝或关闭后,server 自行决定如何继续执行(可能提供替代方案或跳过该步骤)。
URL 式 elicitation:
某些 server 会要求你访问外部 URL(如 OAuth 授权流程)。Kiro 在执行时间线中显示带有 Open 按钮的 URL,完成外部操作后工具继续执行。
安全提示:Kiro 始终显示发起请求的 server 和所需数据。如果 elicitation 要求输入密码等敏感信息,需谨慎评估是否信任该 server。
故障排查
工具无响应:
- 检查 Kiro 面板中的 MCP server 状态
- 查看 MCP 日志中的报错信息
- 使用 Ask Kiro 功能协助解决错误
结果不准确:
- 重新表述请求,描述更具体
- 确认选用的工具是否适合当前任务
- 验证 MCP server 是否具有必要权限
工具不可用:
- 确认 MCP server 配置正确
- 检查 server 是否已启动并成功连接
- 验证是否具有使用该工具的权限
常见问题
Q:Kiro 是怎么决定用哪个 MCP 工具的?
Kiro 根据你的提问内容和各工具的描述语义匹配,自动选择最相关的工具。如果自动选择不准确,可以用 #[server]tool 格式显式指定,或在提问中明确描述工具名称。
Q:同一任务可以同时使用多个 MCP server 的工具吗?
可以。Kiro 支持在单次对话中链式调用来自不同 server 的工具,例如先用 AWS 文档 server 查找最佳实践,再用 GitHub server 创建相关 issue。
Q:elicitation 请求如果我拒绝了,工具会失败吗?
不一定。server 在收到拒绝后会自行决定如何处理——可能用默认值继续、提供替代方案,或中止当前操作。具体行为取决于 server 的实现逻辑。