本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
与 Amazon Q 开发者一起使用 MCP
模型上下文协议 (MCP) 是一种开放标准,它允许 AI 助手与外部工具和服务进行交互。Amazon Q Developer CLI 现在支持 MCP,允许您通过将 Q 连接到自定义工具和服务来扩展 Q 的功能。
MCP 服务器正在加载
Amazon Q 在后台加载 MCP 服务器,使您无需等待所有服务器初始化即可立即开始交互。随着相应服务器的加载完成,工具将逐渐变为可用。
检查服务器状态
您可以使用/tools
命令查看哪些服务器仍在加载以及哪些工具已经可用。
配置服务器初始化
您可以使用以下方法自定义服务器初始化超时:
$ q settings mcp.initTimeout [value]
以毫秒[value]
为单位的超时时间在哪里。此设置控制 Amazon Q 在允许您开始交互之前等待服务器初始化多长时间。
工具和提示
本节介绍如何在 Amazon Q 开发者 CLI 中使用 MCP 工具和提示。
了解 MCP 工具
MCP 工具是 MCP 服务器向 Amazon Q 开发者 CLI 公开的可执行函数。它们让 Amazon Q Developer 能够代表您执行操作、处理数据以及与外部系统交互。
MCP 中的每个工具都有:
-
名称:工具的唯一标识符
-
描述:对工具功能的易于理解的描述
-
输入架构:定义该工具接受的参数的 JSON 架构
-
注释:有关工具行为和效果的可选提示
发现可用的工具
要查看 Q CLI 会话中有哪些工具可用,请执行以下操作:
/tools
此命令显示所有可用工具,包括内置工具和 MCP 服务器提供的工具。
工具可能具有不同的权限级别,以决定其使用方式:
-
自动批准:无需明确许可即可在每次调用时使用这些工具
-
需要批准:这些工具每次使用时都需要获得您的明确许可
-
危险:这些工具被标记为潜在风险,需要在批准前仔细考虑
使用工具
您可以通过两种方式使用 MCP 工具:
-
自然语言请求:只需描述你想做什么,Q 就会决定使用哪种工具。
-
直接工具调用:您也可以显式请求 Q 使用特定工具。
使用提示
MCP 服务器可以提供预定义的提示,帮助指导 Q 完成特定任务:
-
列出可用提示:
/prompts
-
使用提示:
-
@
prompt-name
arg1 arg2
-
使用带参数的提示的示例:
@fetch https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/command-line-mcp-configuration.html
主要优势
-
可扩展性:将 Amazon Q 连接到适用于特定域或工作流程的专用工具
-
自定义:创建根据您的特定需求量身定制的自定义工具
-
生态系统集成:利用不断增长的 MCP 兼容工具生态系统
-
标准化:使用由多个 AI 助手支持的一致协议
-
灵活性:MCP 允许您在不同的 LLM 提供商之间切换,同时保持相同的工具集成
-
安全:使用本地 MCP 服务器将数据保存在基础架构中
MCP 架构
MCP 遵循客户端-服务器架构,其中:
-
MCP 主机:像 Amazon Q Developer CLI 这样想要通过 MCP 访问数据的程序
-
MCP 客户端:与服务器保持 1:1 连接的协议客户端
-
MCP 服务器:轻量级程序,每个程序都通过标准化的模型上下文协议公开特定功能
-
本地数据源:MCP 服务器可以安全访问的计算机文件、数据库和服务
-
远程服务:MCP 服务器可以通过 Internet(例如,通过 APIs)连接的外部系统
例 MCP 通信流程
User | v +------------------+ +-----------------+ +------------------+ | | | | | | | Amazon Q Dev | --> | MCP Client API | --> | MCP Server | | | | | | | +------------------+ +-----------------+ +------------------+ | v +------------------+ | | | External Service | | | +------------------+
通过 MCP 在用户、Amazon Q 开发者 CLI 和外部服务之间进行通信流
核心 MCP 概念
工具
工具是 MCP 服务器向客户端公开的可执行函数。它们允许 Amazon Q:
-
在外部系统中执行操作
-
以专门的方式处理数据
-
与之互动 APIs 和服务
-
代表你执行命令
工具由唯一的名称、描述、输入架构(使用 JSON 架构)和有关工具行为的可选注释来定义。
提示
提示是预定义的模板,可帮助指导 Amazon Q 完成特定任务。他们可以:
-
接受动态参数
-
包括来自资源的上下文
-
链接多重互动
-
指导特定的工作流程
-
以用户界面元素的形式出现(如斜杠命令)
资源
资源表示 MCP 服务器可以向 Amazon Q 提供的数据,例如:
-
文件内容
-
数据库记录
-
API 响应
-
文档
-
配置数据