socrata-mcp
Socrata MCPサーバー
ClaudeがSocrataオープンデータポータルを探索・クエリするためのツールを提供するMCPサーバーです。
ツール
ツール | 説明 |
| キーワードでデータセットを検索(オプションで特定のポータルドメインに限定可能) |
| データセットの列定義とメタデータを取得 |
| SoQLのWHERE / SELECT / ORDERを使用して行をクエリ |
| count/sum/avgなどを使用したGROUP BY集計 |
| 特定のポータルのデータセットカテゴリを一覧表示 |
Related MCP server: mcp-data-kcmo
インストール
前提条件
Python 3.10以降が必要です。バージョンを確認してください:
python3 --versionPythonのインストールまたはアップグレードが必要な場合:
macOS:
brew install python(Homebrewが必要)Ubuntu/Debian / WSL:
sudo apt update && sudo apt install -y python3 python3-venv python3-pipFedora/RHEL:
sudo dnf install python3Windows 11 (ネイティブ): python.orgからダウンロードし、インストール時に Add to PATH にチェックを入れてください
1. このフォルダをクローンまたはコピー
git clone https://github.com/your-username/socrata-mcp.git
cd socrata-mcpまたは、server.pyとrequirements.txtファイルを任意のフォルダにコピーしてください。
2. 仮想環境を作成
python3 -m venv .venv3. 仮想環境を有効化
プラットフォーム | コマンド |
macOS / Linux / WSL |
|
Windows (cmd.exe) |
|
Windows (PowerShell) |
|
有効になると、プロンプトが (.venv) と表示されるようになります。
4. 依存関係をインストール
pip install -r requirements.txt5. インストールの確認
python3 server.py --help以下のようなエラーが表示されるはずです:
RuntimeError: SOCRATA_DOMAIN environment variable is requiredこれはサーバーが正しく読み込まれたことを意味します。あとは認証情報を設定するだけです(下記参照)。
設定
両方の環境変数が必須です。これらがないとサーバーは起動しません。
変数 | 説明 | 例 |
| Socrataポータルのホスト名 |
|
| SocrataアカウントのAPIトークン |
|
APIトークンの取得方法:Socrataポータルにログイン → Developer Settings → Create New App Token。
Claude Desktopへの追加
Claude Desktopは、JSON設定ファイルからMCPサーバーリストを読み込みます。お使いのプラットフォームに合わせてファイルを編集してください:
プラットフォーム | 設定ファイルの場所 |
macOS |
|
Windows 11 |
|
WSL | 上記のWindowsパスを使用してください — Claude DesktopはWSL内ではなくWindows上で動作します |
macOS / Linux (ネイティブ)
{
"mcpServers": {
"socrata": {
"command": "/absolute/path/to/socrata-mcp/.venv/bin/python3",
"args": ["/absolute/path/to/socrata-mcp/server.py"],
"env": {
"SOCRATA_DOMAIN": "data.delaware.gov",
"SOCRATA_APP_TOKEN": "your-api-key-here"
}
}
}
}/absolute/path/to/socrata-mcp を実際のパスに置き換えてください。プロジェクトフォルダ内で pwd を実行すると確認できます。
Windows 11 (ネイティブPython)
{
"mcpServers": {
"socrata": {
"command": "C:\\Users\\YourName\\socrata-mcp\\.venv\\Scripts\\python.exe",
"args": ["C:\\Users\\YourName\\socrata-mcp\\server.py"],
"env": {
"SOCRATA_DOMAIN": "data.delaware.gov",
"SOCRATA_APP_TOKEN": "your-api-key-here"
}
}
}
}Windows 11 (WSL使用)
Claude DesktopはWindows上で動作しますが、wsl.exe を介してWSLプロセスを起動できます:
{
"mcpServers": {
"socrata": {
"command": "wsl.exe",
"args": [
"--exec",
"/home/your-wsl-username/socrata-mcp/.venv/bin/python3",
"/home/your-wsl-username/socrata-mcp/server.py"
],
"env": {
"SOCRATA_DOMAIN": "data.delaware.gov",
"SOCRATA_APP_TOKEN": "your-api-key-here"
}
}
}
}your-wsl-username をWSLのユーザー名に置き換えてください(WSL内で whoami を実行して確認)。
設定を編集した後、Claude Desktopを再起動すると、Socrataツールが利用可能になります。
ライセンス
このプロジェクトはMITライセンスの下でライセンスされています。
このコードはAnthropicのClaudeを使用して生成されました。
クエリの例
"Delawareのオープンデータポータルで利用可能なデータセットは何ですか?"
"FY2025の契約支出額上位のベンダーを表示して"
"データセット sifm-293u にはどのような列が含まれていますか?"
"昨年、クラウドソリューションに最も支出した機関はどこですか?"
"data.delaware.gov で教育関連のデータセットを検索して"
Related MCP Connectors
MCP server for querying and analyzing data from ad platforms, analytics tools, and spreadsheets
Michigan Open Data (data.michigan.gov) Socrata MCP.
Hosted MCP server for finding authoritative primary data sources and official portals.
This MCP server provides seamless access to Malaysia's government open data, including datasets, w…
Related MCP Servers
- AlicenseBqualityDmaintenanceAn MCP server that provides access to government datasets from Data.gov, enabling users to search packages, view dataset details, list groups and tags, and access resources by URL.444 npm20MIT
- AlicenseNot gradedqualityBmaintenanceMCP server for accessing Kansas City, MO open data through the Socrata SODA API. Enables querying and retrieving public datasets from data.kcmo.org.690 npmMIT
- AlicenseNot gradedqualityBmaintenanceMCP server providing access to Montgomery County, MD open data through the Socrata SODA API, enabling querying and analysis of public datasets via natural language.695 npmMIT
- AlicenseNot gradedqualityBmaintenanceAn MCP server that connects to open data portals like CKAN and Socrata, enabling natural language querying of datasets via Claude.MIT