plugged.in MCP 代理服务器是一种强大的中间件,它将多个模型上下文协议(MCP)服务器聚合到一个统一的接口中。它从plugged.in 应用获取工具、提示和资源配置,并智能地将请求路由到适当的底层MCP服务器。
此代理使与任何MCP客户端(Claude、Cline、Cursor等)无缝集成成为可能,同时通过plugged.in生态系统提供了高级管理能力。
知识(RAG v2 / AI 文档交换)
搜索和定位模型输出,具有统一的、带有归属意识的文档检索。MCP服务器可以在您的库中创建和管理文档,包括版本控制、可见性控制和模型归属。使用内置的RAG跨所有连接源进行搜索,并返回相关片段和元数据。
记忆(持久AI记忆)
长期存在的、工作区/个人资料范围内的记忆,可以跨越会话。该中心与plugged.in应用的持久记忆集成,使得代理操作和见解可以在任务之间存储和回忆。内置的记忆工具正在路线图上,以在相同的认证模型下暴露低摩擦的get/put/search模式。
工具
聚合内置功能与下游MCP服务器(STDIO、SSE、可流式传输HTTP)。工具发现被缓存并且可以根据需要刷新;中心级别的发现返回任何MCP客户端的统一目录。中心支持工具、资源、资源模板和提示。
代理
每个客户端一个连接。作为STDIO(默认)或可流式传输HTTP运行,可选API认证和无状态模式。适用于Claude桌面版、Cline、Cursor、MCP检查器等;保持现有的客户端配置,同时集中策略和遥测。
⭐ 如果您觉得这个项目有用,请考虑在GitHub上给它一个星! 这有助于我们接触到更多的开发者,并激励我们不断改进。
ai_generated、upload或api来源代理提供两类不同的工具:
这些工具内置在代理中,无需任何服务器配置即可工作:
pluggedin_discover_tools - 带缓存的智能发现,即时结果pluggedin_rag_query - RAG v2跨文档搜索,带有AI过滤能力pluggedin_send_notification - 发送通知,可选电子邮件发送pluggedin_create_document - (即将推出)在您的库中创建AI生成的文档这些工具来自您配置的MCP服务器,可以开启或关闭:
发现工具智能显示这两类工具,使AI模型立即访问所有可用功能。
# 快速发现 - 即刻返回缓存的数据
pluggedin_discover_tools()
# 强制刷新 - 显示当前工具 + 后台发现
pluggedin_discover_tools({"force_refresh": true})
# 发现特定服务器
pluggedin_discover_tools({"server_uuid": "uuid-here"})
示例响应:
## 🔧 静态内置工具(始终可用):
1. **pluggedin_discover_tools** - 带缓存的智能发现
2. **pluggedin_rag_query** - RAG v2跨文档搜索,带有AI过滤
3. **pluggedin_send_notification** - 发送通知
4. **pluggedin_create_document** - (即将推出)在您的库中创建AI生成的文档
## ⚡ 动态M-CP工具(8) - 来自连接的服务器:
1. **query** - 运行只读SQL查询
2. **generate_random_integer** - 生成安全随机整数
...
增强的RAG v2系统允许MCP服务器创建和搜索文档,具有完整的AI归属:
# 搜索由特定AI模型创建的文档
pluggedin_rag_query({
"query": "系统架构",
"filters": {
"modelName": "Claude 3 Opus",
"source": "ai_generated",
"tags": ["技术"]
}
})
# 跨所有文档来源搜索
pluggedin_rag_query({
"query": "部署指南",
"filters": {
"dateFrom": "2024-01-01",
"visibility": "工作区"
}
})
# 未来:创建AI生成的文档(即将推出)
pluggedin_create_document({
"title": "分析报告",
"content": "# 市场分析\n\n详细发现...",
"format": "md",
"tags": ["分析", "市场"],
"metadata": {
"model": {
"name": "Claude 3 Opus",
"provider": "Anthropic"
}
}
})
# 使用npx安装并运行最新版本v1.0.0
npx -y @pluggedin/pluggedin-mcp-proxy@latest --pluggedin-api-key YOUR_API_KEY
对于现有安装,请参阅我们的Migration Guide以获取详细的升级说明。
# 快速升级
npx -y @pluggedin/pluggedin-mcp-proxy@1.0.0 --pluggedin-api-key YOUR_API_KEY
在您的Claude Desktop配置中添加以下内容:
{
"mcpServers": {
"pluggedin": {
"command": "npx",
"args": ["-y", "@pluggedin/pluggedin-mcp-proxy@latest"],
"env": {
"PLUGGEDIN_API_KEY": "YOUR_API_KEY"
}
}
}
}
在您的Cline配置中添加以下内容:
{
"mcpServers": {
"pluggedin": {
"command": "npx",
"args": ["-y", "@pluggedin/pluggedin-mcp-proxy@latest"],
"env": {
"PLUGGEDIN_API_KEY": "YOUR_API_KEY"
}
}
}
}
对于Cursor,您可以使用命令行参数而不是环境变量:
npx -y @pluggedin/pluggedin-mcp-proxy@latest --pluggedin-api-key YOUR_API_KEY
| 变量 | 描述 | 是否必需 | 默认值 |
|---|---|---|---|
PLUGGEDIN_API_KEY | plugged.in应用的API密钥 | 是 | - |
PLUGGEDIN_API_BASE_URL | plugged.in应用的基础URL | 否 | https://plugged.in |
命令行参数优先于环境变量:
npx -y @pluggedin/pluggedin-mcp-proxy@latest --pluggedin-api-key YOUR_API_KEY --pluggedin-api-base-url https://your-custom-url.com
| 选项 | 描述 | 默认值 |
|---|---|---|
--transport <type> | 传输类型:stdio 或 streamable-http | stdio |
--port <number> | Streamable HTTP服务器的端口 | 12006 |
--stateless | 启用Streamable HTTP的无状态模式 | false |
--require-api-auth | 要求Streamable HTTP请求的API密钥 | false |
要查看所有选项:
npx -y @pluggedin/pluggedin-mcp-proxy@latest --help
代理可以作为HTTP服务器而不是STDIO运行,从而实现基于web的访问和远程连接。
# 在默认端口(12006)上作为HTTP服务器运行
npx -y @pluggedin/pluggedin-mcp-proxy@latest --transport streamable-http --pluggedin-api-key YOUR_API_KEY
# 自定义端口
npx -y @pluggedin/pluggedin-mcp-proxy@latest --transport streamable-http --port 8080 --pluggedin-api-key YOUR_API_KEY
# 需要认证
npx -y @pluggedin/pluggedin-mcp-proxy@latest --transport streamable-http --require-api-auth --pluggedin-api-key YOUR_API_KEY
# 无状态模式(每次请求新会话)
npx -y @pluggedin/pluggedin-mcp-proxy@latest --transport streamable-http --stateless --pluggedin-api-key YOUR_API_KEY
POST /mcp - 发送MCP消息GET /mcp - 服务器发送事件流(可选)DELETE /mcp - 终止会话GET /health - 健康检查端点在有状态模式(默认)下,使用mcp-session-id头来维护会话:
# 第一次请求创建会话
curl -X POST http://localhost:12006/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","method":"tools/list","id":1}'
# 后续请求使用相同的会话
curl -X POST http://localhost:12006/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-H "mcp-session-id: YOUR_SESSION_ID" \
-d '{"jsonrpc":"2.0","method":"tools/call","params":{"name":"tool_name"},"id":2}'
当使用--require-api-auth时,将您的API密钥作为Bearer令牌包含:
curl -X POST http://localhost:12006/mcp \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","method":"ping","id":1}'
您也可以使用Docker构建和运行代理服务器。
确保已安装并运行Docker。导航到pluggedin-mcp目录并运行:
docker build -t pluggedin-mcp-proxy:latest .
.dockerignore文件包含以优化构建上下文。
在STDIO模式下运行容器以进行MCP检查器测试:
docker run -it --rm \
-e PLUGGEDIN_API_KEY="YOUR_API_KEY" \
-e PLUGGEDIN_API_BASE_URL="YOUR_API_BASE_URL" \
--name pluggedin-mcp-container \
pluggedin-mcp-proxy:latest
作为HTTP服务器运行容器:
docker run -d --rm \
-e PLUGGEDIN_API_KEY="YOUR_API_KEY" \
-e PLUGGEDIN_API_BASE_URL="YOUR_API_BASE_URL" \
-p 12006:12006 \
--name pluggedin-mcp-http \
pluggedin-mcp-proxy:latest \
--transport streamable-http --port 12006
替换YOUR_API_KEY和YOUR_API_BASE_URL(如果未使用默认的`https://plugged.in