谷歌图片搜索MCP
基于Python的MCP(模型上下文协议)服务器,提供使用Google图像搜索搜索、下载和分析图像的工具。
特性
- 使用Google Image Search API搜索图像
- 将图像下载到本地存储
- 根据自定义条件分析图像搜索结果
- 计算图像的相关性得分
- 根据图像质量和相关性提供建议
安装
- 克隆存储库
- 安装 紫外线 _(如果需要,只需一次)_
- 创建虚拟环境: _(仅一次)_
uv venv- 激活虚拟环境:
Linux/macOS:
source .venv/bin/activate窗户:
.venv\Scripts\activate- 安装依赖项:
Linux/macOS:
uv pip install -r requirements.txt窗户:
uv pip install -r requirements.txt- 创建一个
.env使用SerpAPI密钥的文件:
(在此处获取密钥:https://serpapi.com/dashboard)
SERP_API_KEY=your_api_key_here用法
您可以运行服务器:
uv run main.py或使用检查器测试MCP服务器:
npx @modelcontextprotocol/inspector uv run main.py运行服务器:
uv run main.py在VSCode中,将此MCP服务器配置添加到您的 mcp-servers.json 文件:
{
"servers": {
"search-images": {
"command": "uv",
"args": [
"--directory",
"C:\\Users\\YOURUSERNAME\\google-image-search-mcp-python",
"run",
"main.py"
]
}
}
}服务器提供以下工具:
search_images_tool:使用谷歌图片搜索搜索图片
- 参数: - query:查找图像的搜索查询 - limit:要返回的最大结果数(默认值:10)
download_image_tool:将图像下载到本地目录
- 参数: - image_url:要下载的图像的URL - output_path:应保存图像的目录路径 - filename:下载映像的文件名(包括扩展名)
analyze_images_tool:分析图像搜索结果以找到最相关的结果
- 参数: - search_results:要分析的图像搜索结果数组 - criteria:选择最佳图像的标准(例如,“专业”、“丰富多彩”等)
例子
提示:
使用你的搜索图片工具搜索5张关于“可爱的猫”的图片,分析它们并下载其中最好的3张。/gatitos/
代码
# Search for images
results = await search_images_tool("cute puppies", limit=5)
# Download an image
saved_path = await download_image_tool(
image_url="https://example.com/image.jpg",
output_path="./images",
filename="puppy.jpg"
)
# Analyze search results
analysis = await analyze_images_tool(
search_results=results,
criteria="high quality professional"
)错误处理
当出现问题时,这些工具会提供详细的错误消息。所有错误都会记录到stderr中,并以结构化格式返回,其中包含 isError 旗帜。
依赖项
- mcp服务器:用于mcp服务器功能
- python dotenv:用于环境变量管理
- aiohttp:用于异步HTTP请求
