模型上下文协议服务器

一个生产就绪的模型上下文协议(MCP)服务器,将Mercury的扩散-LLM能力集成到Claude、Cursor等MCP兼容客户端中。

  • by hamzaamjad
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 hamzaamjad/mercury-mcp-server

使用说明

Mercury MCP服务器

一个生产就绪的模型上下文协议(MCP)服务器,将Mercury扩散LLM功能集成到Claude、Cursor和其他MCP兼容客户端等AI助手中。

✅ 已验证和测试

此实现已针对实际的Mercury API进行了测试,所有功能均已确认有效:

  • ✅ 与小型和大型mercury编码器聊天
  • ✅ 中间填充(FIM)完成
  • ✅ 流媒体响应
  • ✅ 模型列表
  • ✅ 正确的错误处理和重试逻辑
  • ✅ API结构兼容性验证

特性

  • 🚀 全面Mercury API集成:聊天完成、流式处理和中间填充(FIM)
  • 🔄 扩散模型支持:Mercury基于扩散的架构的专业处理
  • 🛡️ 企业安全:API密钥管理、速率限制和输入验证
  • 📊 性能优化:智能缓存、重试逻辑和连接池
  • 🔍 综合录井:使用Winston进行结构化日志记录
  • ✅ 类型安全:带Zod验证的完整TypeScript实现

快速开始

先决条件

  • Node.js 18+
  • Mercury API密钥来自 Inception实验室
  • MCP兼容客户端(Claude Desktop、Cursor等)

安装

# Clone the repository (or download the source)
cd mercury-mcp-server

# Install dependencies
npm install

# Build the server
npm run build

# Set your API key
export MERCURY_API_KEY="your-api-key-here"

# Test the server is working
npm start

构建并运行

# Build the TypeScript code
npm run build

# Run the server
npm start

配置

环境变量

创建一个 .env 具有以下配置的文件:

# Required
MERCURY_API_KEY=sk_your_api_key_here
MERCURY_API_URL=https://api.inceptionlabs.ai/v1

# Optional (with defaults)
LOG_LEVEL=info
CACHE_ENABLED=true
CACHE_TTL=300
DIFFUSION_DEFAULT_STEPS=20
DIFFUSION_STABILITY_THRESHOLD=0.85

Claude桌面集成

将以下内容添加到您的Claude Desktop配置中(claude_desktop_config.json):

{
  "mcpServers": {
    "mercury": {
      "command": "node",
      "args": ["/path/to/mercury-mcp-server/dist/index.js"],
      "env": {
        "MERCURY_API_KEY": "sk_your_api_key_here"
      }
    }
  }
}

可用工具

1. mercury_chat_completion

使用Mercury的扩散LLM生成聊天完成。

参数:

  • messages:对话消息数组
  • model:要使用的型号(默认:水银编码器小)
  • temperature:取样温度(0-2)
  • max_tokens:要生成的最大令牌数
  • diffusion_steps:扩散步骤数

2. mercury_chat_stream

流式聊天完成以获得实时响应。

参数: 与聊天完成相同

3. mercury_fim_completion

使用Fill-in-the-Middle生成代码完成。

参数:

  • prompt:光标前的代码
  • suffix:光标后的代码
  • max_middle_tokens:中间部分的最大令牌数
  • alternative_completions:备选方案数量(1-5)

4. mercury_list_models

列出所有可用的Mercury型号及其功能。

参数: 无

发展

运行测试

# Run all tests
npm test

# Run unit tests only
npm run test:unit

# Run with coverage
npm run test -- --coverage

使用MCP检查器

使用官方MCP检查器测试您的服务器:

npx @modelcontextprotocol/inspector node dist/index.js

发展模式

# Run with auto-reload
npm run dev

# Format code
npm run format

# Lint code
npm run lint

建筑

mercury-mcp-server/
├── src/
│   ├── mercury/          # Mercury API client
│   ├── tools/           # MCP tool implementations
│   ├── utils/           # Utilities (logging, cache, validation)
│   ├── config/          # Configuration management
│   ├── server.ts        # MCP server setup
│   └── index.ts         # Entry point
├── tests/               # Test suites
└── docs/               # Additional documentation

错误处理

服务器为以下对象实现了全面的错误处理:

  • 验证错误:输入参数无效
  • API错误:Mercury API故障
  • 扩散误差:模型趋同问题
  • 速率限制:带回退的自动重试

安全

  • API密钥从未被记录或公开
  • 所有输入都使用Zod模式进行验证
  • 限速防止滥用
  • 支持安全的环境变量管理

故障排除

常见问题

  1. “需要MERCURY_API_KEY”

    • 确保您的 .env 文件包含有效的API密钥
    • 检查环境变量是否已加载
  2. “无法连接到Mercury API”

    • 验证您的互联网连接
    • 检查API URL是否正确
    • 确保您的API密钥有效
  3. “检测到低置信度得分”

    • 增加 diffusion_steps 为了更好的质量
    • 调整温度以获得更确定的输出

AI代理文档

该服务器包括特殊文档,以帮助人工智能模型了解Mercury的功能:

这些资源帮助人工智能代理在何时以及如何使用Mercury的独特功能方面做出明智的决定。

贡献

  1. 分叉存储库
  2. 创建功能分支(git checkout -b feature/amazing-feature)
  3. 提交您的更改(git commit -m 'Add amazing feature')
  4. 推到分支(git push origin feature/amazing-feature)
  5. 打开拉取请求

许可证

MIT许可证-请参阅 许可证 详细信息文件

致谢