语音助手如何接入MCP
本文提供了一个快速接入MCP(Multi-Channel Processing)的Python实现方案,包含精简的Server和Client示例代码。通过5个简单步骤:1)安装环境;2)编写Server端代码;3)测试Server;4)编写Client端代码;5)运行Client测试。文中展示了两个基础功能(add和greet)的实现,并演示了如何调用工具和获取结果。最后提到可以将Server集成
·
语音助手如何接入MCP
下面给出两个最精简、可直接运行的 Python 示例,帮助你 5 分钟跑通第一组 MCP Server + Client。

- 环境准备(仅需一次)
# 1) 安装 Python 3.10+
# 2) 安装 MCP SDK
python -m pip install "mcp[cli]"
- 编写 MCP Server(
demo_server.py)
# demo_server.py
from mcp.server.fastmcp import FastMCP
mcp = FastMCP("DemoServer")
@mcp.tool()
def add(a: int, b: int) -> int:
"""Add two numbers."""
return a + b
@mcp.tool()
def greet(name: str) -> str:
"""Return greeting."""
return f"Hello, {name}!"
if __name__ == "__main__":
# stdio 传输,方便本地调试
mcp.run(transport="stdio")
运行测试:
python demo_server.py
# 若无报错,说明 Server 已就绪(stdio 模式不会打印任何日志)
- 编写 MCP Client(
demo_client.py)
# demo_client.py
import asyncio
import sys
from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client
async def main():
# 1. 定义如何启动我们的 server
server_params = StdioServerParameters(
command=sys.executable, # 当前 python 解释器
args=["demo_server.py"] # server 脚本
)
# 2. 建立会话
async with stdio_client(server_params) as (read, write):
async with ClientSession(read, write) as session:
await session.initialize() # MCP 握手
# 3. 列举可用工具
tools = await session.list_tools()
print("Available tools:", [t.name for t in tools])
# 4. 调用工具
result = await session.call_tool("add", arguments={"a": 3, "b": 4})
print("add(3,4) =>", result)
result = await session.call_tool("greet", arguments={"name": "MCP"})
print("greet('MCP') =>", result)
if __name__ == "__main__":
asyncio.run(main())
运行客户端:
python demo_client.py
期望输出类似:
Available tools: ['add', 'greet']
add(3,4) => [TextContent(type='text', text='7')]
greet('MCP') => [TextContent(type='text', text='Hello, MCP!')]
- 下一步
- 把 Server 加到 Claude Desktop / Cursor:只需在对应的
mcp.json里加一段指向demo_server.py的配置即可。 - 给 Server 再加
@mcp.resource()或@mcp.prompt()就能暴露更多能力。
到此,你已拥有本地可跑、可扩展的最小 MCP 链路啦。祝编码愉快!
🧾 声明:所有内容均为我非工作时间的个人开发探索,技术探索过程公开透明,旨在分享语音交互领域的实战经验,不代表任何单位或组织,不涉及任何职务行为或工作成果,仅供学习参考。
火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。
更多推荐
所有评论(0)