项目简介
该项目仓库主要是一个用于构建和运行AI Agent的SDK (Strands Agent),但其中包含了一个独立的、基于Model Context Protocol (MCP) 实现的维基百科服务示例。此服务将维基百科的搜索、摘要等功能封装为可通过MCP协议调用的工具,供兼容MCP的LLM客户端或Agent使用。
主要功能点
- 提供维基百科搜索 (search) 工具,根据查询词返回相关条目列表。
- 提供维基百科摘要 (summary) 工具,获取指定条目的简要信息。
- 提供维基百科页面 (page) 工具,获取指定条目的完整页面内容。
- 提供维基百科随机页面 (random) 工具。
- 提供设置维基百科语言 (set_lang) 工具。
- 通过JSON-RPC协议响应MCP客户端的工具调用请求。
安装步骤
- 克隆 Strands Agent 仓库到本地:
git clone https://github.com/kyopark2014/strands-agent/ cd strands-agent - 安装Python依赖库。该MCP服务需要 'wikipedia' 库。通常可以通过安装 'requirements.txt' 来满足:
或只安装MCP服务所需的核心依赖:pip install -r requirements.txtpip install mcp wikipedia
服务器配置
MCP客户端(如Strands Agent或其他LLM应用)需要知道如何启动并连接到此MCP服务器。对于基于Stdio传输协议的MCP客户端,通常需要配置服务器的启动命令及其参数。
配置信息通常是一个包含服务器信息的JSON对象,例如:
{ "name": "WikipediaMCP", // 服务器的友好名称 "command": "python", // 启动服务器进程的命令 "args": ["application/mcp_server_wikipedia.py"], // 传递给命令的参数,即服务器脚本路径 "protocol": "stdio" // 使用的传输协议 (这里是stdio) }
LLM客户端会根据此配置信息启动一个进程来运行 'application/mcp_server_wikipedia.py' 脚本,并通过其标准输入/输出来与服务器进行JSON-RPC通信。
基本使用方法
- 启动服务器: 直接运行 'application/mcp_server_wikipedia.py' 脚本即可作为MCP服务器启动。但在实际应用中,通常是由MCP客户端根据上述配置自动启动和管理服务器进程。
- 客户端连接: 使用支持Stdio协议的MCP客户端库(如 'mcp' 库)连接到此服务器进程。
- 发现工具: 客户端可以向服务器发送请求,列出所有可用的工具(如 'search', 'summary')。
- 调用工具: 客户端根据LLM的需求,选择合适的工具(如 'search'),构造包含工具名称和参数的JSON-RPC请求,发送给服务器。
- 处理结果: 服务器执行工具(调用维基百科库),并将结果通过JSON-RPC响应返回给客户端,客户端再将结果提供给LLM。
信息
分类
网页与API