Files
market/skills/baidu-poi-search/SKILL.md
Yige 8f7953948f fix: 补齐市场静态事实并保持旧客户端兼容 (#184)
## 中文

补齐已有 owner 与已锁定上游内容可证明的许可证、技能类型和收录版本。保留 Anthropic Source Available
和其他附加条件,不把所有内容统一标为 MIT,不提升 listing-only 的安装准入。

README 保留最新的双语结构及以 manifest 为准的数量口径,增加静态目录不存访问量、下载量、评分或 Stars 的边界。

发布兼容性:**本 PR 不包含**两支团队新增的本地化字段,也不包含微信支付 `latestVersion:
1.0`;旧客户端会拒绝这些新字段,另以待发布 PR 保留,等匹配客户端发布后再合并。

验证:47 项目录校验测试、19 项 i18n 测试、5 项合集生成测试通过;完整目录/i18n/翻译新鲜度检查通过,6
个固定来源合集的生成检查通过,2 个浮动来源按既有规则明确跳过。发现并修复了生成器在 Windows 使用反斜杠造成的误报:输出改为 POSIX
路径,比较规则不放宽、不重写合集数据。

## English

Fill only license, type and listed-release facts supported by existing
owners or pinned upstream content. Preserve custom license restrictions
and acquisition eligibility. Keep the current bilingual README and
manifest-derived inventory; do not author usage analytics.

This PR deliberately excludes localized team fields and the two-part
WeChat Pay version that older clients reject. Those changes remain
pending a compatible client release.

Validation passes: 47 catalog-validator tests, 19 i18n tests, five
collection-generator tests, complete catalog and translation checks, and
generated inventory checks for six pinned collections. Two mutable
sources remain explicitly skipped. Fix Windows-generated path separators
without weakening comparison or changing declared children.
2026-09-22 01:09:03 +08:00

6.0 KiB

license, name, description, version, type, risk_level, status, tags, metadata, market
license name description version type risk_level status tags metadata market
MIT baidu-poi-search 百度地图企业 POI 搜索——输入企业名称,返回 POI 名称/地址/经纬度/分支机构。Use when 用户提到"查企业地址"、"查公司位置"、"POI搜索"、"企业地图"、"经纬度"、"查分支机构"、"百度地图"、"企业网点"、"周边企业"。 1.0.0 procedural low enabled
due-diligence
baidu-map
poi
geolocation
author updated_at i18n
desirecore 2026-09-03
default_locale source_locale locales zh-CN en-US
en-US zh-CN
zh-CN
en-US
name short_desc description body source_hash translated_by
百度地图POI搜索 输入企业名称,返回 POI 名称/地址/经纬度/分支机构 百度地图企业 POI 搜索——输入企业名称,返回 POI 名称/地址/经纬度/分支机构。Use when 用户提到"查企业地址"、"查公司位置"、"POI搜索"、"企业地图"、"经纬度"、"查分支机构"、"百度地图"、"企业网点"、"周边企业"。 ./SKILL.zh-CN.md sha256:24e98eab4d4e0f04 human
name short_desc description body source_hash translated_by
Baidu Map POI Search Enterprise POI lookup by company name — name, address, coordinates, branches Baidu Map enterprise POI search — input a company name and return POI name, address, latitude/longitude, and branch listings. Use when the user asks to look up a company address, location, POI, enterprise map, coordinates, branches, or nearby companies. ./SKILL.md sha256:24e98eab4d4e0f04 human
icon category maintainer compatible_agents channel required_client_version
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><path d="M12 21c4.97-4.36 7.5-8.1 7.5-11.5a7.5 7.5 0 1 0-15 0C4.5 12.9 7.03 16.64 12 21Z" stroke="#007AFF" stroke-width="1.6" stroke-linejoin="round"/><circle cx="12" cy="9.5" r="2.6" stroke="#34C759" stroke-width="1.6"/></svg> data
name verified
DesireCore Official true
latest 10.0.115

Baidu Map POI Search

L0: One-Sentence Summary

Input a company name, call the Baidu Map Place Search API, and return normalized POI data (name / address / coordinates / province & city).

L1: Overview

  • Data source: Baidu Map Open Platform Place Search API v2
  • Auth: AK (free quota for individual developers)
  • Invocation: HTTP GET (curl / HttpRequest tool)
  • Prerequisites: no browser, no extra dependencies — pure REST API

Credential Setup

This skill requires a Baidu Map AK (access key):

  1. Register a developer account at the Baidu Map Open Platform
  2. Console → App Management → Create an app (enable the "Place Search" service; choose the empty-whitelist 0.0.0.0/0 AK type)
  3. Export the AK as the environment variable BAIDU_MAP_AK, or replace the {BAIDU_MAP_AK} placeholder in the commands below

If the local DesireCore service catalog already registers the Baidu Map service (endpoint https://api.map.baidu.com), prefer calling it through the catalog so credentials are managed centrally.

L2: Procedure

1. Build the request

curl -s --max-time 15 --ssl-no-revoke \
  "https://api.map.baidu.com/place/v2/search?query={company-name-URL-encoded}&region={city-or-nationwide}&output=json&page_size=20&ak=${BAIDU_MAP_AK}"

Parameters:

Param Value Notes
query Company name (URL-encoded) e.g. 华为技术有限公司 → %E5%8D%8E%E4%B8%BA%E6%8A%80%E6%9C%AF%E6%9C%89%E9%99%90%E5%85%AC%E5%8F%B8
region City name or 全国 (nationwide) Scope; use nationwide when unsure
output json Fixed
page_size 20 Max 20 per page
ak {BAIDU_MAP_AK} Baidu Map AK (free for individual developers)

2. Interpret the response

  • status == 0: success, extract results[]
  • status != 0: failure, check message (101 = AK missing, 200 = AK disabled, 302 = quota exceeded)

3. Normalized mapping

Map each entry in results[] to:

{
  "source": "baidu-poi",
  "company_name": "{user input}",
  "poi_name": "{result.name}",
  "address": "{result.address}",
  "latitude": "{result.location.lat}",
  "longitude": "{result.location.lng}",
  "province": "{result.province}",
  "city": "{result.city}"
}

4. Homonym filtering (due-diligence scenario)

POI results may contain same-name noise (e.g. "南岗华为公司" is not "华为技术有限公司"). Filtering suggestion:

  • Exact match: result.name equals the full company name → match=exact
  • Partial match: result.name contains the full name or its short name → match=partial
  • Otherwise → match=related, listed separately in due-diligence reports

5. Output format

{
  "query_status": "success",
  "source": "baidu-poi",
  "total": 5,
  "results": [
    { "poi_name": "华为技术有限公司", "address": "广东省深圳市龙岗区...", "latitude": "22.656137", "longitude": "114.066131", "match": "exact" }
  ],
  "timestamp": "2026-08-31T21:00:00+08:00"
}

Known Limitations

  • Free quota: QPS (~3/s) and daily caps (~100 place-search calls/day) for individual developers, per console quota management
  • POI ≠ registered business address: results are map annotations and may differ from the registered address (note the distinction in due diligence)
  • Homonyms: short names of famous companies hit many non-target POIs — prefer the full company name

Troubleshooting

Code Meaning Fix
0 Success —
101 AK param missing Check the ak parameter
200 AK disabled Check app status in the Baidu console
201 AK/SN check failed This recipe uses an empty-whitelist 0.0.0.0/0 AK; no SN needed
302 Quota exceeded Wait for the daily reset or upgrade the quota
240 API service invalid The AK has not enabled "Place Search" — fix the app in the console