使用说明(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