Cortex MCP 服务器端(Memory Bank 上下文管理服务器)
使用说明(简要,便于快速上手)
-
项目简介 Cortex 是一个实现 MCP (Model Context Protocol) 的后端服务,专注于通过统一的接口托管上下文相关的资源、注册并执行工具、以及管理可渲染的提示模板。服务器通过 JSON-RPC 与 MCP 客户端通信,支持会话生命周期、能力声明,以及多种传输协议(如标准输入输出、Server-Sent Events、WebSocket 等),为 LLM 应用提供安全、可扩展的上下文服务框架。
-
主要功能点
- 资源管理(Resources):集中存放、访问、查询和版本历史等上下文相关的资源文件。
- 工具注册与执行(Tools):注册外部工具,LLM 客户端可通过 MCP 调用执行这些工具以获取外部能力。
- 提示模板(Prompts):定义、渲染和管理 Prompt 模板,支持可定制的 LLM 交互模式。
- 会话与能力声明(Sessions & Capabilities):服务器端维护会话状态,向客户端声明当前的能力与上下文能力集。
- 多传输协议支持(Transport Protocols):为 MCP 客户端提供 Stdio、SSE、WebSocket 等传输选项。
- JSON-RPC 通信:以标准的 JSON-RPC 格式接收请求并返回响应,统一处理资源、工具、提示相关的操作。
-
安装步骤
- 环境准备
- Python 3.13 及以上
- Node.js(用于某些工具链,如 markdownlint-cli2 等)
- 安装依赖
- 按项目说明安装 Python 依赖
- 安装 Node 依赖(如需要运行前端工具)
- 启动方式(可选方案)
- 使用 UVX 启动:通过 mcp.json 配置,将 cortex 作为一个 MCP 服务器条目启动
- 使用 Smithery 启动:通过 Smithery CLI 将 Cortex 作为服务器启动
- 使用 Docker 启动:以 Cortex 镜像在容器中运行
- 也可本地手动启动(参照仓库中的说明及脚本)
- 配置文件(mcp.json)的说明
Cortex MCP 服务器客户端需要的配置信息,用于与服务器建立连接,典型字段包括服务器名称、启动命令以及对应参数等。示例如下的描述性文本(非代码块形式):
- server name:指定 MCP 客户端将要连接的服务器名称,例如 cortex
- command:启动服务器的命令,例如 uvx、npx、docker 等
- args:启动命令的参数数组,视选用的运行方式而定 重要:该配置仅用于 MCP 客户端的连接信息,实际服务器端实现会根据该配置暴露相应的 MCP 能力和 JSON-RPC 接口。
配置示例(文本描述,不作为代码块展示)
- 使用 UVX 启动的配置示例(描述性文本) 配置中将 cortex 作为服务器名,命令为 uvx,参数包含从 Git 仓库获取 Cortex 并启动 cortex 服务的指令,例如: {"servers": {"cortex": {"command": "uvx", "args": ["--from", "git+https://github.com/igrechuhin/Cortex.git", "cortex"]}}}
- 使用 Smithery 启动的配置示例(描述性文本) {"servers": {"cortex": {"command": "npx", "args": ["-y", "@smithery/cli@latest", "run", "@igrechuhin/cortex", "--key", "your_smithery_key"]}}}
- 使用 Docker 启动的配置示例(描述性文本) {"servers": {"cortex": {"command": "docker", "args": ["run", "-i", "--rm", "19283744/cortex:latest"]}}} 注:以上配置用于 MCP 客户端连接,实际启动方式和参数请以仓库提供的运行指南为准。
- 环境准备
-
服务器基本使用方法
- 启动服务器 根据你的偏好选择:UVX、Smithery 或 Docker 等方式,将 Cortex 以 MCP 服务器对外暴露。
- 连接客户端 MCP 客户端通过 JSON-RPC 向 Cortex 服务器发送请求,请求类型包含读取资源、执行工具、获取和渲染 Prompts 等,服务器返回标准的 JSON-RPC 响应或发送通知。
- 使用场景
- 加载任务上下文并在预算内动态选择相关内容
- 调用外部工具完成特定任务(如代码分析、文档检查等)
- 渲染与更新 Prompt 模板,支持自定义交互模式
- 安全与扩展 Cortex 服务器实现强调会话管理、能力声明以及对多传输协议的支持,便于在不同架构(本地、云端、代理)中扩展。
-
基本使用示例路径与操作
- 启动 Cortex 服务器
- 通过 MCP 客户端发起请求,例如读取资源、调用工具、获取 Prompt 模板
- 处理返回的 JSON-RPC 响应
-
运行与测试
- 仓库内含多阶段测试与集成测试,覆盖资源、工具、Prompts、Synapse/规则管理等 MCP 相关模块。
- 真实使用中应在与实际客户端对接前进行本地或沙箱环境的集成测试,确保 JSON-RPC 请求与响应格式符合 MCP 规范。
-
备注
- 本实现紧贴 MCP 服务器端职责,包含资源、工具、Prompts 的管理能力,以及与客户端的 JSON-RPC 通信、会话管理和能力声明等核心要素。
- 具体实现细节以仓库实际代码为准,本文档基于仓库提供的 README 与代码结构描述给出高层使用指南。