项目简介
本项目是一个基于 Model Context Protocol (MCP) 的服务器实现,旨在为大型语言模型 (LLM) 提供强大的互联网信息获取能力。它集成了 Google Custom Search API 和网页内容分析功能,使 LLM 能够通过调用工具的方式,便捷地进行网络搜索并理解网页内容。
主要功能点
- Google 搜索: 通过关键词向 Google 发起搜索请求,并返回结构化的搜索结果,包括网页标题、链接和摘要。
- 网页内容分析: 自动抓取并分析指定网页的内容,提取出文章的主体内容,并将其转换为易于 LLM 理解和处理的 Markdown 格式。支持批量分析多个网页。
- MCP 协议兼容: 遵循 MCP 协议标准,可以与任何兼容 MCP 协议的 LLM 客户端进行无缝集成。
安装步骤
- 克隆仓库:将 GitHub 仓库 'mixelpixx_GoogleSearch_McpServer' 克隆到本地。
- 安装 Node.js 依赖:在仓库根目录下,打开终端并运行 'npm install'。
- 安装 Python 依赖:在仓库根目录下,打开终端并运行 'pip install flask google-api-python-client flask-cors'。
- 配置 Google API 密钥:
- 前往 Google Cloud Console 创建或选择一个项目。
- 启用 Custom Search API。
- 创建 API 密钥。
- 前往 Custom Search Engine 创建自定义搜索引擎并获取 Search Engine ID。
- 在仓库根目录下创建 'api-keys.json' 文件,并填入你的 API 密钥和 Search Engine ID,例如:
{ "api_key": "YOUR_GOOGLE_API_KEY", "search_engine_id": "YOUR_CUSTOM_SEARCH_ENGINE_ID" }
服务器配置
为了让 MCP 客户端能够连接到此服务器,您需要在客户端的 MCP 设置文件中添加以下服务器配置。以 'cline_mcp_settings.json' 为例(通常位于 '%APPDATA%/Code/User/globalStorage/saoudrizwan.claude-dev/settings/' 或 '~/.config/Code/User/globalStorage/saoudrizwan.claude-dev/settings/'):
{ "mcpServers": { "google-search": { "command": "npm", "args": ["run", "start:all"], "cwd": "/path/to/mixelpixx_GoogleSearch_McpServer" // 将 "/path/to/mixelpixx_GoogleSearch_McpServer" 替换为您的仓库本地路径 } } }
配置参数说明:
- server name: 'google-search' (服务器名称,客户端用此名称引用)
- command: 'npm' (启动服务器的命令,这里使用 npm)
- args: '["run", "start:all"]' (传递给 'command' 的参数,'npm run start:all' 命令会同时启动 TypeScript 和 Python 服务器)
- cwd: '/path/to/mixelpixx_GoogleSearch_McpServer' (服务器的工作目录,请务必替换为实际的仓库本地路径)
基本使用方法
-
启动服务器:在仓库根目录下,打开终端并运行 'npm run start:all'。这将同时启动 TypeScript MCP 服务器和 Python Flask 服务器。
-
在 MCP 客户端中使用工具:服务器启动后,在兼容 MCP 协议的 LLM 客户端中,您可以使用以下工具:
- 'search': 进行 Google 搜索。
- 'analyze_webpage': 分析单个网页内容。
- 'batch_analyze_webpages': 批量分析多个网页内容。
工具的具体使用方法和参数定义请参考仓库 'README.md' 文件中 "Available Tools" 部分的详细说明。
信息
分类
网页与API