MCP外部专家服务器
MCP(模型上下文协议)服务器,允许主LLM通过API(Ollama,OpenAI兼容)将子任务委托给外部专家模型。
把它想象成“给朋友打电话”——当主要模型在规划、批评或推理方面需要帮助时,它可以打电话给外部专家模型寻求帮助。
安装
从以下位置安装 :
npm install -g mcp-external-expert就是这样!该包已准备好使用。
目的
此服务器支持:
- 初级LLM(如Qwen3 Coder、Claude、GPT-4等)将规划、评论、测试和解释任务委托给外部专家模型
- 避免主服务器上的卸载/缓存丢失
llama-server - 支持路由到Ollama或OpenAI兼容端点
- 可通过环境变量进行配置
- 支持STDIO(用于桌面工具)和HTTP(用于远程/共享使用)
运作原理
配置
服务器可以通过环境变量进行配置,可以是:
- 环境变量 (设置在您的shell或系统中)
.env文件 (建议用于本地开发-自动加载)
使用.env文件(推荐)
- 复制示例文件:
cp .env.example .env- 编辑
.env使用您的设置:
DELEGATE_PROVIDER=ollama
DELEGATE_BASE_URL=http://localhost:11434
DELEGATE_MODEL=qwen2.5:14b-instruct
DELEGATE_API_KEY=your-api-key-here这 .env 文件被gitignored,将不会提交到版本控制中。
环境变量
提供者选择
# In .env file or as environment variables:
DELEGATE_PROVIDER=ollama | openai_compat
DELEGATE_BASE_URL=http://host:port
DELEGATE_MODEL=model-name仅兼容OpenAI
# In .env file or as environment variables:
DELEGATE_API_KEY=sk-...
DELEGATE_OPENAI_PATH=/v1/chat/completions行为
# Timeout for API calls in milliseconds (default: 60000 = 60 seconds)
# Increase this if your Ollama server is slow (e.g., 300000 for 5 minutes)
DELEGATE_TIMEOUT_MS=60000
DELEGATE_MAX_TOKENS=800
DELEGATE_TEMPERATURE=0.2可选的每模式系统提示
DELEGATE_SYSTEM_PLAN="..."
DELEGATE_SYSTEM_CRITIC="..."
DELEGATE_SYSTEM_TESTS="..."
DELEGATE_SYSTEM_EXPLAIN="..."MCP传输切换
MCP_HTTP=true
MCP_HTTP_PORT=3333
MCP_STDIO=true # default用法
发展
对于本地开发,克隆存储库并安装依赖项:
git clone
cd mcp-external-expert-server
npm install
npm run dev生产
npm run build
npm start测试
# Run tests
npm test
# Run tests in watch mode
npm run test:watch
# Run tests with coverage
npm run test:coverage示例运行
使用.env文件(推荐)
- 创建
.env使用您的配置文件:
cp .env.example .env
# Edit .env with your settings- 运行服务器:
npm start使用环境变量
奥利玛助手(遥控箱)
DELEGATE_PROVIDER=ollama \
DELEGATE_BASE_URL=http://ollama-box:11434 \
DELEGATE_MODEL=qwen2.5:14b-instruct \
npm startllama-server OpenAI API
DELEGATE_PROVIDER=openai_compat \
DELEGATE_BASE_URL=http://localhost:8080 \
DELEGATE_MODEL=qwen2.5:14b-instruct \
DELEGATE_API_KEY="" \
npm start启用HTTP MCP
MCP_HTTP=true MCP_HTTP_PORT=3333 npm start注: 在命令行上设置的环境变量将覆盖中的值 .env 文件夹。
暴露的MCP工具
工具: delegate
将子任务委托给外部专家模型。
输入架构:
{
"mode": "plan | review | challenge | explain | tests",
"input": "string (required)",
"context": "string (optional)",
"maxChars": "number (optional, default 12000)"
}模式:
plan→ 分步计划+假设+风险review→ 代码审查-识别错误、质量问题,并提供修复(特定于代码)challenge→ 魔鬼代言人-挑战想法,发现任何概念/提案中的缺陷(一般)tests→ 测试清单+边缘案例explain→ 简明说明
支持的提供商
1.奥利玛(推荐)
- 在单独的机器上为辅助模型保暖
- 无身份验证复杂性
- 对主llama.cpp缓存没有影响
使用: POST /api/chat
2.与OpenAI兼容的端点
适用于:
- 开放人工智能
- llama服务器(
--api) - 文学硕士
- vLLM OpenAI垫片
使用: POST /v1/chat/completions
运输方式
STDIO(默认)
使用人:
- 光标
- 鹅桌面
- 克劳德桌面版
- 其他MCP桌面工具
JSON-RPC通过标准输入/标准输出。
HTTP MCP(可选)
- 长时间运行的服务器
- 跨机器共享
- 让助手模型保持热度
- 支持常规HTTP POST和SSE(服务器发送事件)流
- 为基于web的客户端(MCP Inspector等)启用CORS
终点:
POST /mcp-主MCP端点(JSON-RPC)GET/POST /sse-SSE流媒体端点GET/POST /mcp-还支持SSE流媒体
这是 基于HTTP的MCP 使用Streamable HTTP传输规范,该规范支持:
- 常规HTTP POST请求(JSON-RPC)
- SSE(服务器发送事件)用于流式响应
- 基于浏览器的客户端的CORS标头
- 与MCP Inspector、Goose Desktop、Cursor和其他MCP客户端兼容
安全须知
- HTTP模式应仅限于局域网或在身份验证之后
- 委托提示可能包含敏感代码
- 默认情况下,STDIO模式最安全
- 输入中的秘密会自动编辑
设计说明
- 助手模型 不得 递归调用工具
- 辅助模型输出以纯文本形式返回
- 主要模型决定 *当* 委派(比如需要帮助时“给朋友打电话”)
- 应谨慎使用授权(计划、批评、验证)
- 这避免了主推理主机上的KV缓存被驱逐
- 辅助模型是完全隔离的——它只看到主模型显式传递给它的内容
