<![CDATA[
使用说明
一、项目简介
PackageFlow MCP 服务器是一套用于向 AI 客户端提供可访问的后端能力的实现。它实现了 MCP 协议核心机制(如读取资源、注册并执行工具、获取与渲染提示模板),通过 JSON-RPC 的方式与 AI 客户端通信,支持会话管理、能力声明、权限控制、日志记录与后台任务等特性,旨在为本地端 AI 助手提供安全、可扩展的上下文服务。
二、主要功能点
- 资源管理与数据访问:对项目、工作流、脚本等资源进行注册、查询与管理。
- 工具注册与执行:实现多种 MCP 工具,覆盖项目管理、Git/工作树、流程编排、NPM 脚本执行、后台进程、部署等场景,并具备执行、状态查询、日志记录等能力。
- Prompts 与模板:内置及自定义的工作流步骤模板,支持按分类筛选和检索。
- MCP 服务器与客户端对接:通过 JSON-RPC 规范接收请求、返回响应,兼容 Claude Code、Codex CLI、Gemini CLI 等 MCP 客户端。
- 权限与安全:提供权限模式(只读、执行确认、全访问)与白名单,具备请求日志记录、输入输出脱敏等安全特性。
- 速率限制与并发控制:全局速率限制与工具级别限流,以及并发执行控制,防止资源滥用。
- 本地优先与隐私保护:数据与工具链尽量在本地执行,降低外部依赖和隐私外泄风险。
- 多实例与后台进程:支持多实例并发运行、后台任务执行、输出流获取和状态监控。
三、安装与运行
- 构建与运行(示例步骤,具体依赖链与环境请以仓库自述为准):
- 需要使用 Rust 和相关构建工具构建 MCP 服务器二进制;
- 运行后服务器通过标准输入输出进行 JSON-RPC 通信(stdio 传输),可与 Claude Code、Codex CLI、Gemini CLI 等集成使用。
- 运行方式要点:
- MCP 服务器默认提供 stdio 传输,AI 客户端需要通过相应的启动命令连接到该传输通道,发送 JSON-RPC 请求并接收响应。
- 服务器实现中还包含对日志、权限、速率限制、背景进程等的完整支持,方便在本地开发环境中进行 AI 辅助的工具调用。
四、服务器配置(MCP 客户端对接所需信息)
MCP 客户端需要把 MCP 服务器的启动信息配置成 JSON 形式,包含服务器名称、启动命令与参数等。以下为一个正确的配置示例描述,供客户端了解字段含义与用途(实际客户端不需要此段代码):
- server_name: PackageFlow MCP Server
- command: packageflow-mcp
- args: []
- transport: stdio
说明:
- server_name 用于在客户端 UI 中展示服务器名称,便于区分多后端 MCP 服务。
- command 是用于启动 MCP 服务器的可执行文件名称(在本仓库的实现中对应的是打包后的 MCP 服务器二进制,例如 packageflow-mcp)。
- args 可以按需传递启动参数,当前实现以 stdio 传输为主,因此常用值为空数组。
- transport 指定与客户端通信的传输通道,这里使用 stdio,表示通过进程的标准输入输出进行 JSON-RPC 通信。
五、基本使用方法(简要操作流程)
- 启动服务器:按仓库提供的构建与运行流程,将 MCP 服务器二进制启动并保持运行。
- 客户端接入:AI 客户端通过配置的命令与参数与 MCP 服务器建立连接(通常是通过 stdio 通道实现 JSON-RPC 请求/响应)。
- 发送请求:客户端向 MCP 服务器发送请求,如获取资源、查询工作流、执行脚本、触发模板等。
- 查看结果:服务器返回标准的 JSON-RPC 响应,包含结果数据、错误信息或通知。
- 会话与日志:服务器记录请求日志、执行历史、后台进程输出,必要时可查询执行状态与历史记录。
- 安全与权限:在使用前配置 MCP 服务器的权限模式与允许的工具列表,确保 AI 客户端的调用符合安全策略。
六、注意事项
- MCP 客户端需要与服务器约定统一的请求格式与参数字段,参照仓库中的工具定义与参数类型进行对接。
- 由于实现覆盖较广,请在正式使用前对权限、日志、后台进程等进行充分测试,避免误调用或资源耗尽。
- 若需要在生产中部署,请使用打包后的二进制并结合系统服务管理器进行守护与监控。
七、后续扩展
- 支持其他传输通道(如 SSE、WebSocket)以实现更高易用性的 MCP 客户端。
- 增强对 Prompts 的渲染与模板扩展能力,提升交互灵活性。
- 加强跨平台兼容性与安全策略(更多的白名单、审计日志、密钥管理等)。
]]>
信息
分类
开发者工具