Token导航 LogoToken导航TokenDH.com
psgc MCP logo
运维云端stdio官方级别未说明来源级核验

psgc MCP

MCP Server

wrangler

一个提供菲律宾标准地理编码(PSGC)数据的Model Context Protocol服务器,基于Cloudflare Workers构建,支持地理实体查询、层级检索和人口统计等功能。

工具数

7

提示词数

0

GitHub Stars

0

资源数

0
TypeScript云端部署Docker

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

GodModeArch

提供方

GodModeArch

最后核验

2026/5/17 20:20

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx wrangler kv namespace create PSGC_KV

详细介绍

PSGC MCP服务器

](https://www.npmjs.com/package/@aaronzara/psgc-mcp) Cloudflare Workers TypeScript License: MIT

A. 模型上下文协议 向LLM提供菲律宾标准地理代码(PSGC)数据的服务器。基于Cloudflare Workers和KV存储构建。

公共、只读、无需身份验证。数据直接来源于 菲律宾统计局 巴黎圣日耳曼俱乐部季刊。在Cloudflare KV中缓存,以实现可靠性和低延迟全局访问。

工具

工具说明
lookup通过其10位PSGC代码获取地理实体
search使用可选级别过滤器和严格模式按名称搜索实体
get_hierarchy获取完整的行政链(从镇到地区)
list_children列出父实体的直接子实体
list_by_type列出给定地理级别的所有实体
batch_lookup在一次调用中查找多个实体(最多50个代码)
query_by_population通过排序和过滤按人口范围查询实体

地理级别

级别描述计数
Reg地区18
Prov82
Dist地区(仅NCR)4
City城市149
Mun市政府1493年
SubMun副市(仅马尼拉)16
SGU特殊地理单位(BARMM)~8
Bgy巴兰盖~42000

响应格式

所有数据响应都封装在一个标准信封中:

{
  "_meta": {
    "dataset_version": "PSGC Q4 2025",
    "dataset_date": "2025-12-31",
    "last_synced": "2026-03-02",
    "source": "Philippine Statistics Authority (PSA)",
    "source_url": "https://psa.gov.ph/classification/psgc/"
  },
  "data": { ... }
}

错误响应(isError: true)信息性消息(例如“未找到子消息”)以纯文本形式返回,不进行包装。

实体架构

返回的实体对象 lookup, get_hierarchy, list_children, list_by_type, batch_lookup,以及 query_by_population 使用snake_case字段名:

字段类型描述
psgc_codestring10位PSGC代码
namestring官方地名
levelstring地理级别(Reg、Prov、Dist、City、Mun、SubMun、SGU、Bgy)
old_name`string \null`以前的名称(如果重命名)
city_class`string \null`城市分类:HUC、ICC、CC或空
income_class`string \null`收入分类(第1至第6类)
urban_rural`string \null`城市/农村分类(仅适用于镇)
population`number \null`2024年人口普查人口统计
parent_code`string \null`母公司PSGC代码

所有字段始终存在。没有数据的字段是 null,从未遗漏。

搜索结果

search 工具返回一个较轻的结果对象:

字段类型描述
psgc_codestring10位PSGC代码
namestring官方地名
levelstring地理级别

严格搜索

search 工具接受可选 strict 布尔参数。当 strict: true,仅返回精确的名称匹配(规范化后)。部分匹配和子字符串匹配被排除在外。当您知道确切的地名并希望避免模糊的结果时,这很有用。

批量查找

batch_lookup 该工具接受1-50个PSGC代码的数组,并以与输入相同的顺序返回结果。未找到代码返回 null 在他们的位置。

字段类型描述
results`(Entity \null)[]`按输入顺序排列的实体, null 未找到
foundnumber已解决的代码计数
not_foundnumber返回null的代码计数
totalnumber请求的代码总数

按人口查询

query_by_population 该工具按总体排序,查找总体范围内的实体。适用于“第三区最大城市”或“5万人以下城市”等问题

参数类型必填说明
levelstring要查询的地理级别
parent_codestringBgy only作用域结果指向父实体(前缀匹配)。村庄需要。
min_populationnumber最低人口(含)
max_populationnumber最大人口(含)
sort`asc \desc`排序顺序(默认: desc)
limitnumber最大结果,1-100(默认值:10)

响应包括 results (实体数组), total_matching (限额前总计),以及 returned (返回实际计数)。包含空填充的实体被排除在外。

连接

添加到MCP客户端配置中:

{
  "mcpServers": {
    "psgc": {
      "url": "https://psgc.godmode.ph/mcp"
    }
  }
}

快速测试

curl -X POST https://psgc.godmode.ph/mcp \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/call",
    "params": {
      "name": "search",
      "arguments": { "query": "Carmona", "level": "Mun" }
    }
  }'

PSGC代码格式

PSGC代码是10位数字,没有空格。这些片段编码了整个地理层次结构:

1 4 0 2 1 0 0 0 0 0
│ │ └─┬─┘ └─┬─┘ └─┬─┘
│ │   │     │     └── Barangay (last 3 digits)
│ │   │     └──────── Municipality/City (3 digits)
│ │   └────────────── Province (2 digits)
│ └────────────────── Island Group modifier
└──────────────────── Region (1 digit)

前导零很重要-- 01402100000014021000000 是不同的代码。始终使用完整的10位字符串。

已知的边缘情况:

  • NCR使用 区域 而不是省份(Dist 水平)
  • 哥打巴托市在行政上位于巴尔姆姆,但在地理上位于第十二区——它似乎位于 Prov 代码 124700000 (北马京达瑙)
  • BARMM特殊地理单位(SGU)不遵循标准层次结构,也没有省父级

数据源

来源年份描述
PSA PSGC出版物2025年第四季度(2026年1月13日)地理代码、名称、级别、分类
2024年人口普查第973号公告每个实体的人口数量
PSA PSGC旧地名栏2025年第四季度历史/以前的地名
PSA PSGC城市/农村专栏2025年第四季度Barangay城市/农村分类

最后同步时间:2026年3月2日。

重大更改(v1.1.0+)

  • 所有数据响应现在都被包裹在 { _meta, data }消费者必须打开包装 data 从回应中。
  • 实体字段名称更改为snake_case: code 现在是 psgc_code, parent 现在是 parent_code, cityClass 现在是 city_class等等。
  • 搜索结果使用 psgc_code 而不是 code.
  • 所有实体字段始终存在。以前的可选字段现在显示为 null 而不是省略。
  • 内部字段 regionCodeprovinceCode 不再暴露在API响应中。

相关项目

菲律宾公共数据MCP服务器套件的一部分:

  • PSGC-MCP (此回购)
  • ts MCP -DHSUD销售许可证验证
  • PH假期MCP ->即将推出
  • BSP银行目录MCP ->即将推出

所有服务器都是免费的、公共的、只读的。数据来自菲律宾政府官方消息来源。

贡献和问题

发现数据错误或边缘情况未得到处理?打开一个问题。上面的怪癖部分涵盖了最常见的怪癖,但PSGC数据在几十年的LGU重新分类中积累了不一致之处,问题列表是跟踪它们的最佳位置。

PSA每季度发布更新。如果数据看起来过时,打开一个问题,它将在下一次计划同步之前刷新。

数据管道

PSGC数据从PSA的Excel出版物中解析并存储在Cloudflare KV中。要更新:

1.下载PSGC Excel文件

从获取最新出版物 PSA-PSGC 然后把它放进去 scripts/data/.

2.差异(可选)

npm run diff-psgc -- "scripts/data/Q3 2025/PSGC-3Q-2025-Publication-Datafile.xlsx" "scripts/data/PSGC-4Q-2025-Publication-Datafile (1).xlsx"

比较两个季度Excel文件,并报告添加、删除、名称更改和字段更改。在完整解析之前运行此程序以验证PSA的更改日志。

3.解析

npm run parse-psgc

读取Excel文件,导出父关系,并将分块的JSON文件写入 scripts/data/output/.

4.上传到KV

npm run upload-kv

通过wrangler批量上传所有JSON块到Cloudflare KV。

5.部署

npm run deploy

发展

npm install
npm run dev

开发服务器启动时间 http://localhost:8787。将您的MCP客户端连接到 http://localhost:8787/mcp.

设置

在首次部署之前,创建KV命名空间:

npx wrangler kv namespace create PSGC_KV

更新 wrangler.jsonc 使用返回的命名空间ID。

建造于

亚伦·扎拉 -CTO分数 Godmode数码

以前建造 任。PH,一个程序化的房地产平台,拥有60000多个结构化的地理页面,覆盖菲律宾的每个乡镇、城市和省份。PSGC MCP的出现是因为AI代理需要可靠、可查询的PH地理数据,但找不到任何合适的数据。

对于企业SLA、自定义集成或其他PH数据源: → godmode.ph

许可证

麻省理工学院

目录标签

目录标签

TypeScript云端部署Docker地理编码服务本地部署数据API行政区划数据菲律宾地理信息低延迟查询

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

部署方式(deploymentType,部署类型)

remote-capable

来源包(packageName,安装包名)

wrangler

工具数量(toolCount,工具数)

7

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiononeremote-capable

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP