人工智能搜索MCP服务器
MCP(模型上下文协议)服务器,提供人工智能增强的网络搜索功能。该服务器接收来自AI客户端的搜索查询,使用具有网络搜索工具的内部AI对其进行处理,并返回增强的搜索结果。
运作原理
- 查询接收:MCP服务器从AI客户端接收搜索查询
- 人工智能处理:内部人工智能处理和优化搜索查询,以获得更好的结果
- 网页搜索:人工智能使用网络搜索工具查找相关信息
- 结果分析:AI根据相关性对搜索结果进行分析和排名
- 增强响应:将经过处理和排序的搜索结果返回给客户端
建筑
AI Client → MCP Server → Internal AI → Web Search (SearXNG) → Enhanced Results服务器由三个主要组件组成:
- MCP服务器:处理协议通信并公开工具
- 人工智能服务:使用AI处理查询和分析结果
- 搜索服务:与SearXNG进行网络搜索的接口
先决条件
- Node.js v16.0.0或更高版本
- TypeScript
- 访问AI API(如.env中配置的API)
- 访问SearXNG实例进行网络搜索
设置
- 安装依赖项:
npm install- 配置环境变量:
服务器使用现有 .env 包含以下变量的文件:
AI_BASE_URL=https://ai.echosphere.cfd/v1
AI_API_KEY=sk-HTUflue48uw14NGlRmEsPA
AI_MODEL=mistral-small-latest
SEARXNG_URL=https://search.echosphere.cfd- 构建服务器:
npm run build- 测试服务器:
npm run start可用工具
ai_search
通过查询优化和结果排名执行人工智能增强的网络搜索。
参数:
query(string,必填):要处理的搜索查询max_results(number,可选,默认值:5):返回的最大结果数focus_area(字符串,可选):帮助人工智能优化搜索的重点领域(例如,“技术”、“新闻”、“学术”)
示例响应:
{
"query": "best programming languages 2024",
"processed_by_ai": true,
"total_results": 5,
"results": [
{
"rank": 1,
"title": "Top Programming Languages in 2024: Developer Survey Results",
"url": "https://example.com/programming-languages-2024",
"snippet": "According to the latest developer surveys, Python, JavaScript, and TypeScript lead the rankings...",
"relevance_score": 95
}
]
}ai_search_status
检查人工智能和搜索服务的运行状态。
示例响应:
{
"ai_service": {
"status": "operational",
"model": "mistral-small-latest",
"base_url": "https://ai.echosphere.cfd/v1"
},
"search_service": {
"status": "operational",
"search_url": "https://search.echosphere.cfd",
"engines_available": 12
},
"overall_status": "operational",
"timestamp": "2024-01-15T10:30:00.000Z"
}可用资源
ai-search://info
提供有关AI搜索功能和配置的信息。
与Claude Desktop集成
将以下内容添加到您的Claude Desktop配置文件中:
视窗: %APPDATA%\Claude\claude_desktop_config.json macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"ai-search": {
"command": "node",
"args": ["C:/path/to/your/search-mcp/dist/index.js"],
"env": {
"AI_BASE_URL": "https://ai.echosphere.cfd/v1",
"AI_API_KEY": "sk-HTUflue48uw14NGlRmEsPA",
"AI_MODEL": "mistral-small-latest",
"SEARXNG_URL": "https://search.echosphere.cfd"
}
}
}
}特性
查询优化
- 内部AI优化搜索查询以获得更好的结果
- 从单个用户查询创建多个目标搜索查询
- 考虑重点领域以定制搜索
结果分析
- AI分析搜索结果的相关性和质量
- 为每个结果分配相关性分数(0-100)
- 过滤掉低质量或无关的结果
- 删除重复或接近重复的结果
多引擎支持
- 通过SearXNG支持多个搜索引擎
- 实施回退策略以提高可靠性
- 指数回退自动重试
错误处理
- 优雅的错误处理,信息丰富
- 服务状态监控
- 服务不可用时自动回退
发展
项目结构
src/
├── index.ts # Main MCP server
├── ai-service.ts # AI processing logic
└── search-service.ts # Web search integration脚本
npm run build-构建TypeScript项目npm run watch-观察变化并重建npm run start-启动服务器npm run dev-在一个命令中构建和启动
调试
通过运行服务器并检查stderr输出来启用详细日志记录:
npm run start 2> debug.log服务器记录以下详细信息:
- 查询处理步骤
- AI API调用和响应
- 搜索操作和结果
- 错误条件和恢复尝试
故障排除
常见问题
- AI API连接问题
- 验证 AI_BASE_URL 和 AI_API_KEY 是正确的 - 检查AI服务是否可访问 - 跑 ai_search_status 检查连接的工具
- 搜索服务问题
- 验证 SEARXNG_URL 可访问 - 检查SearXNG实例是否正在运行并正确配置 - 某些SearXNG实例可能需要特定的标头或身份验证
- 没有搜索结果
- 人工智能将通过简化查询自动重试 - 检查搜索词是否过于具体或包含拼写错误 - 验证SearXNG实例是否配置了可用的搜索引擎
- 性能问题
- 人工智能处理和搜索操作可能需要10-30秒 - 考虑减少 max_results 以获得更快的响应 - 监控人工智能和搜索服务的API速率限制
环境变量
确保设置了所有必需的环境变量:
AI_BASE_URL:AI API的基本URLAI_API_KEY:用于身份验证的API密钥AI_MODEL:要使用的AI模型(例如,“mistral small latest”)SEARXNG_URL:您的SearXNG实例的URL
许可证
MIT许可证-可以根据需要自由修改和分发。
