将 ThunderPhone 用作 MCP 服务器
将任意 Streamable HTTP MCP 客户端连接到 ThunderPhone,即可使用组织 API 密钥列出智能体、查看通话和转录文本,并发起外呼。
ThunderPhone 在以下地址提供 Model Context Protocol 服务器:
https://api.thunderphone.com/v1/mcp将 MCP 客户端指向该 Streamable HTTP 端点,即可将您组织中的智能体和通话作为工具使用。这与将远程 MCP 服务器连接到语音智能体的方向相反:
| 方向 | 结果 |
|---|---|
| 远程 MCP 服务器 → ThunderPhone 智能体 | 您的语音智能体可以调用远程服务器的工具。 |
| ThunderPhone → 您的 MCP 客户端 | 您的 MCP 客户端可以调用 ThunderPhone 的智能体和通话工具。 |
身份验证
在 组织 → 密钥 下创建 sk_live_ 密钥,并将其作为 Bearer 令牌发送。MCP 端点接受组织 API 密钥,不接受控制台会话 Cookie 或可发布的小组件密钥。
{
"mcpServers": {
"thunderphone": {
"url": "https://api.thunderphone.com/v1/mcp",
"headers": {
"Authorization": "Bearer sk_live_YOUR_API_KEY"
}
}
}
}可用工具
| 工具 | 参数 | 功能 |
|---|---|---|
list_agents | 无 | 列出组织中的智能体,包括 ID、名称、产品和语音。 |
get_agent | agent_id | 获取一个智能体。 |
place_call | agent_id、from_number、to_number | 使用与 REST 通话端点相同的验证和计费限制发起外呼。 |
get_call | call_id | 获取通话状态、摘要和评分。 |
list_calls | 可选 limit(1–100)、可选 status | 列出最近的通话。 |
get_call_transcript | call_id | 获取通话的完整转录文本。 |
所有工具均限定在与 API 密钥绑定的组织范围内。来自其他组织的 ID 将被视为不可用。
协议方法
该端点实现了 Streamable HTTP 客户端所需的 MCP JSON-RPC 方法:
initializenotifications/initializedtools/listtools/call
您可以直接查看工具目录:
curl -X POST https://api.thunderphone.com/v1/mcp \
-H "Authorization: Bearer sk_live_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list",
"params": {}
}'使用工具名称和参数调用工具:
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "list_calls",
"arguments": { "limit": 20, "status": "completed" }
}
}工具结果为 MCP 文本内容项。工具失败会在结果中以 isError: true 返回;未知的 JSON-RPC 方法会返回协议错误。
安全发起通话
place_call 遵循与 POST /v1/call 相同的规则:智能体和号码必须属于该密钥对应的组织,号码必须符合外呼资格,组织必须拥有充足余额,并且必须完成所有适用的外呼确认。
请将可访问 place_call 的客户端视为生产环境中的呼叫方。限制可使用该客户端的人员,在其自身提示中明确指定预期的智能体和号码,并在通话记录中审核通话。
完整接口参考
有关响应示例、JSON-RPC 错误和远程服务器管理 API,请参阅 MCP Servers API。