模型上下文协议服务器

一个用于管理开发上下文和工作流的模型上下文协议(MCP)服务器实现,支持JSON-RPC 2.0协议、会话管理和工具注册系统。

  • by docherty
  • JavaScript
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 docherty/contextmgr-mcp

使用说明

上下文管理器MCP服务器

用于管理开发上下文和工作流的模型上下文协议(MCP)服务器实现。

特性

  • 基于套接字的传输,具有可靠的消息框架
  • 完全支持JSON-RPC 2.0协议
  • 具有能力协商的会话管理
  • 可扩展的工具注册表系统
  • 项目、工作包和任务管理
  • 检查点和恢复功能
  • QA审查工作流程支持

初始设置

# Install dependencies
npm install

# First-time build
npm run build

用法

启动服务器

# Development mode (no build required, uses tsx for on-the-fly compilation)
npm run dev

# Production mode (requires build)
npm start

# Start with debug logging
DEBUG=1 npm run dev

# Start on specific port
MCP_PORT=44558 npm run dev

发展模式

# Run with hot reloading (preferred during development)
npm run dev

# Watch mode for TypeScript compilation (if you prefer running the compiled version)
npm run watch

# In a separate terminal when using watch mode
npm start

清洁启动

如果您遇到任何问题,可以尝试干净构建:

# Remove build artifacts
rm -rf dist/

# Reinstall dependencies
npm ci

# Rebuild the project
npm run build

# Start in development mode
npm run dev

建筑

核心组件

  1. 信息陈述

    • 基于内容长度的协议
    • 可靠的消息边界处理
    • 缓冲管理
  2. 传输层

    • 基于TCP套接字的通信
    • 连接管理
    • 事件驱动架构
  3. 会话管理

    • 客户端会话跟踪
    • 能力协商
    • 状态持久性
  4. 工具注册表

    • 动态刀具注册
    • 输入验证
    • 结果格式化

工具

  1. 项目管理

    • 创建/获取项目
    • 项目检查点
    • 状态恢复
  2. 工作包管理

    • 创建/获取工作包
    • 进度跟踪
    • 状态更新
  3. 任务管理

    • 创建/更新任务
    • 文件更改跟踪
    • 任务检查点
  4. QA工具

    • 审查工作流程
    • 修复请求
    • 工作包验收

配置

环境变量:

  • DEBUG:启用调试日志记录(0/1)
  • MCP_PORT:服务器端口(默认值:44557)

协议

服务器使用JSON-RPC 2.0实现模型上下文协议:

interface MCPMessage {
  jsonrpc: "2.0";
  id: number;
  method?: string;      // for requests
  params?: any;         // for requests
  result?: any;         // for responses
  error?: {             // for error responses
    code: number;
    message: string;
    data?: any;
  };
}

消息流

  1. 客户端通过TCP连接
  2. 客户端发送初始化请求
  3. 服务器具有响应能力
  4. 正常消息交换开始
  5. 客户端可以关闭/退出

发展

看 初始设置 和 发展模式 以上部分。

贡献

  1. 分叉存储库
  2. 创建功能分支
  3. 提交您的更改
  4. 推到分支
  5. 创建拉取请求

许可证

ISC许可证