使用说明(Markdown 格式)
-
项目简介 PraisonAI MCP 服务器是一个实现 MCP(Model Context Protocol)的服务端组件,致力于为大语言模型客户端提供标准化的上下文信息与功能入口。核心职责包括托管和管理资源(Resources)、注册与执行工具(Tools),以及定义/渲染 Prompt 模板(Prompts)。服务器通过 JSON-RPC 与客户端通信,处理读取资源、调用工具、获取 Prompts 等请求,并返回结构化的 JSON-RPC 响应或通知。服务器端负责会话管理、能力声明,并支持多种传输协议(如 STDIO、SSE、WebSocket),以提供安全、可扩展的上下文服务。
-
主要功能点
- MCP 服务端实现:完整遵循 MCP 协议,支持工具暴露、资源管理、Prompts 渲染等核心能力。
- JSON-RPC 通信:与 MCP 客户端通过标准的 JSON-RPC 请求/响应进行交互。
- 多传输支持:原生支持 STDIO、SSE、WebSocket 等传输方式,便于本地、服务器端与前端的集成。
- 工具暴露与注册:将本地函数/工具注册为 MCP 服务的可调用入口,LLM 客户端可以远程调用。
- 资源与提示管理:托管资源、模板提示,并提供一致的渲染与访问接口。
- 会话与安全:会话管理、能力声明、基础安全控件以及可扩展的安全策略。
-
安装步骤
- 获取代码:将仓库克隆至本地或服务器环境。
- 安装依赖:在虚拟环境中安装所需依赖(如 Python 包、网络与传输相关库)。
- 启动服务端:通过命令行启动 MCP 服务器(具体启动命令见下方“服务器配置”中的示例)。初次启动后,服务器将暴露 MCP 服务入口供 MCP 客户端连接。
-
服务器配置(MCP 客户端需要配置的启动信息,格式为 JSON,包含 server name、command、args 等) 注意:以下 JSON 配置示例仅用于 MCP 客户端与服务器对接的参数说明,实际使用中请以仓库提供的默认值或实际部署参数为准。
{ "server_name": "PraisonAI-MCP-Server", "description": "PraisonAI MCP 服务端,暴露资源、工具与 Prompts 的 MCP 接口", "command": "python", "args": [ "-m", "praisonai.mcp.server" // 服务器入口模块名,请根据实际部署调整为实际路径 ], "transport_options": { "stdio": true, "sse": { "enabled": true, "host": "0.0.0.0", "port": 8080 }, "websocket": { "enabled": true, "host": "0.0.0.0", "port": 8081 } }, "notes": [ "MCP 客户端连接时,需依照该配置中的 server_name 与入口点进行对接。", "站在可移植性角度,优先使用 SSE/WebSocket 作为实时通道,STDIO 适用于本地开发与调试。" ] }
-
基本使用方法
- 客户端连接:MCP 客户端通过配置的启动命令与参数,启动后连接 MCP 服务器的入口端点(STDIO/SSE/WebSocket),并通过 MCP 协议发送 JSON-RPC 请求。
- 请求类型:客户端可以请求读取资源、触发工具调用、获取并渲染 Prompts 等,服务器返回对应的 JSON-RPC 响应或发送事件通知。
- 会话管理:服务器内部维护会话上下文,确保跨请求的一致性与上下文传递。
- 能力声明:服务器对外声明自身能力(可用的资源、工具、提示模板等),便于客户端对接和功能发现。
- 部署与扩展:可在本地、容器或云端部署,结合传输通道实现实时交互和高并发场景。
-
运行与测试
- 启动 MCP 服务器后,使用 MCP 客户端进行连接并进行资源读取、工具调用、Prompts 获取等操作,确保 JSON-RPC 请求与响应格式正确,传输通道能够稳定工作。
- 如需进一步测试,可利用仓库提供的示例客户端代码进行端到端验证,确保服务器端能够正确暴露工具并响应。
-
备注
- 本仓库中包含了对 MCP 服务器端、客户端以及相关传输方式的示例与文档,若实际代码实现完整且可运行,则可视为有效的 MCP 服务器实现。
- 如仅存在客户端示例代码而无服务器实现,则将不符合要求,请以仓库实际提供的服务器实现为准。
信息
分类
网页与API