mcpField
I
imagedata

imagedata

本地服务
github.com/CloudCorpRecords搜索与检索02 天前更新

关于 imagedata

imagedata 是连接 HasData Google Images 搜索服务的本地桥接程序,供需要结构化图片结果的客户端使用。支持筛选条件、地区设置和分页。

主要功能

  1. 01获取 Google Images 搜索结果
  2. 02按尺寸、颜色和类型筛选
  3. 03设置 SafeSearch 和地区
  4. 04选择设备类型并分页
  5. 05返回图片链接、缩略图和尺寸

适用场景

  1. 01查找符合关键词的图片
  2. 02按尺寸或类型缩小结果范围
  3. 03获取特定地区的搜索结果
  4. 04查看图片来源页面和尺寸

MCP 相关

向 MCP 客户端提供上游 Google Images 搜索工具,并将调用转发至 HasData,原样返回结果。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"cloudcorprecords-imagedata": {
"command": "npx",
"args": [
"-y",
"@reneturcios/imagedata"
]
}
}
}
启动命令npx -y @reneturcios/imagedata

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@reneturcios/imagedata0.1.0
ocighcr.io/cloudcorprecords/imagedata:0.1.0

工具

1

收录的工具列表 · 更新于 2 天前

参数类型必填说明
qstring是用于检索图片结果的搜索词。
glstring否要将搜索范围限制到的国家/地区的两字母国家代码。请提供一个精确的已记录值(共支持 245 个),例如 `ac`、`af`。
hlstring否要用于搜索的两位语言代码。请提供一个准确的文档所列值(共允许 159 个),例如 `af`、`ak`。
ijnnumber否分页结果的页码,0 表示第一页。
tbsstring否Google Images API 的 `tbs` 参数可通过逗号组合各种筛选条件,自定义图片搜索结果。可用选项如下: 图片尺寸筛选条件: - `isz:l` - 搜索大尺寸图片。 - `isz:m` - 搜索中尺寸图片。 - `isz:i` - 搜索图标尺寸的图片。 - `isz:lt,islt:qsvga` - 筛选大于 400×300 的图片。 - `isz:lt,islt:vga` - 筛选大于 640×480 的图片。 - `isz:lt,islt:svga` - 筛选大于 800×600 的图片。 - `isz:lt,islt:xga` - 筛选大于 1024×768 的图片。 - `isz:lt,islt:2mp` - 筛选大于 1600×1200 的图片。 - `isz:lt,islt:4mp` - 筛选大于 2272×1704 的图片。 - `isz:ex,iszw:1000,iszh:1000` - 搜索尺寸恰好为 1000×1000 的图片。 颜色筛选条件: - `ic:color` - 搜索全彩图片。 - `ic:gray` - 搜索黑白图片。 - `ic:specific,isc:red`(以及橙色、黄色、绿色等其他颜色)- 搜索以指定颜色为主的图片。 图片类型筛选条件: - `itp:face` - 搜索人脸图片。 - `itp:photo` - 搜索照片。 - `itp:clipart` - 搜索剪贴画图片。 - `itp:lineart` - 搜索线描图片。 - `itp:animated` - 搜索动画图片(GIF)。
safeenum否成人内容过滤选项。active | off
uulestring否编码后的地点参数。
domainstring否要使用的 Google 域名。默认值为 google.com。请提供一个精确的已记录值(共支持 195 个),例如 `google.ac`、`google.ad`。
filternumber否定义是否启用“相似结果”和“省略的结果”筛选条件。设为 1(默认值)可启用这些筛选条件,设为 0 可禁用。
locationstring否Google 标准地点,用于搜索。
deviceTypeenum否指定搜索使用的设备类型。desktop | mobile | tablet

详细介绍

imagedata

imagedata 是一个小型本地桥接服务,连接托管的 HasData Google Images MCP 服务,该服务以 JSON 格式返回 Google Images 搜索结果。提供查询词后,它会获取该查询的图片结果:每张图片的标题、 图片所在页面、图片直链、缩略图、尺寸、来源名称以及在结果中的 位置。可以使用 tbs 筛选字符串(图片尺寸、主色调以及人脸、照片、剪贴画、线稿 或动画等图片类型)、安全搜索、相似结果/省略结果 筛选开关、Google 域名、国家和语言 代码、规范化或编码后的位置、设备类型以及基于页码的分页来调整搜索。

该桥接服务本身不存储任何结果。它会在本地提供上游服务的工具列表, 内容与从实时端点捕获的完全一致,并将每次 工具调用转发到上游,原样返回结果。 捕获到的接口仅包含一个只读查询: 没有写入、消息传递或支付工具。

工具

  • hasdata_google_images_images_getImageSearchResults — 获取一页 Google Images 搜索结果。必填参数: q(搜索词)。可选参数:location(Google 规范化位置)、uule(编码后的位置 参数)、domain(要使用的 Google 域名, 例如 google.com)、gl(两个字母的国家代码)、 hl(两个字母的语言代码)、tbs(筛选字符串, 可组合尺寸筛选条件,例如 isz:l、颜色筛选条件,例如 ic:color,以及类型筛选条件,例如 itp:photo)、safe(active / off)、 filter(1 或 0:相似结果/省略结果筛选)、deviceType(desktop / mobile / tablet),以及 ijn(页码,0 表示第一页)。返回每张图片的标题、来源页面 URL、图片直链、 缩略图、尺寸、来源名称和 位置。

配置

  • HASDATA_GOOGLE_IMAGES_MCP_URL(可选)— 覆盖 上游端点。默认值为 https://mcp.hasdata.com/mcp?apis=google_images。 (此覆盖钩子是本次重建自行标注的内容。)
  • HASDATA_API_KEY(可选)— 设置后,每个上游请求都会携带 x-api-key: <key> 标头,使用调用者自己的 HasData API 密钥。未设置时,不会发送密钥标头。(标头名称 和环境变量名称由原始项目的注册表记录确定;从此环境 变量转发密钥是本次重建自行标注的内容——原始接口是在不带密钥的情况下捕获的。)
转发机制

首次调用工具时,客户端会与上游建立可流式传输的 HTTP 会话:发送 JSON-RPC initialize 请求(protocolVersion 2025-03-26, clientInfo 名称为 imagedata),然后发送 notifications/initialized 通知,最后发送携带调用者参数且未作任何更改的 tools/call 请求。上游在 initialize 响应中返回 Mcp-Session-Id 标头时,该值会随会话的每个后续请求发送;会话会在 进程运行期间重复使用。响应可能以普通 JSON 或服务器发送事件的形式返回;两种格式都会读取。

成功的上游结果会原样传递,包括上游设置的任何 isError 标志。 失败情况——JSON-RPC 错误、非 2xx 状态、无法读取的响应或 无法完成的请求——都会作为 isError 结果返回,且文本以 imagedata error: 开头(此错误呈现方式是本次重建自行标注的内容)。

命令行

该工具也可作为子命令使用,接收一个 JSON 参数字符串:

npx @reneturcios/imagedata hasdata_google_images_images_getImageSearchResults '{"q":"golden retriever puppies","tbs":"isz:l,ic:color,itp:photo","safe":"active"}'
npx @reneturcios/imagedata --version

退出码:成功时为 0,结果为 isError 时为 1,用法错误时为 2。

MCP 服务

npx -y @reneturcios/imagedata mcp

MCP 客户端配置:

{
  "mcpServers": {
    "imagedata": {
      "command": "npx",
      "args": ["-y", "@reneturcios/imagedata", "mcp"]
    }
  }
}

Docker

docker run -i ghcr.io/cloudcorprecords/imagedata
docker run --rm ghcr.io/cloudcorprecords/imagedata --version

容器的默认命令是 mcp,因此第一种形式会启动 stdio MCP 服务;其他参数则按常规方式传递给命令行工具。

开发

npm install
npm run build
npm test
npm run dev

测试套件完全针对桩接的 JSON-RPC 上游运行,不会进行实时网络调用。

许可证

MIT — 参见 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。