如何调用MCP服务器获取信息?
2025-10-28
深度学习
00
bash
展开代码
import asyncio import json from mcp import ClientSession, StdioServerParameters from mcp.client.stdio import stdio_client async def call_newsnow_mcp(): """调用 newsnow MCP 获取知乎热门新闻""" # 1. 配置 MCP 服务器参数 server_params = StdioServerParameters( command="npx", args=["-y", "newsnow-mcp-server"], env={"BASE_URL": "http://101.126.150.28:9044"} ) # 2. 连接到 MCP 服务器 async with stdio_client(server_params) as (read, write): async with ClientSession(read, write) as session: # 3. 初始化会话 await session.initialize() # 4. 调用工具获取知乎新闻 result = await session.call_tool( name="get_hottest_latest_news", arguments={ "id": "zhihu", "count": 10 } ) # 5. 打印结果 print("=" * 50) print("知乎热门新闻(前10条)") print("=" * 50) # 解析返回的内容 for item in result.content: if hasattr(item, 'text'): # 尝试解析 JSON try: news_data = json.loads(item.text) print(json.dumps(news_data, indent=2, ensure_ascii=False)) except: print(item.text) # 运行 if __name__ == "__main__": asyncio.run(call_newsnow_mcp())
如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:Dong

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC。本作品采用《知识共享署名-非商业性使用 4.0 国际许可协议》进行许可。您可以在非商业用途下自由转载和修改,但必须注明出处并提供原作者链接。 许可协议。转载请注明出处!