EcuDataMCP について
EcuDataMCPは、AIアシスタント、研究者、ジャーナリスト、開発者向けにエクアドルの公共データをまとめます。政府カタログ、統計、行政手続き、公共調達などの公式情報を探索でき、対応する公開情報源は通常APIキーなしで利用できます。
主な機能
- 01エクアドルの公共データを横断検索
- 02政府カタログと行政手続きの探索
- 03CSV、JSON、GeoJSON、Excelデータのプレビュー
- 04全件ダウンロードなしでCKAN DataStoreを照会
- 05公式統計・金融データソースへの接続
活用シーン
- 01健康や教育分野の公式データセットを探す
- 02調査や報道で公開データをプレビューする
- 03行政手続きや要件を確認する
- 04複数のエクアドル機関の情報をまとめる
MCP 対応
MCPクライアントに、エクアドルの公共データソースを検索、探索、プレビュー、照会するツールを提供します。stdioとStreamable HTTPに対応しています。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
EcuDataMCP
サイト:https://dweskz.github.io/EcuDataMCP/
エクアドルの公開データのためのオープンなインフラストラクチャです。 EcuDataMCP は、共通のインターフェースを通じて、AI アシスタント、研究者、ジャーナリスト、ソフトウェアをエクアドルの公式データに接続します。
Model Context Protocol(MCP)を使用することで、Claude、ChatGPT、Gemini、Cursor などの互換性のあるクライアントが、会話またはソフトウェアを通じてデータを検索、探索、分析できます。
政府のポータルを手作業で閲覧する代わりに、次のような質問をするだけです。
- 「SRI には税収に関するどのようなデータがありますか?」
- 「INEC の医療データセットを表示してください」
- 「パスポートを取得するための要件は何ですか?」
- 「航空輸送データのプレビューを見せてください」
注意: 一部のツールの定義、パラメーター、説明は AI によって生成または補助されており、不完全であったり、古くなっていたり、基盤となるエンドポイントのすべてのケースに対応していない場合があります。ツールが部分的な結果を返したり、有効なパラメーターを拒否したり、公式ソースの変更時に予期しない動作をしたりすることがあります。 回答は必ずリンク先のソースと照合し、重要な判断に使用する前に結果を手動で確認してください。
プロジェクトのドキュメント
- docs/ROADMAP.md — 統合済みのデータソースと、未対応の項目。
- docs/RESEARCH.md — ロードマップの各項目の根拠: ライブ環境で検証した調査結果、調査したドメイン、行き詰まった箇所。
- CHANGELOG.md — 最近公開された内容。
メリット
- 公開データにすぐアクセス:自然言語で質問し、ポータルを閲覧したり、ファイルをダウンロードしたり、形式に悩まされたりすることなく、エクアドルの国の機関のデータを探索できます。
- 複数のデータソースを一か所に集約:オープンデータ、行政手続き、規制、公共調達、リスク、統計データなど、さまざまな公式データソースに、AI とのひとつの会話からアクセスできます。
- ダウンロードなしでデータをプレビュー:
preview_resource_dataは CSV/TSV、JSON/GeoJSON、Excel(XLS/XLSX)、一部の圧縮ファイルをメモリ内で解析します。query_resource_dataはファイル全体をダウンロードせずに CKAN DataStore をクエリします。 - 手間いらず:対応する公開データソースの利用に API キーや特別な権限は必要ありません。
- あらゆる MCP クライアントに対応:Claude、ChatGPT、Codex、Gemini、Cursor、VS Code、Windsurf、Le Chat、HuggingChat など。
- 本番環境に対応:Docker、ヘルスチェック、構造化ログ、MCP 対応の HTTP Streamable サーバーを備えています。
ユースケース
市民向け
- gob.ec を閲覧せずに、あらゆる政府手続きの要件、費用、手順を確認できます。
- テーマ(医療、教育、安全、経済)から公開データを探し、各機関が公開している情報を把握できます。
ジャーナリストおよび研究者向け
- Claude または ChatGPT から、全国カタログのデータセットを探索し、データを直接プレビューできます。
- 複数の機関(SRI、INEC、BCE、各省庁)の情報をひとつの会話で照合できます。
- 腐敗防止、予算、公共支出の執行に関するデータにすばやくアクセスできます。
開発者向け
- 標準の MCP プロトコルを通じて、エクアドルのオープンデータをアプリケーションに統合できます。
- スクレイピングやファイル解析のコードを書かずに、ダッシュボードや探索的分析を試作できます。
- エクアドルに関するコンテキストを必要とする AI エージェントのデータバックエンドとして使用できます。
公共部門向け
- 各機関がすでに公開しているデータを、よりアクセスしやすく、見つけやすくできます。
- 実際の最新データを使って、機関のチャットボットが質問に回答できるようにします。
- オープンデータを AI ツールに直接接続することで、その価値を示せます。
データソース
この MCP は、政府のデータソースを単一のサーバーに統合します。
| データソース | データ |
|---|---|
| Datos Abiertos y Cuenca en Datos(CKAN) | カタログ、DataStore、公開ファイル |
| SRI | 統計データセット、税収、RUC |
| Gob.ec | 手続き、機関、規制 |
| SERCOP/OCDS | 公共調達 |
| SGR e IG-EPN | リスク事象、津波、地震 |
| INEC | ANDA、Ecuador en Cifras、国勢調査、統計リソース |
| BCE | BCEData、IEM、その他の公開経済指標 |
| Superintendencia de Compañías | ディレクトリ、監査人、財務データ |
| Geografía INEC/DPA | 州、カントン、教区 |
対応する公開データソースは API キー不要です。
チャットボットを MCP サーバーに接続する
Claude Desktop
最も簡単な方法では、サーバーを起動する必要はありません。Claude Desktop は
uv を使って PyPI パッケージを実行します。次の内容を設定ファイル(macOS では ~/Library/Application Support/Claude/claude_desktop_config.json、
Windows では %APPDATA%\Claude\claude_desktop_config.json)に追加します。
{
"mcpServers": {
"ecuador-datos": {
"command": "uvx",
"args": ["ecuador-mcp", "--transport", "stdio"]
}
}
}
各
リリース
に添付されている .mcpb ファイルを Claude Desktop の拡張機能としてインストールすることもできます。すでに HTTP サーバーを実行している場合(ローカルで実行するを参照)、"command": "npx" と
"args": ["mcp-remote", "http://localhost:8000/mcp"] を使用してください。
Cursor
- Cursor の設定を開きます
- 「MCP」を検索します
- 新しい MCP サーバーを追加します:
{
"mcpServers": {
"ecuador-datos": {
"url": "http://localhost:8000/mcp",
"transport": "http"
}
}
}
VS Code
コマンドパレットから MCP: Open User Configuration を実行し、mcp.json ファイルに追加します。
{
"servers": {
"ecuador-datos": {
"url": "http://localhost:8000/mcp",
"type": "http"
}
}
}
ChatGPT
有料プラン(Plus、Pro、Team、Enterprise)で利用できます。
Settings>Apps and connectorsに移動しますAdvanced settingsを開き、Developer mode を有効にしますSettings>Connectors>Browse connectorsで、Add a new connector をクリックします- URL を設定します:
http://localhost:8000/mcp
Claude Code
claude mcp add --transport http ecuador-datos http://localhost:8000/mcp
Codex
codex mcp add ecuador-datos --url http://localhost:8000/mcp
これにより、~/.codex/config.toml に url を含む [mcp_servers.ecuador-datos] ブロックが保存されます。HTTP ではなく stdio でサーバーを使用するには:
codex mcp add ecuador-datos -- uvx ecuador-mcp --transport stdio
Gemini CLI
~/.gemini/settings.json に追加します:
{
"mcpServers": {
"ecuador-datos": {
"httpUrl": "http://localhost:8000/mcp"
}
}
}
Le Chat(Mistral)
Intelligence>Connectorsに移動しますAdd connector>Custom MCP Connectorを選択します- 名前:「Ecuador Datos」/URL:
http://localhost:8000/mcp
Windsurf
~/.codeium/windsurf/mcp_config.json に追加します:
{
"mcpServers": {
"ecuador-datos": {
"command": "npx",
"args": ["-y", "mcp-remote", "http://localhost:8000/mcp"]
}
}
}
HuggingChat
- チャットで
+アイコン >MCP Servers>Manage MCP Serversをクリックします - 名前を「Ecuador Datos」、URL を
http://localhost:8000/mcpにしてAdd Serverを選択します
ローカルで実行する
uvx を使用する(PyPI から)
uvx ecuador-mcp --transport stdio
search_ranking/get_financials は、Supercías のローカル SQLite データベースを使用します。このデータベースは、最初に必要とするクエリが実行されるとバックグラウンドで自動的に構築されます(約 356 MB をダウンロードし、5~10 分かかります。そのクエリでは再試行が求められます)。PyPI からインストールした場合、ユーザーデータディレクトリに保存されます(Windows では %LOCALAPPDATA%\ecuador-mcp、macOS では ~/Library/Application Support/ecuador-mcp、
Linux では ~/.local/share/ecuador-mcp)。ECUADOR_MCP_DATA_DIR で保存先を変更できます。
Docker を使用(推奨)
イメージは、Docker 上の通常の MCP サーバーと同様に stdio で起動します。
docker build -t ecuador-mcp https://github.com/DweskZ/EcuDataMCP.git
docker run -i --rm ecuador-mcp
HTTP サーバーの場合、docker compose は MCP_TRANSPORT=http を設定し、
認証(MCP_REQUIRE_AUTH=1)を必須にします。MCP_AUTH_TOKEN がないと
プロセスはエラーで停止し、コンテナが再起動を繰り返します。起動前に、
環境変数または .env でトークンを定義してください。
git clone https://github.com/DweskZ/EcuDataMCP.git
cd EcuDataMCP
# Opción A: token en el entorno (puerto 8000)
MCP_AUTH_TOKEN="$(openssl rand -hex 32)" docker compose up -d
# Opción B: token en .env (docker compose lo lee solo)
cp .env.example .env # edita MCP_AUTH_TOKEN=... y MCP_REQUIRE_AUTH=1
docker compose up -d
# Con variables personalizadas
MCP_AUTH_TOKEN=... MCP_PORT=8007 LOG_LEVEL=DEBUG docker compose up -d
# Detener
docker compose down
クライアントは POST /mcp に Authorization: Bearer <token> として
トークンを送信します。変数の一覧と HTTPS プロキシ背後へのデプロイについては
docs/DEPLOYMENT.md をご覧ください。
手動インストール
Python 3.11+ と uv が必要です。
git clone https://github.com/DweskZ/EcuDataMCP.git
cd EcuDataMCP
# Instalar dependencias
uv sync
# Copiar variables de entorno
cp .env.example .env
# Iniciar el servidor
uv run main.py
環境変数(よく使われるものです。tools プロファイル、並行実行数、 地理的プロキシ、各データソースのベース URL を含む完全な一覧は、 docs/DEPLOYMENT.md § Variables de entorno をご覧ください):
| 変数 | 説明 | デフォルト |
|---|---|---|
MCP_HOST | バインドアドレス | 127.0.0.1 |
MCP_PORT | サーバーポート | 8000 |
MCP_TRANSPORT | トランスポート:http または stdio | http |
LOG_LEVEL | ログレベル(DEBUG、INFO、WARNING、ERROR) | INFO |
MCP_AUTH_TOKEN | /mcp 用の任意の Bearer トークン | 空 |
MCP_REQUIRE_AUTH | トークンなしのリモート起動を拒否 | 0 |
MCP_RATE_LIMIT_REQUESTS / MCP_RATE_LIMIT_WINDOW_SECONDS | クライアント/IP ごとの上限 | 120 / 60 |
MCP_SSL_CERTFILE / MCP_SSL_KEYFILE | TLS 直接接続用の証明書とキー | 空 |
ECUADOR_MCP_USAGE_LOG | 1 の場合、各呼び出し(ツール、結果、所要時間。引数は記録しません)をデータディレクトリの usage.jsonl に保存します。scripts/usage_report.py で集計できます | 空 |
ECUADOR_MCP_DATA_DIR | Supercías データベースと BCE スナップショットの保存先 | クローンの場合は data/、PyPI からインストールした場合はユーザーデータディレクトリ |
stdio トランスポートをローカルで実行するには:
uv run python main.py --transport stdio
各ツールの詳細なリファレンスは docs/TOOLS.md にあります。 BCEData/IEM エージェント向けの JSON 契約は docs/RESPONSE_CONTRACT.md にあります。
エンドポイント
| エンドポイント | 説明 |
|---|---|
POST /mcp | JSON-RPC メッセージ(クライアント → サーバー) |
GET /health | ヘルスチェック:{"status":"ok","uptime_since":"...","version":"..."} |
GET /usage | 起動以降のツールごとの呼び出し数、エラー数、p50/p95 レイテンシ |
MCP_AUTH_TOKEN が定義されている場合、POST /mcp には
Authorization: Bearer <token> ヘッダーが必要です。リモート環境にデプロイする場合は、
MCP_REQUIRE_AUTH=1、HTTPS、および独自の IP ごとの上限を設定したプロキシも
使用してください。/health と /usage は認証なしで引き続き利用できます
(引数やユーザーデータは公開しません)。
リモート環境へのデプロイについては docs/DEPLOYMENT.md をご覧ください。
使用例
SRI データを検索する
「SRI には徴収に関するどのようなデータがありますか?」
MCP が SRI の公開データを検索し、タイトル、説明、リンクとともに結果を表示します。
医療データを表示する
「病院データのプレビューを表示してください」
MCP が互換性のあるファイルをダウンロードし、最初の数行を整形済みの表として表示します。
手続きを調べる
「RUC を取得するための要件は何ですか?」
MCP が gob.ec ポータルを検索し、要件、手順、費用を提示します。
カテゴリーから探す
「利用できるデータカテゴリーは何ですか?」
MCP が利用可能なテーマ別カテゴリーを一覧表示します。
アーキテクチャ
Cliente MCP (Claude, ChatGPT, Cursor, etc.)
│
▼ POST /mcp
┌──────────────────────────────┐
│ MCPServer (main.py) │
├──────────────────────────────┤
│ tools/ │
│ ├── search_ecuador │ → CKAN + gob.ec (unificado)
│ ├── search_datasets │
│ ├── query_resource_data │ → CKAN DataStore
│ ├── preview_resource_data │ → CSV / JSON / XLS / XLSX
│ ├── get_category_info │ → helpers/ckan_client.py
│ ├── search_tramites │
│ ├── get_institucion_info │ → helpers/gobec_client.py
│ └── ... │
└──────────────────────────────┘
ライセンス
MIT License — 詳細は LICENSE をご覧ください。
貢献
貢献を歓迎します。共同作業の手順については CONTRIBUTING.md をご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。