数字海洋代理MCP服务器
一种模型上下文协议(MCP)服务器,为数字海洋代理知识库提供搜索功能。该服务器使Claude和其他兼容MCP的AI工具能够从Digital Ocean Agent实例中搜索和检索信息。
特性
- 4搜索方法:基本、重写(默认)、后退和子查询检索策略
- 多代理支持:配置单个或多个DO代理实例
- 专注于块:以最小的AI开销返回文档块,以实现成本优化
- Cloudflare员工部署:可扩展的无服务器部署
- 双层速率限制:按IP和全球费率限制成本保护
- 安全强化:山宁泰错误消息、请求超时、安全代理选择
搜索工具
do_agent_basic_search-无查询增强的基本搜索(retrieval_method: "none")do_agent_rewrite_search-使用AI查询重写进行搜索(retrieval_method: "rewrite")do_agent_step_back_search-针对更广泛背景的后退策略(retrieval_method: "step_back")do_agent_sub_queries_search-综合检索的子查询方法(retrieval_method: "sub_queries")
其他管理工具:
list_do_agents-列出所有已配置的代理实例get_current_do_agent-获取默认代理信息
快速开始
1.安装依赖项
npm install2.安全部署设置
⚠️ 重要:遵循 完整部署指南 用于安全的生产设置。
快速发展:
# Copy environment template (local dev only)
cp .env.example .env
# Edit .env with your endpoint and token
npm run dev生产部署:
# 1. Edit wrangler.toml with your endpoint (public)
# 2. Set token as secret (never committed):
wrangler secret put DO_AGENT_TOKEN
# 3. Deploy securely:
npm run deploy📖 阅读完整的部署指南 有关分步说明、安全最佳实践和故障排除。
使用示例
基本搜索
{
"tool": "do_agent_basic_search",
"parameters": {
"query": "How do I configure load balancers?",
"k": 5
}
}重写搜索(推荐)
{
"tool": "do_agent_rewrite_search",
"parameters": {
"query": "database backup procedures",
"k": 10,
"include_ai_response": false
}
}多代理搜索
{
"tool": "do_agent_step_back_search",
"parameters": {
"query": "troubleshooting connection issues",
"agent_name": "agent_2"
}
}参数
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
query | string | 必填 | 搜索查询(最多10000个字符) |
k | number | 10 | 要返回的文档结果数(有效范围:1-10) |
include_ai_response | boolean | false | 包含AI生成的响应 |
agent_name | string | 代理_1 | 要搜索的代理(代理_1、代理_2等) |
配置
环境变量
DO_AGENT_ENDPOINT-单代理端点URLDO_AGENT_TOKEN-单代理承载令牌DO_AGENT_ENDPOINTS-逗号分隔的代理端点DO_AGENT_TOKENS-逗号分隔的承载令牌DO_AGENT_DESCRIPTIONS-逗号分隔的代理描述
速率限制
每IP速率限制:
RATE_LIMIT_PER_WINDOW-每个时间窗口内每个IP的最大请求数(默认值:75)RATE_LIMIT_WINDOW_SECONDS-时间窗口(秒)(默认值:120)
全球利率限制:
GLOBAL_RATE_LIMIT_PER_WINDOW-每个时间窗口的全局最大请求数(默认值:100)GLOBAL_RATE_LIMIT_WINDOW_SECONDS-全局时间窗口(秒)(默认值:120)
服务器强制执行每IP和全局速率限制,以防止成本爆炸。速率限制错误返回特定消息,指示是否超过了每个IP或全局限制。
安全功能
- 请求超时:所有DO代理API调用超时30秒
- 错误清理:后端错误经过清理,以防止信息泄露
- 安全代理选择:使用代理名称(agent_1、agent_2),而不是公开内部端点
- 输入验证:具有特定错误消息的全面参数验证
响应滤波
默认情况下,人工智能响应会被过滤掉,以专注于检索块并最大限度地降低成本。集 include_ai_response: true 包括完整的AI响应。
固定设置
以下内容会自动配置以获得最佳性能:
stream: false-非流式响应include_retrieval_info: true-始终包含文档块max_tokens: 50-成本优化的最小令牌
建筑
此MCP服务器充当MCP客户端(如Claude)和数字海洋代理之间的桥梁:
MCP Client (Claude) ↔ MCP Server ↔ DO Agent API ↔ Knowledge Base服务器针对以下方面进行了优化:
- 成本:最少的代币使用,最便宜的DO型号
- 相关性:用于更好块的高级检索方法
- 可扩展性:Cloudflare Workers部署
- 灵活性:单/多代理配置
发展
内置:
- 模型上下文协议
- Cloudflare员工
- 萨德 用于模式验证
- TypeScript用于类型安全
许可证
麻省理工学院
