通过 MCP(模型上下文协议),您可以将知识库问答(RAG)、信息搜索、数据分析等外部服务封装为标准化工具,让 LLM 在对话中能智能地调用它们,以获取所需的数据或执行操作,并基于返回的结果生成更精准的回复。
更多 MCP 介绍,可以参见 MCP 介绍。
在高实时性的语音对话中,引入 MCP 可实现能力扩展和逻辑解耦,让您的智能体能够处理更复杂、更专业的任务。
| 场景 | 核心价值 |
|---|---|
| 接入知识库(RAG) | 让智能体能够基于您内部的、非公开的文档或数据库进行精准问答。 |
| 联网搜索并汇总多源实时信息 | 让智能体能够同时从多个数据源(如天气、新闻、股票)获取信息并进行智能汇总。 |
| 执行复杂业务流程 | 让智能体能够调用外部 API,完成如预订、下单、查询账户等实际业务操作。 |
说明
doubao-seed-1-6。doubao-seed-1-6-thinking 强制开启思考模式,不可关闭,在实时对话场景可能造成较高时延,不建议使用。火山引擎提供了一些常用的 MCP 服务,您可以直接使用。具体请参见 MCP MarketPlace。
MCP 的实现依赖于一个外部的 MCP Server,该服务负责管理和提供所有的工具 Agent。您需要:
部署 MCP Server 后,建议先验证 MCP Server 是否可以被公网正常访问。
若配置了 Authorization 请求头鉴权,请使用以下命令进行测试:
curl -i -H "Authorization: <Your-Auth-Token>" https://your-mcp-server.com/endpoint
-H "Authorization: <Your-Auth-Token>":请将 <Your-Auth-Token> 替换为您的有效凭证。https://your-mcp-server.com/endpoint:请替换为目标 MCP Server 的实际地址。若未配置 Authorization 请求头鉴权,请使用以下命令进行测试:
curl -i https://your-mcp-server.com/endpoint
调用 AibotCreate 接口时,在 Config 对象中配置以下参数:
配置 LLMConfig.MCP:
| 参数 | 说明 |
|---|---|
| URL | 必填。填入已部署的 MCP Server 的访问地址。 |
| Name | 必填。为 MCP 工具调用链路指定一个名称,例如 knowledge_search。 |
| InterestedTools | 可选。一个字符串数组,用于指定本次对话只关注 MCP Server 上的哪些工具。如果留空,则默认关注所有工具。 |
| ComfortWords | 可选。设置一句安抚语。当智能体决定调用 MCP 工具时,会先播报此内容。 |
配置 LLMConfig.ExtraHeader:
如果您的 MCP Server 配置了自定义请求头(如 Authorization),则需将这些头部信息配置在 LLMConfig.ExtraHeader 字段中。系统会将这些请求头随请求一同转发至您的 MCP Server。
假设您已经部署了一个需要 Authorization 请求头进行鉴权的 MCP Server,并注册了一个名为 search_faq_database 的工具。AibotCreate 中的 LLMConfig 配置如下:
"LLMConfig": { // ... 其他LLM配置 ... "MCP": [{ "URL": "https://your-mcp-server.com/test/123", "Name": "internal_knowledge_search", "InterestedTools": ["search_faq_database"], "ComfortWords": "正在为您查询知识库,请稍等。" }], "ExtraHeader": { "Authorization": "f33eb2dc-****-c5cd339b35fe" } // ... 其他LLM配置 ... }
本示例将指导您如何通过 MCP,将火山引擎融合信息搜索能力(一个独立的 Web 搜索服务)接入到实时对话流中。
开通融合信息搜索服务。
生成融合信息搜索的 MCP Server 地址。
融合信息搜索。调用 AibotCreate 接口时,配置 LLMConfig.MCP 字段,填入上一步获取的信息。
"LLMConfig": { // ... 其他LLM配置 ... "MCP": [{ "URL": "填入获取的 MCP Server 地址", "Name": "WebSearch", "ComfortWords": "正在为您搜索,请稍等。", "InterestedTools": ["web_search"] }], "UserPrompts": [{ "Role": "system", "Content": "可以通过调用 web_search 方法搜索互联网上的热点信息" }] // ... 其他LLM配置 ... }
创建知识库。具体操作,请参见创建知识库。
生成知识库的 MCP Server 地址。
知识库 MCP。Project Name 和 Region(固定为 cn-north-1)。调用 AibotCreate 接口时,配置 LLMConfig.MCP 字段,填入上一步获取的信息。
说明
LLM 对知识库内容没有先验知识。为准确触发知识库查询,您需要在 UserPrompts 中详细定义知识库相关内容和参数(如以下示例所示)。
"LLMConfig": { // ... 其他LLM配置 ... "UserPrompts": [{ "Role": "system", "Content": "知识库中包含视频编码的相关知识(如 H.264 编码标准和技术),可以通过 `search_knowledge` 方法查询相关内容。`search_knowledge` 方法中,参数 `query` 用于存放查询内容,`collection_name`(知识库名称)为 `voicechat_knowledge`。" }], // 定义知识库相关内容和参数 "MCP": [{ "URL": "填入获取的 MCP Server 地址", "Name": "knowledge", "ComfortWords": "正在处理中", "InterestedTools": ["search_knowledge"] }] // ... 其他LLM配置 ... }