Skwad MCP Server
使用说明内容(Markdown格式)
项目简介
Skwad 提供一个内置的 MCP 服务器,用以在 AI 编码代理之间进行通信、协作与上下文传递。服务器基于 JSON-RPC,支持资源管理、工具注册与执行、以及提示模板的获取与渲染,方便将本地代理生态整合成一个协同工作流。
主要功能点
- 代理协同与通信:代理之间可通过 MCP 服务器发送请求、响应和通知,实现协作与任务分配。
- 资源管理:提供对资源(如数据、模型、工具等)的集中管理和数据访问能力。
- 工具注册与执行:注册外部功能/工具,允许 LLM 客户端调用这些工具实现外部操作。
- 提示模板:定义、获取和渲染 Prompt 模板,支持多种交互模式。
- 多传输协议支持:基于 HTTP/Hummingbird,理论上可扩展为 SSE、WebSocket、StdIO 等传输方式以满足不同场景。
- 会话与能力声明:对会话状态进行管理,并声明服务器能力以便客户端理解可用的能力集。
安装步骤
- 克隆仓库并在 macOS 14 及以上环境下打开 Skwad.xcodeproj。
- 构建并运行 Skwad 应用,应用内置的 MCP 服务器将随应用启动。
- 依据本地需求配置与运行相关的代理组件与客户端。
服务器配置(给 MCP 客户端的连接信息描述)
以下配置用于描述如何连接 Skwad 内置的 MCP 服务器。注意:实际连接通常在客户端通过应用内配置完成,以下信息用于理解服务器的接入参数;无需直接编写代码。
-
server_name(服务器名称):Skwad MCP Server 注释:用于标识该 MCP 服务器实例的名称,便于客户端区分。
-
command(启动命令):open 注释:在本地启动一个应用级 MCP 服务的命令,实际运行通常是通过 Skwad.app 启动过程触发。
-
args(启动参数):["Skwad.app", "--start-mcp"] 注释:附带的参数,指明以何种方式启动 MCP 服务实例,具体参数以实际运行时为准。
-
bind_address(绑定地址):localhost 注释:服务器监听的网络地址,默认使用本地回环地址,确保本地客户端可访问。
-
port(端口):8080 注释:HTTP 基础端口,客户端通过此端口连接 MCP 服务。实际端口可在运行时配置。
-
transports(传输协议列表):["http", "websocket", "sse", "stdio"] 注释:本 MCP 服务器理论上支持多种传输协议,客户端可按需要选择合适的传输方式进行通信。
-
resources_path(资源目录,若有):Skwad/Resources 注释:资源(数据、工具、模型等)的本地存放位置,便于服务器访问和管理。
-
authentication(认证方式,若有):none 注释:默认无认证,生产环境可按需要开启 token/OAuth 等方式。
-
capabilities(能力声明,简述服务器提供的能力点) 注释:如资源读取、工具执行、Prompt 获取与渲染等能力的集合,便于客户端在首次连接时对服务能力进行自我描述。
说明:以上字段用于帮助 MCP 客户端理解如何连接与互动。实际在 Skwad 应用中,服务器端实现细节由应用内置的 Hummingbird HTTP 服务承载,客户端可通过 MCP 进行资源、工具和提示的上下文服务调用。
基本使用方法
- 启动:打开 Skwad 应用,MCP 服务器随应用启动自动上线,监听本地端口供客户端连接。
- 连接:MCP 客户端通过上述服务器地址和端口建立 JSON-RPC 通信,发送读取资源、调用工具、获取提示等请求。
- 互动:客户端发送请求,服务器返回标准的 JSON-RPC 响应,必要时推送通知以更新代理状态或任务进展。
- 安全与扩展:如需生产环境使用,可在配置中开启认证和加密传输,支持增加新的传输协议与资源类型。