AIquila MCP 服务端
使用说明(简要)
- 项目简介
- AIquila MCP 服务端是一套基于 MCP 规范的后端服务,旨在为 Claude 等大语言模型客户端提供可扩展的上下文与功能能力,核心包括资源(Resources)管理、工具(Tools)注册与执行,以及对 Prompt/模板的管理与渲染。服务器通过 JSON-RPC / 流式或 HTTP 传输与客户端交互,包含会话管理、能力声明以及对多种传输协议的支持。
- 主要功能点
- MCP 服务端核心:实现 Model Context Protocol 的服务器端,支持通过不同传输通道与客户端通信。
- 资源管理:对 Nextcloud/相关数据源的资源进行读取、列举与访问。
- 工具注册与执行:将多组工具集注册到 MCP 服务器,LLM 客户端可调用这些工具完成外部功能,例如文件操作、日历、邮件、地图等。
- 提示模板与渲染:提供通过模板化的方式渲染对话所需的 Prompts/上下文。
- 安全与扩展性:内置会话、权限、以及可扩展的工具集合;支持 STDIO 与 HTTP 的传输协议。
- 多传输协议:标准化的通信协议支持,方便在本地、容器和云端环境中运行。
- 安装步骤
- 获取代码:将仓库克隆下来。
- 安装依赖与构建:进入 mcp-server 目录,安装所需依赖并进行构建(通常包括安装 Node.js 依赖、TypeScript 编译等步骤)。
- 启动服务器:根据需要选择 STDIO(适用于 Claude Desktop 场景)或 HTTP(适用于容器/云环境)的传输模式启动 MCP 服务器。
- 运行测试/验证:可使用仓库提供的测试用例或自行对 MCP 服务器进行简单的 JSON-RPC 调用验证。
- 服务器配置(给 MCP 客户端的配置信息)
配置示例(JSON,客户端需要但不在本仓库中执行):
{
"serverName": "aiquila",
"command": "node",
"args": ["dist/mcp-server/index.js"],
"workingDirectory": "/path/to/aiquila",
"env": {
"MCP_TRANSPORT": "stdio" // 取值为 "stdio" 或 "http",按实际部署决定
},
"notes": "请在正式部署前确保已构建好 MCP 服务器的可执行入口(如 dist/mcp-server/index.js),并根据需要配置传输模式、OAuth、TLS 等环境变量。"
}
说明:
- serverName 与代码中的 MCP 服务端名称保持一致,在本实现中为 "aiquila"。
- command/args 指定启动 MCP 服务器的命令及参数,客户端据此启动并连接。
- 具体传输和鉴权相关的环境变量需结合实际部署场景配置(如 MCP_AUTH_ENABLED、MCP_AUTH_ISSUER、MCP_AUTH_SECRET 等)。
- 基本使用方法
- 启动方式:根据部署环境选择 STDIO 或 HTTP 传输,启动后 MCP 客户端即可通过 JSON-RPC 请求访问资源、调用工具、获取 Prompts。
- 调用方式:通过客户端发起 JSON-RPC 请求,服务端返回 JSON-RPC 响应或通知,完成资源读取、工具执行、提示渲染等操作。
- 扩展性:可以通过添加新的 Tools、Resources、Prompts 来扩展 MCP 服务端的能力。