mcpField
O
OpenGov MCP Server

OpenGov MCP Server

ローカル
github.com/srobbin法務・行政1481 週間前に更新

OpenGov MCP Server について

OpenGov MCP Serverは、MCPクライアントからSocrata対応のオープンデータポータルに接続するサーバーです。データセットの検索や構造の確認、レコードの照会、ポータル統計の取得に対応します。

主な機能

  1. 01キーワード・カテゴリ・タグでデータセットを検索
  2. 02データセットのメタデータと列情報を表示
  3. 03データセットのレコードを照会・取得
  4. 04ポータルの利用統計を取得

活用シーン

  1. 01政府ポータルから公開データセットを探す
  2. 02分析前にデータセットの項目を確認
  3. 03SoQLで政府データのレコードを照会
  4. 04ポータルの利用統計を確認

MCP 対応

統一された `get_data` ツールを通じて、Socrataのデータ検索、メタデータ参照、照会、統計取得機能をMCPクライアントに提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"opengov": {
"command": "npx",
"args": [
"-y",
"opengov-mcp-server"
],
"env": {
"DATA_PORTAL_URL": "<DATA_PORTAL_URL>"
}
}
}
}
起動コマンドnpx -y opengov-mcp-server
設定が必要な環境変数
DATA_PORTAL_URL

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmopengov-mcp-server

ツール

1

掲載時のツール一覧 · 3 週間前に更新

パラメーター型必須説明
typeenumはい実行する操作の種類: - catalog:データセットを一覧表示します。検索は任意です - categories:すべてのデータセットカテゴリを一覧表示します - tags:すべてのデータセットタグを一覧表示します - dataset-metadata:特定のデータセットの詳細なメタデータを取得します - column-info:特定のデータセットの列の詳細を取得します - data-access:データセットのレコードにアクセスします(クエリに対応) - site-metrics:ポータル全体の統計情報を取得しますcatalog | categories | tags | dataset-metadata | column-info | data-access | site-metrics
domainstringいいえ任意のドメイン(プロトコルを含まないホスト名のみ)。すべての操作タイプで使用します。
querystringいいえ検索またはクエリ文字列。用途は操作タイプによって異なります: - type=catalog の場合:データセットを絞り込む検索クエリ - type=data-access の場合:複雑なデータ絞り込みに使用する SoQL クエリ文字列
datasetIdstringいいえ次の操作に必要なデータセット識別子: - type=dataset-metadata の場合:データセットの詳細を取得します - type=column-info の場合:列情報を取得します - type=data-access の場合:クエリ対象のデータセットを指定します(例:6zsd-86xi)
soqlQuerystringいいえtype=data-access のみで使用します。データを絞り込むための任意の SoQL クエリ文字列です。 query パラメーターの別名です。両方が指定された場合は、このパラメーターが優先されます。
selectstringいいえtype=data-access のみで使用します。結果セットに返す列を指定します。
wherestringいいえtype=data-access のみで使用します。返す行を絞り込みます(例:"magnitude > 3.0")。
orderstringいいえtype=data-access のみで使用します。指定した列に基づいて結果を並べ替えます(例:"date DESC")。
groupstringいいえtype=data-access のみで使用します。集計関数を使用するために結果をグループ化します。
havingstringいいえtype=data-access のみで使用します。where と同様に、グループ化されたデータを絞り込みます。
qstringいいえtype=data-access のみで使用します。データセット全体を対象にフリーテキスト検索を行うためのパラメーターです。
limitnumberいいえ返す結果の最大数: - type=catalog の場合:データセットの結果数を制限します - type=data-access の場合:返すデータレコード数を制限します
offsetnumberいいえページネーションでスキップする結果数: - type=catalog の場合:データセットの結果をスキップします - type=data-access の場合:ページネーションでデータレコードをスキップします

詳細

OpenGov MCP サーバー

Claude Desktop のような MCP クライアントから Socrata Open Data API にアクセスできるようにする、MCP(Model Context Protocol)サーバーです。この連携により、Claude Desktop で政府のデータポータルから公開データセットを検索、取得、分析できます。

概要

この MCP サーバーは、都市、州、連邦政府機関のデータポータルを含む、Socrata を利用したあらゆるデータポータルのオープンデータにアクセスできます。例:

公開データにアクセスするため、基本的な利用に API キーは必要ありません。

機能

この MCP サーバーを使うと、クライアントは次の操作を行えます。

  • キーワード、カテゴリ、タグでデータセットを検索、検出する
  • データセットのメタデータと列の情報を表示する
  • SQL に似たクエリを実行してデータを取得、分析する
  • ポータルの利用統計を取得する

Claude Desktop へのインストール

npx でのクイックセットアップ(推奨)

この MCP サーバーを使う最も簡単な方法は npx を利用することです。インストールは不要です。

  1. Claude Desktop の設定を作成または編集する:

    ホームディレクトリにある claude_desktop_config.json を作成または編集します。

    {
      "mcpServers": { 
        "opengov": {
          "command": "npx",
          "args": ["-y", "opengov-mcp-server@latest"],
          "env": {
            "DATA_PORTAL_URL": "https://data.cityofchicago.org"
          }
        }
      }
    }
    

    DATA_PORTAL_URL は、Socrata を利用した任意のデータポータルに置き換えられます。

  2. Claude Desktop を再起動する(すでに起動している場合)

  3. MCP サーバーの使用を開始する:

    Claude Desktop で、次のような質問をできるようになります。

    How many cars were towed in Chicago this month?
    

    さらに詳しく掘り下げる質問を続けて行うこともできます。

    Which make and color were towed the most?
    Also, were there any interesting vanity plates?
    

    クエリを初めて実行するときに、npx がサーバーの最新バージョンを自動的にダウンロードして実行します。

ソースから手動でインストール

ソースから実行する場合(開発やカスタマイズなど)は、次の手順に従ってください。

  1. このリポジトリをクローンする:

    git clone https://github.com/srobbin/opengov-mcp-server.git
    cd opengov-mcp-server
    
  2. 依存関係をインストールしてビルドする:

    npm install
    npm run build
    
  3. Claude Desktop の設定を作成する:

    ホームディレクトリにある claude_desktop_config.json を作成または編集します。

    {
      "mcpServers": { 
        "opengov": {
          "command": "node",
          "args": [
            "/path/to/your/opengov-mcp-server/dist/index.js"
          ],
          "env": {
            "DATA_PORTAL_URL": "https://data.cityofchicago.org"
          }
        }
      }
    }
    

    /path/to/your/opengov-mcp-server を、リポジトリをクローンした実際のパスに置き換えます。

  4. Claude Desktop を再起動する(すでに起動している場合)

利用可能なツール:get_data

この MCP サーバーは、Claude Desktop が Socrata のデータにアクセスするための統一ツール get_data を提供します。

パラメーター
  • type(string、必須):操作の種類

    • catalog:データセットを検索、一覧表示する
    • categories:データセットのカテゴリを一覧表示する
    • tags:データセットのタグを一覧表示する
    • dataset-metadata:データセットの詳細を取得する
    • column-info:データセットの列情報を取得する
    • data-access:レコードをクエリして取得する
    • site-metrics:ポータルの統計情報を取得する
  • domain(string、任意):データポータルのホスト名(プロトコルを除く)

  • query(string、任意):データセットの検索クエリ

  • datasetId(string):特定の操作で使用するデータセット識別子

  • soqlQuery(string、任意):データを絞り込むための SoQL クエリ

  • limit(number、任意):返す結果の最大数(デフォルト:10)

  • offset(number、任意):ページネーションでスキップする結果数(デフォルト:0)

クエリ例

以下は、Claude Desktop が MCP サーバーに送信するクエリの形式例です。

// Find datasets about budgets
{
  "type": "catalog",
  "query": "budget",
  "limit": 5
}

// Get information about a dataset
{
  "type": "dataset-metadata",
  "datasetId": "6zsd-86xi"
}

// Query dataset records with SQL-like syntax
{
  "type": "data-access",
  "datasetId": "6zsd-86xi",
  "soqlQuery": "SELECT * WHERE amount > 1000 ORDER BY date DESC",
  "limit": 10
}

設定オプション

このサーバーには、次の環境変数が必要です。

  • DATA_PORTAL_URL:Socrata データポータルの URL(例:https://data.cityofchicago.org)

次の場所で設定できます。

  • Claude Desktop の設定(推奨)
  • 環境変数
  • コマンドライン:DATA_PORTAL_URL=https://data.cityofchicago.org opengov-mcp-server

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。