Public Data Catalog

io.github.yhay81由 GitHub 帳號 yhay81 發布v0.4.0更新於 Oct 24, 2026

Reviewed public-data search and execution with provenance and verifiable integrity receipts.

已驗證Streamable HTTP可網頁執行網頁搜尋與抓取資料與分析

概覽

AI 產生的概覽

檢索日本 e-Gov 資料入口與統計儀表板的公開統計中繼資料,執行白名單唯讀取數配方,並驗證完整性回執。

可以做什麼
  • 檢索日本官方公開資料中繼資料,回傳含發布機關、格式、涵蓋範圍、使用條款與官方連結的排序候選
  • 執行一筆白名單內、有界線的 HTTPS GET 配方,回傳擷取值、來源與完整性回執
  • 對照已審核目錄驗證回執與結果雜湊,以偵測後續變更
  • 在回傳值時一併提供出處、授權、單位、代碼與取得日期
適用情境
適合讓助理判斷哪個日本官方資料集能回答人口、失業率之類的問題,或取回一筆事先審核過的小數值並附上來源與授權。它不是通用網頁或 SQL 工具。
執行需求
遠端 Streamable HTTP 端點;未宣告驗證、API 金鑰或環境變數。也可在本機執行,需 Node.js 24 以上版本;獨立的 Python 配方工具需 Python 3.11 以上版本。需要連線至公開資料來源的網路。
安裝前請注意
搜尋結果僅為候選,使用前應在官方頁面確認期間、內容與使用條款。數值可能在資料來源端被修訂;驗證只能偵測後續變更,無法證明發布者真實性或資料新鮮度。公開可取得不等於可無條件再利用,託管服務不保證可用性。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Public Data Catalog,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/io.github.yhay81%2Fpublic-data-catalog/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "public-data-catalog": {
      "type": "http",
      "url": "https://public-data-catalog-mcp.yusuke8h.workers.dev/mcp"
    }
  }
}

README

PDC — 公的データセット検索

English

[CI] [Recipe probes] [License: MIT]

知りたいことから日本の公的データを探し、何が分かるか・誰が提供しているか・どの形式で使えるか・利用条件は何かを分かりやすく比べるサービスです。

公開サービス: PDC — 公的データセット検索 · ブランドガイド

e-Govデータポータルと統計ダッシュボードの公式メタデータをその場で検索し、タイトル一致、説明、形式、利用しやすさから候補を整理します。「観光客数」から「延べ宿泊者数」を探すように、一般的な言葉を公式統計の用語へ読み替えた検索にも対応します。データを複製して検索しているわけではありません。

通常のWebサービスが主役です。ブラウザから無料・登録不要で検索でき、同じ検索をMCPから自動化することもできます。既存の検証済み取得レシピと実行レシートは互換機能として残しています。

ブラウザで調べる

pdc.yhay81.com を開き、「都道府県別の人口推移」「消費者物価指数」「空き家」のように入力します。検索結果には次の情報が表示されます。

  • このデータで分かること
  • 提供している省庁・統計調査
  • 対象期間、地域、単位
  • CSV、Excel、JSON、PDFなどの形式
  • 公式の詳細ページ、元データ、利用条件
  • なぜ候補になったか

JSONで組み込む場合は GET /api/search?q=人口 を利用できます。検索結果は候補であり、利用前に公式ページで対象期間・内容・利用条件を確認してください。

まず1分で試す

依存パッケージは不要です。Python 3.11以上で実行できます。

sh
git clone --depth 1 https://github.com/yhay81/public-data-catalog.gitcd public-data-catalogpython3 scripts/recipe_tool.py run tokyo-population-2023 --format text

2026年7月24日の検証では、統計ダッシュボードから次のような短い結果を取得します。

text
質問: 2023年の東京都の総人口は何人か。結果:- 総人口: 14086000 人- 地域コード: 13000- 時間コード: 2023CY00- 速報・確報コード: 0...情報源: statistics-dashboard-api出典表記: 出典:統計ダッシュボード(https://dashboard.e-stat.go.jp/)ライセンス: https://dashboard.e-stat.go.jp/static/terms

値は公式ソース側で改訂される可能性があります。実行結果には、取得日時、実際のリクエストURL、解釈上の注意、出典、ライセンスも含まれます。

AIエージェントから使う

公開MCPサーバーは、現在標準のStreamable HTTPで接続できます。

sh
# Codexcodex mcp add public-data-catalog \  --url https://pdc.yhay81.com/mcp
# Claude Codeclaude mcp add --transport http public-data-catalog \  https://pdc.yhay81.com/mcp

公開するツールは、e-Govと統計ダッシュボードを検索する search_data、従来のレビュー済み契約を実行する execute、実行レシートの整合性を確認する verify の3つです。任意URL、任意SQL、任意コードは実行しません。Cloudflare Workers上の参照サービスなので可用性保証はありません。

クライアント別接続ガイドには、画面からの設定、1分確認、切断、トラブルシューティングまでをまとめています。ローカルMCPとして使う場合はNode.js 24以上で npm ci && npm run mcp を実行します。実装と接続境界は アーキテクチャ、実証済み範囲は 互換性マトリクス、MCP Registry用の機械可読情報は server.json にあります。

使い方

sh
# 利用できる質問を見るpython3 scripts/recipe_tool.py list
# AIや別ツールから読めるJSON一覧python3 scripts/recipe_tool.py list --json
# 1つのレシピを実行するpython3 scripts/recipe_tool.py run japan-unemployment-rate-2023
# 検証済み範囲内で年を指定するpython3 scripts/recipe_tool.py run tokyo-population-by-year --param year=2025
# 人が読みやすい短い形式python3 scripts/recipe_tool.py run japan-unemployment-rate-2023 --format text
# 全レシピの応答契約を確認するpython3 scripts/recipe_tool.py check
# 保存したJSON結果の整合性を確認するpython3 scripts/recipe_tool.py verify result.json

run の既定出力は、AIや後続処理で扱える完全なJSONです。成功結果には応答と抽出結果のSHA-256を束ねた整合性確認用の実行レシートが付きます。--format text は値・解釈・出典・ライセンスを人が素早く確認するための表示です。

検証済みレシピ

ID質問情報源認証
tokyo-population-by-year2015–2025年から指定した年の東京都の総人口は何人か統計ダッシュボード不要
tokyo-population-20232023年の東京都の総人口は何人か統計ダッシュボード不要
japan-unemployment-rate-20232023年の日本の完全失業率は何%か統計ダッシュボード不要
egov-population-dataset-searche-Govで人口データセットと取得先を特定できるかe-Govデータポータル不要
world-bank-japan-population-2023世界銀行による2023年の日本の総人口は何人かWorld Bank不要
usgs-noto-earthquake-2024USGSは能登半島地震をどう記録しているかUSGS不要

レシピの構造と安全上の制約は docs/recipe-format.md、現在の検証状況は docs/status.md にあります。初見での再現性を検証する場合は 外部実行テスト手順 を使い、テスト結果フォーム から成功も失敗も共有してください。AIエージェントを評価する場合は、全6レシピを網羅した 9つの評価シナリオ と採点器を利用できます。

情報源プロファイル

公開検索の保守対象は statistics-dashboard-api と egov-data-portal の2件です。以下のうち、それ以外は過去の検証資産として paused にしており、現在のWeb検索には使用しません。

ID分野地域認証主な形式
estat-api日本の公的統計日本要登録・アプリIDJSON / XML / CSV
statistics-dashboard-api日本の主要統計日本・世界不要JSON / JSON-stat / XML / CSV
open-meteo天気・気候世界不要(無料枠)JSON / CSV / XLSX
world-bank-indicators開発・経済統計世界不要JSON / XML
gbif-api生物多様性・出現記録世界多くの検索は不要JSON
us-census-api人口・経済・住宅統計米国任意のAPIキーJSON
openalex-api学術文献・研究者・機関世界APIキー(無料)JSON
egov-data-portal日本政府オープンデータ日本カタログAPIは原則不要JSON / CSV / XML
usgs-earthquake-api地震・災害観測世界不要GeoJSON / CSV / XML
overpass-api地理空間・地図要素世界不要(共有インスタンス)JSON / XML / CSV
copernicus-climate-data-store気候再解析・環境世界登録・APIトークンGRIB / NetCDF / CSV / Zarr
europe-pmc-api生命科学文献・注釈世界不要JSON / XML
open-food-facts-api食品・栄養・成分世界読み取りは不要JSON / CSV / JSONL

catalog.json が情報源プロファイルの正本で、構造は catalog.schema.json で定義しています。レシピは recipes/ の各JSONファイルが正本です。エージェントや静的配布向けの統合バンドル generated/catalog.bundle.json と、標準カタログ連携向けの DCAT 3 JSON-LD はそこから決定的に生成します。

設計原則

  • 問いから始める — 分野の穴埋めだけを理由に情報源を増やしません。
  • 最小取得 — 大量データをミラーせず、問いに必要な範囲だけを取得します。
  • 根拠を残す — 値と一緒に、出典、ライセンス、単位、コード、確認日を返します。
  • 失敗を検出する — HTTP 200だけでなく、主要フィールドと識別子まで確認します。
  • 安全に限定する — 初期レシピはHTTPSのGET、明示的なホスト、最大1 MBに制限します。

「公開されている」と「無条件に再利用できる」は同じではありません。データセット単位・レコード単位の条件、出典表示、商用利用制限、APIのレート制限を必ず確認してください。

検証

依存パッケージなしで、カタログとレシピの構造、URL、ID、列挙値、出典の対応、秘密情報らしきクエリパラメータを検査できます。

sh
python3 scripts/validate_catalog.pypython3 scripts/evaluate_agent_traces.py --check-setpython3 -m unittest discover -s tests -vpython3 scripts/recipe_tool.py checknpm cinpm run artifacts:checknpm run typechecknpm test

通常のプルリクエストでは構造と単体テストだけを実行し、外部APIへのprobeは週次および手動実行に分けています。

貢献

新しい情報源の名前ではなく、「再現可能にしたい具体的な問い」をIssueまたはプルリクエストで提案してください。

  1. CONTRIBUTING.md と レシピ仕様 を読む
  2. 公式ドキュメントと利用条件を確認する
  3. 1つの問いに対する、小さく読み取り専用のレシピを追加する
  4. ローカル検証と対象レシピのprobeを実行する
  5. 結果、根拠、注意点をプルリクエストに残す

目的と非目標は PURPOSE.md、競合との役割分担と採用戦略は docs/strategy.md、今後のゲートは docs/roadmap.md にあります。利用上の質問や問題の報告先は SUPPORT.md を参照してください。

ライセンス

このリポジトリの構造化メタデータと文書はMIT Licenseで提供します。カタログに登録された各サービス・データの利用条件は、各項目の license と公式ソースに従ってください。

來源:README.md,提交 77a8975

工具

3

search_data

Search Japanese public datasets

Search current metadata from e-Gov Data Portal and Statistics Dashboard, then return a short ranked list with publisher, formats, coverage, usage terms, and official links.

輸入參數kindlimitquery必填

execute

Execute a reviewed retrieval contract

Run one allowlisted, bounded HTTPS GET contract and return extracted values, provenance, and an integrity receipt.

輸入參數recipeId必填parameters

verify

Verify an execution receipt

Check receipt and result hashes plus the execution envelope against the reviewed catalog. This detects later modification; it does not prove publisher authenticity or current freshness.

輸入參數execution必填

版本歷史

1
  1. v0.4.0最新Sep 16, 2026

評分

已滿足適用檢查項的 100%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分