关于 HasData Google Maps
HasData Google Maps 是托管式 MCP 服务,通过六个只读工具访问 Google Maps 地点、评价、照片、动态及贡献者历史。它返回结构化 JSON,搜索结果中的地点标识可用于后续查询。
主要功能
- 01搜索地点并返回地点标识
- 02获取地点详情与营业信息
- 03读取地点评价及主题统计
- 04查看贡献者的评价历史
- 05获取地点照片和商家动态
适用场景
- 01查找某区域的商家并比较评分
- 02查看地点详情、营业时间和服务
- 03分析评价内容及常见主题
- 04浏览贡献者评价历史或地点照片
MCP 相关
托管式远程 MCP 服务向客户端提供六个只读 Google Maps 工具,用于搜索地点及获取详情、评价、照片、动态和贡献者评价历史。服务还提供提示词和资源。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://mcp.hasdata.com/mcp?apis=google_mapsclaude mcp add --transport http com-hasdata-google-maps https://mcp.hasdata.com/mcp?apis=google_maps{"mcpServers":{"com-hasdata-google-maps":{"type":"http","url":"https://mcp.hasdata.com/mcp?apis=google_maps"}}}在 Cursor 中打开{"servers":{"com-hasdata-google-maps":{"type":"http","url":"https://mcp.hasdata.com/mcp?apis=google_maps"}}}在 VS Code 中打开{"mcpServers":{"com-hasdata-google-maps":{"type":"http","url":"https://mcp.hasdata.com/mcp?apis=google_maps"}}}{"mcpServers":{"com-hasdata-google-maps":{"serverUrl":"https://mcp.hasdata.com/mcp?apis=google_maps"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
https://mcp.hasdata.com/mcp?apis=google_maps需要授权工具
2| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pets | number | 否 | 宠物数量。 |
| neLat | number | 否 | 地图边界框东北角的纬度。提供全部四个边界框坐标后,将在框内搜索房源,而不是按位置搜索。 |
| neLng | number | 否 | 地图边界框东北角的经度。 |
| swLat | number | 否 | 地图边界框西南角的纬度。 |
| swLng | number | 否 | 地图边界框西南角的经度。 |
| adults | number | 否 | 成人数量。 |
| checkIn | string | 是 | 房源的入住日期。 |
| infants | number | 否 | 婴幼儿数量。 |
| checkOut | string | 否 | 房源的退房日期。 |
| children | number | 否 | 子女数量。 |
| location | string | 否 | 用于搜索房源的地点。除非提供完整地图边界框(neLat、neLng、swLat、swLng),否则必填。 |
| nextPageToken | string | 否 | 用于获取下一页结果的令牌。 |
详细介绍
Google Maps MCP Server
一个托管的模型上下文协议(MCP)服务,为 Claude、Cursor、Windsurf 及任何其他 MCP 客户端提供六种只读 Google Maps 工具。搜索地点、读取地点的完整信息、获取评论、照片和帖子,并浏览单个评论者的历史记录,所有内容均以结构化 JSON 格式返回,无需启用 Google Cloud 项目,也无需付费。
每月可免费获得 1,000 点额度,无需银行卡,按每次调用 10 点计算,可调用 100 次。
https://mcp.hasdata.com/mcp?apis=google_maps
目录
所需条件
一个支持可流式 HTTP 和自定义请求头的 MCP 客户端。一个 HasData API 密钥,可从控制面板获取,创建时免费且无需银行卡;免费额度按每次调用 10 点计算,约可支持每月 100 次调用。除此之外无需任何其他条件。这是一个远程服务,因此只需提供 URL 和请求头即可轻松使用,无需运行容器,也无需在整个流程中使用 Google Cloud 项目或 API 密钥。仅支持 stdio 的客户端可以改用 @hasdata/google-maps-mcp(npm)或 hasdata-google-maps-mcp(PyPI)启动器。
快速开始
| URL | https://mcp.hasdata.com/mcp?apis=google_maps |
| 传输方式 | HTTP,可流式传输 |
| 认证标头 | x-api-key: HASDATA_API_KEY |
所有客户端使用相同的服务 URL。我们已在 Claude Code 和 Claude Desktop 中亲自运行过。其他配置块则遵循各客户端为远程服务所记录的格式。
支持 OAuth 的客户端可以将相同的 URL 添加为连接器,并登录,而无需将密钥放入配置文件。
Claude Code
claude mcp add --transport http google-maps "https://mcp.hasdata.com/mcp?apis=google_maps" \
--header "x-api-key: HASDATA_API_KEY"
Claude Desktop
Claude Desktop 只能从配置文件加载本地(stdio)服务,因此需要通过 stdio 启动器访问远程服务。@hasdata/google-maps-mcp 包就是这个启动器,它会从环境变量读取密钥。
claude_desktop_config.json:
{
"mcpServers": {
"google-maps": {
"command": "npx",
"args": ["-y", "@hasdata/google-maps-mcp"],
"env": { "HASDATA_API_KEY": "YOUR_KEY" }
}
}
}
使用 Python 而不是 Node?将启动器替换为 PyPI 包即可,uvx 无需手动安装就能运行它:
{
"mcpServers": {
"google-maps": {
"command": "uvx",
"args": ["hasdata-google-maps-mcp"],
"env": { "HASDATA_API_KEY": "YOUR_KEY" }
}
}
}
支持 OAuth 的客户端也可以直接将 URL 添加为自定义连接器,跳过启动器。
Cursor
.cursor/mcp.json:
{
"mcpServers": {
"google-maps": {
"url": "https://mcp.hasdata.com/mcp?apis=google_maps",
"headers": { "x-api-key": "HASDATA_API_KEY" }
}
}
}
Windsurf
~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"google-maps": {
"serverUrl": "https://mcp.hasdata.com/mcp?apis=google_maps",
"headers": { "x-api-key": "HASDATA_API_KEY" }
}
}
}
Cline
{
"mcpServers": {
"google-maps": {
"url": "https://mcp.hasdata.com/mcp?apis=google_maps",
"type": "streamableHttp",
"headers": { "x-api-key": "HASDATA_API_KEY" },
"disabled": false
}
}
}
VS Code
.vscode/mcp.json:
{
"servers": {
"google-maps": {
"type": "http",
"url": "https://mcp.hasdata.com/mcp?apis=google_maps",
"headers": { "x-api-key": "HASDATA_API_KEY" }
}
}
}
Gemini CLI
~/.gemini/settings.json:
{
"mcpServers": {
"google-maps": {
"httpUrl": "https://mcp.hasdata.com/mcp?apis=google_maps",
"headers": { "x-api-key": "HASDATA_API_KEY" }
}
}
}
提示词示例
除非另有说明,每条提示词只需调用一次工具。
在 Google Maps 中搜索西雅图市中心附近的咖啡馆,列出排名前十的结果及其评分、评论数量和网站。
调用一次,10 个积分。搜索结果已附带地点的 placeId 和 dataId,下方的后续调用无需再查找。
获取
ChIJAb0KE0RrkFQRuI4X0By5Mcw的完整详情:营业时间、服务选项、价格等级和菜单链接。
调用一次,10 个积分。
查看该地点的最新评论,按时间从新到旧排序,并告诉我最常出现哪些话题。
调用一次,10 个积分。响应中包含 Google 自带的话题聚类及各自的提及次数,数据中也包含排名。
找出排名第一的评论作者,并列出他们评论过的所有其他地点,以及他们给出的评分。
调用一次,10 个积分。评论中包含作者的 contributorId,这正是贡献者工具所需的信息。
获取该地点的照片动态和商家近期发布的内容。
调用两次。照片和帖子每项各需 10 个积分。
有两点让这些调用链成本很低。搜索会在每个结果中返回 placeId 和 dataId,详情、评论、照片和帖子调用都无需单独执行解析步骤。此外,评论中包含作者的 contributorId,因此从“谁写了这条评论”到查看此人的全部历史只需调用一次。
工具
| 工具 | 返回内容 |
|---|---|
hasdata_google_maps_contributor_reviews_getMapReviews | 每条评价的评分、文本、日期、地点名称、地点地址、placeId、照片和商家回复。每次调用 10 个积分 |
hasdata_google_maps_photos_getMapPhotos | 每张照片的图片 URL、缩略图、上传日期、上传者和 photoId。每次调用 10 个积分 |
hasdata_google_maps_place_getPlaceDetails | 名称、地址、坐标、电话、网站、类别、营业时间、评分、评价数、价格等级、照片、热门时段、属性/设施、plus_code 和地图 URL。每次调用 10 个积分 |
hasdata_google_maps_posts_getMapPosts | 每条帖子的信息:标题、描述、图片、posted_at、链接和来源/商家名称。每次调用 10 个积分 |
hasdata_google_maps_reviews_getMapReviews | 每条评价的作者名称和个人资料链接、星级评分、文本、发布日期/相对日期、点赞数、商家回复、附加照片和本地向导标记。每次调用 10 个积分 |
hasdata_google_maps_search_performMapSearch | 本地结果列表,包含 placeId、名称、地址、坐标、评分、评价数、价格等级、类别、电话、网站、营业时间和缩略图。每次调用 10 个积分 |
这 6 个工具均为只读。下面的示例摘录自真实调用,示例中的数字会随着地点评价数的变化而变动。请将它们视为数据结构示例。每个工具名称都链接到对应的端点参考文档。
示例展示的是负载,而非完整响应。tools/call 结果包含一个文本块,该文本本身是一个包含 url、status、text 和 json 的 JSON 对象,抓取的数据位于 json 下。从原始 JSON-RPC 响应中,路径为 result.content[0].text,解析后再访问 .json。聊天客户端会为你解包,直接与端点交互的代码则不会。
其中 4 个工具支持通过 placeId 或 dataId 指定地点。搜索结果会同时返回这两个 ID。通常的流程是先搜索一次,然后调用详情、评价、照片或帖子工具,并重复使用保留的 ID。
搜索 Google 地图
hasdata_google_maps_search_performMapSearch
根据查询搜索地点,并按 Google 地图的排名方式排序。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
q | string | 是 | 自由文本查询,例如 coffee 或 plumber |
ll | string | 地图中心点和缩放级别,格式为 @lat,lng,zoomz,例如 @47.6062,-122.3321,14z。用此参数将搜索范围固定到某个地点 | |
gl / hl | string | 两位字母的国家和语言代码 | |
domain | string | 要查询的 Google 域名,例如 google.com | |
start | number | 分页结果偏移量,以 20 为步长。还必须设置 ll |
每条结果都包含 position、title、placeId、dataId、address、gpsCoordinates、rating、reviews、type、types、price、website、thumbnail、openState、workingHours、serviceOptions,以及 Google 提供时的 menu 链接。
地点信息应放在
ll中,而不是查询文本中。请在此设置地图中心点和缩放级别,因为仅查询“coffee”会返回 Google 判定你所在位置附近的结果。缩放级别的数字越大或越小,结果所覆盖的区域也会相应缩小或扩大。
{
"localResults": [
{
"position": 1,
"title": "Howdy Y'all Coffee (Central Library)",
"placeId": "ChIJAb0KE0RrkFQRuI4X0By5Mcw",
"dataId": "0x54906b44130abd01:0xcc31b91cd0178eb8",
"address": "1000 4th Ave Fl 3, Seattle, WA 98104",
"rating": 4.9,
"reviews": 117,
"type": "Coffee shop",
"website": "https://howdyyallcoffee.com/",
"workingHours": {
"timezone": "America/Los_Angeles",
"days": [ { "day": "Friday", "time": "10 AM–4 PM" } ]
}
}
]
}
获取地点详情
hasdata_google_maps_place_getPlaceDetails
通过 placeId 获取单个地点的完整信息。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
placeId | string | 是 | 搜索结果中的 placeId |
hl | string | 语言代码 | |
domain | string | Google 域名 |
返回单个 placeResults 对象,包含搜索结果的所有字段,另外还有一个 images 数组。无需运行不必要的搜索,即可获取某个地点的完整记录。
获取地点评价
hasdata_google_maps_reviews_getMapReviews
按页获取地点的评价动态。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
placeId | string | 地点。必须提供 placeId 或 dataId | |
dataId | string | 使用 dataId 指定地点 | |
sortBy | string | 默认为 mostRelevant,还可选 newestFirst、ratingHigh 和 ratingLow | |
topicId | string | 按主题筛选,使用 topics 数组中的 id | |
hl | string | 语言代码 | |
nextPageToken | string | 上一响应中的 pagination.nextPageToken |
返回 placeInfo、topics 数组、reviews 数组和 pagination。每条评价都包含 reviewId、rating、snippet、date、isoDate、link、images、一个 user 对象,以及在店主回复的情况下提供的 response。
topics是 Google 对评价内容的聚类结果,每个主题都包含keyword和mentions计数;主题及其计数已预先汇总,无需逐条阅读评价。将主题的id作为topicId传入,即可只读取提及该主题的评价。
每条评价的
user都包含contributorId。这是贡献者工具所需的输入,因此只需一次调用,就能从“谁写了这条评价”进一步了解“这个人写过的所有内容”。
{
"placeInfo": { "title": "Howdy Y'all Coffee (Central Library)", "rating": 4.9, "reviews": 117 },
"topics": [
{ "keyword": "earl grey matcha", "mentions": 26, "id": "bew1w_KAk5U" },
{ "keyword": "friendly baristas", "mentions": 17, "id": "FOw-91tYieQ" }
],
"reviews": [
{
"reviewId": "…",
"rating": 5,
"snippet": "…",
"isoDate": "2026-07-06T19:49:00.657Z",
"user": { "name": "Angela Li", "contributorId": "106033685843245983748" },
"response": { "isoDate": "2026-07-07T04:44:34.000Z", "snippet": "Thank you!! 🥺☺️" }
}
],
"pagination": { "nextPageToken": "…" }
}
获取贡献者的评价
hasdata_google_maps_contributor_reviews_getMapReviews
获取某人写过的所有评价,涵盖其评价过的所有地点。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
contributorId | string | 是 | 评价的 user 对象中的 contributorId |
num | number | 返回的评价数量 | |
gl / hl | string | 国家和语言代码 | |
nextPageToken | string | 上一响应中的令牌 |
返回一个 contributor 对象,其中包含 name、level、points 和 contributions 细目,以及一个 reviews 数组。数组中的每条记录都包含自己的 placeInfo,因此无需二次查询即可查看每条评价对应的地点。仅凭评价动态无法完成的评价者可信度分析和评价网络研究,都可以借助此工具开展。它会读取某人的公开评价历史,因此请在遵守 Google 条款及适用法律的前提下使用结果。
获取地点照片
hasdata_google_maps_photos_getMapPhotos
获取地点的照片动态。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
placeId | string | 地点。必须提供 placeId 或 dataId | |
dataId | string | 使用 dataId 指定地点 | |
categoryId | string | 按类别筛选,使用 categories 数组中的 id | |
hl | string | 语言代码 | |
nextPageToken | string | 上一响应中的令牌 |
返回一个 categories 数组(包含 All、Latest、Videos、Menu 及地点专属类别)、一个 photos 数组(每项都包含 image 和 thumbnail URL),以及 pagination。
获取地点帖子
hasdata_google_maps_posts_getMapPosts
商家在其 Google 商家资料中发布的帖子和动态。
| 参数 | 类型 | 必填 | 备注 |
|---|---|---|---|
placeId | 字符串 | 地点。必须提供 placeId 或 dataId | |
dataId | 字符串 | 以 dataId 的形式指定地点 | |
hl | 字符串 | 语言代码 |
返回一个 posts 数组。此工具不支持分页。评论和照片会使用 nextPageToken,但此工具不会;它会返回商家资料中显示的内容。
大多数地点都没有发布帖子,因此
posts数组为空是常见情况。请先查看数组长度,再判断是否有帖子。
提示词和资源
该服务提供 2 个提示词,客户端可以直接提供这些现成的工作流,无需让用户自行编写工具调用。
| 提示词 | 功能 |
|---|---|
google_maps_search | 在 Google Maps 上查找商家和地点。 |
google_maps_reviews | 总结评论者对某个地点的评价。 |
此外,该服务还提供 4 个资源,每个资源对应一个取值范围固定的参数。读取资源比从被拒绝的调用中摸索参数取值更省事,而且不消耗额度。每个 URI 的格式为 hasdata://google_maps/<parameter>。
| 参数 | 取值数量 | 用途 |
|---|---|---|
hl | 159 | 指定搜索所用语言的双字母语言代码。 |
gl | 245 | 指定要限定搜索范围的国家/地区的双字母代码。 |
domain | 195 | 要使用的 Google 域名。默认值为 google.com。 |
sortBy | 4 | 用于对结果进行排序和细化的参数。 |
这两个列表均无需 API 密钥即可获取,因此客户端可以在用户注册前读取。
错误和失败情况
调用工具时,客户端几乎不会收到 HTTP 错误代码。MCP 层会返回 200,并将失败信息放在结果中,设置 isError 为 true,并以文本形式说明原因。Agent 会读取错误消息,而不是看到预期的状态行。
密钥错误会显示为工具输出,而不是连接失败。 列出工具时,任何非空密钥都会被接受,客户端也能完成握手并显示绿色状态。但第一次调用工具时会返回 isError: true,文本为 HasData API error: 401 Unauthorized。请留意这段文本,因为流程中此前不会报告此问题。
唯一真正的 HTTP 错误是缺少密钥。授权检查会在调用任何工具前运行,连接本身会以 401 失败。
不符合架构的参数会在发出请求前被拒绝。 搜索时未提供 q,会返回 isError: true,文本为 MCP error -32602: Input validation error,并指出缺少的字段。不会获取任何数据,也不会产生费用。
调用评论、照片或帖子工具时必须提供地点。 这三个工具都需要 placeId 或 dataId;两者都未提供时,会返回 422,并指出这两个字段,因为此要求是有条件的,架构无法用普通的必填列表表示。请提供其中一个。
无法解析的地点 ID 会返回明确错误,而不是空数据。 返回内容会设置 isError: true,并显示 HasData API error: 400 Bad Request,同时将 requestMetadata.status 设为 error。请检查该标记,而不是数组长度。
空的 posts 也是真实数据。 大多数商家资料都没有帖子,因此调用会成功,status 为 ok,并返回空数组。这表示该地点确实没有发布任何内容。
返回数据的结果还会包含一个值得在联系客服时引用的 requestMetadata.id,以及指向该次调用所存储工件的 html 和 json 链接。
定价、免费额度和限制
搜索、地点详情、评价、贡献者评价和照片每次成功调用需要 10 个额度。帖子需要 10 个额度。响应大小不会改变价格。获取一整页评价与获取只有一条评价的页面价格相同。
免费额度为每月 1,000 个额度,无需信用卡,按每次 10 个额度计算,可调用 100 次。额度会随计费周期续订,因此低调用量的 Agent 可以无限期使用免费额度。
付费方案起价为每月 $59,包含 200,000 个额度,按每次 5 个额度计算可调用 40,000 次。用量越大,每个额度的价格越低,当前价格请见定价页面。
你的方案还决定了并发数。免费额度允许同时发送 1 个请求,Startup 为 5 个,Basic 为 15 个,Growth 各档为 50 到 500 个。并发数是唯一的限流机制。没有单独的每分钟请求数上限,免费额度也不会因此或以其他方式受到降速或削减。在无人值守的程序中,请妥善处理超出并发限制的情况,因为 Agent 一旦同时查询多个地点,就会先触及上限。
每次翻页都需要一次调用。评价每页约 10 条,因此获取 100 条评价大约需要调用 10 次、消耗 100 个额度;照片每页 20 张。免费额度足以满足很长一段时间的使用需求。
工具选择
?apis=google_maps 恰好会开放以下六个工具。该参数接受一个列表,?apis=google_maps,google_serp 则会在地图工具之外添加 Google 搜索。移除该参数即可获取 HasData 开放的所有工具,目前共有 57 个。
通常,精简的工具列表是更好的默认选择。模型在六个工具中进行选择,比在五十七个工具中选择更容易选对,而且每轮对话中工具描述本身也会占用上下文。
对比
几乎所有其他 Google Maps MCP 服务都封装了官方 Google Maps Platform,这才是真正需要权衡的选择。
这类服务使用你自己的 Google Cloud 凭据调用 Places、Routes 和 Geocoding API。要运行其中一个,你需要创建 Google Cloud 项目、使用信用卡启用计费、开启各个 API,并管理 API 密钥及其配额。若你需要路线规划、地理编码和地址验证,这类服务才是合适的工具;本服务不提供这些功能。
本服务会读取 Google Maps 向访客展示的内容,并解析后返回。你无需创建 Google Cloud 项目、启用计费,也无需管理各个 API 的配额。此外,它还能获取 Places API 不提供的数据:完整的评价流,而非少量固定样本;单个评价者的完整历史记录;照片流;以及商家的帖子。
| 官方 Platform 封装服务 | 本服务 | |
|---|---|---|
| 需要进行的设置 | Google Cloud 项目、计费、各 API 的密钥和配额 | 只需设置一次 API 密钥 |
| 路线规划、地理编码、地址验证 | 支持 | 不提供 |
| 评价 | 每个地点提供少量固定样本 | 分页获取评价流,并提供主题聚类 |
| 评价者的历史记录 | 不支持 | 支持,按 contributorId 查询 |
| 照片和帖子 | 有限 | 照片流和商家的帖子 |
| 输出 | 符合 Platform 架构的 JSON | 从访客可见内容中解析出的 JSON |
| 费用 | 按 Google 的每次调用价格计费 | 每次调用 10 个额度,帖子调用 10 个额度 |
决定取舍的关键在于两行。如果你需要路线指引,或将地址转换为坐标,本服务无法帮你,而 Platform 可以。如果你需要查看前几条之外的评价,或了解评价者在所有评分地点的身份,Platform 无法帮你,而本服务可以。
本服务不提供的功能。 不支持路线规划、地理编码、地址验证、距离矩阵,也不提供任何写入功能。它只读取地图。
常见问题
什么是 Google Maps MCP 服务?
一种将 Google Maps 数据作为工具提供给 AI 客户端调用的服务。客户端通过 Model Context Protocol 发送工具调用,服务获取数据并返回结构化 JSON,模型处理结果,无需查看 HTML 页面。此服务提供六种只读工具,并在远程运行。客户端连接到一个 URL,无需启动本地进程。
有官方的 Google Maps MCP 服务吗?
Google 没有发布通用型服务。Google Maps Platform 是一组付费 API,需要使用你自己的 Cloud 项目调用;还有多个社区 MCP 服务对其进行了封装。此服务是托管式替代方案,无需 Cloud 项目。
我需要 Google Cloud 项目或 Maps API 密钥吗?
不需要。唯一需要的凭证是你的 HasData 密钥。无需创建 Google Cloud 项目、启用结算,也无需管理每个 API 的配额。
placeId 和 dataId 有什么区别?
它们是 Google 用于标识同一地点的两个 ID。搜索会在每条结果中返回这两个 ID,详情、评论、照片和帖子工具都接受其中任一个。保留搜索结果中的任意一个,之后重复使用即可。
如何获取所有评论,而不仅是第一页?
读取每个响应中的 pagination.nextPageToken,并将其作为 nextPageToken 传回,直到不再返回该令牌。每页需要调用一次。
我需要托管或运行任何东西吗?
不需要。这是一个基于 streamable HTTP 的远程 MCP 服务。无需安装任何东西,无需 Python 环境,也无需重启进程。
数据是实时的还是缓存的?
是实时数据。每次调用都会在请求时获取数据,并附带自己的 requestMetadata.id。两个相同的调用会分别获取数据,不会重放已存储的副本。
一个服务可以用于多个 Google 服务吗?
可以。apis 参数接受一个列表,?apis=google_maps,google_serp 可让你的 Agent 一次获得地图工具和 Google 搜索工具。
API 密钥会过期吗?
不会。密钥不会过期。需要时可在控制面板中轮换密钥。
该服务与 Google 有关联吗?
没有。HasData 是一项独立服务,与 Google 无关联、未获其认可,也未受其赞助。Google 和 Google Maps 是其各自所有者的商标。工具仅使用公开数据,你有责任确保根据 Google 的条款和适用法律使用结果。
HasData 链接
| 产品页面 | 搜索、评论、照片 和 帖子 |
| 服务文档 | MCP 服务文档 |
| 一个服务中的全部 57 个工具 | HasData/hasdata-mcp |
| 客户端指南 | MCP 客户端与集成 |
| 我们解析的其他平台 | 另外 53 个抓取 API |
| 套餐与积分费用 | 套餐与积分费用 |
| 密钥与用量 | HasData 控制面板 |
| npm 上的 Node 启动器 | @hasdata/google-maps-mcp |
| PyPI 上的 Python 启动器 | hasdata-google-maps-mcp |
开发
此代码库包含远程服务的配置和文档,不需要构建,也没有需要容器化的内容。
它确实包含一项契约测试。README 承诺提供六个带特定参数的工具,而上游工具列表可能在没有任何提交的情况下发生变化,从而让这个文件悄悄地误导你。该测试会验证这一承诺,并在 CI 中每周以及每次推送时运行。
HASDATA_API_KEY=your_key_here npm test
在 PowerShell 中:
$env:HASDATA_API_KEY = "your_key_here"; npm test
最后一项检查会发起实际调用并花费 10 个积分,这是可能因合理原因失败的金丝雀检查所需的成本。使用任何非空密钥都能成功列出工具;如果测试只列出工具,那么即使密钥已被撤销,测试也会通过。
贡献
修正工具表格和响应示例是最有价值的贡献,因为这些内容最容易过时。请附上你发出的调用和收到的响应。来自分支的拉取请求会在不使用密钥的情况下运行测试套件,实时检查则会跳过,而不会报错。
许可证
MIT。请参阅 LICENSE。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。