mcpField
C
CKAN MCP Server

CKAN MCP Server

ローカル
github.com生産性157 週間前に更新

CKAN MCP Server について

CKAN MCP Serverは、MCP対応クライアントからCKANデータポータルの閲覧や管理を行うためのサーバーです。データセット、組織、リソース、DataStore検索、ポータル状態を扱います。

主な機能

  1. 01データセットの検索と一覧表示
  2. 02組織とリソースの詳細表示
  3. 03DataStoreテーブルの検索
  4. 04グループとタグの一覧表示
  5. 05ポータル状態と情報の取得

活用シーン

  1. 01オープンデータポータルでのデータセット検索
  2. 02組織のデータセットの確認
  3. 03リソースに対応するDataStoreテーブルの検索

MCP 対応

CKAN API操作をMCPツールとして公開し、APIドキュメントと設定をリソースとして提供します。MCP対応クライアントはstdioで接続します。

設定

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

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

CKAN MCP サーバー

CKAN API 用の Model Context Protocol(MCP)サーバーです。MCP 対応クライアントから CKAN データポータルを閲覧・管理できます。

これは何ですか?

この MCP サーバーは、Model Context Protocol を通じて CKAN(Comprehensive Knowledge Archive Network)API にアクセスできます。Claude Desktop、IDE、その他の AI アプリケーションなどの MCP 対応クライアントから、CKAN データポータルを操作できます。

要件

  • Python 3.13 以降
  • pip(Python パッケージインストーラー)

インストール

  1. Python の依存関係をインストールします。
pip install -r requirements.txt

設定

以下の環境変数を設定します。

  • CKAN_URL:CKAN ポータルのベース URL(例:https://demo.ckan.org)
  • CKAN_API_KEY:(任意)書き込み操作に使用する CKAN API キー

例:

export CKAN_URL="https://demo.ckan.org"
export CKAN_API_KEY="your-api-key-here"

.env.example を .env にコピーして、そちらに設定を記述することもできます。

使用方法

サーバーを直接実行する
python mcp_ckan_server.py
Docker を使用する
# Build the image
docker build -t ckan-mcp-server .

# Run with environment variables
docker run -e CKAN_URL="https://demo.ckan.org" -e CKAN_API_KEY="your-key" ckan-mcp-server
Docker Compose を使用する
# Copy environment file and configure
cp .env.example .env
# Edit .env with your settings

# Run the server
docker-compose up

ツール

MCP サーバーでは、以下のツールを利用できます。

パッケージ/データセット
  • ckan_package_list:すべてのパッケージを一覧表示します
  • ckan_package_show:特定のパッケージの詳細を表示します
  • ckan_package_search:パッケージを検索します
組織
  • ckan_organization_list:すべての組織を一覧表示します
  • ckan_organization_show:組織の詳細を表示します
DataStore
  • ckan_datastore_search:リソース別に DataStore テーブルを検索します
グループとタグ
  • ckan_group_list:すべてのグループを一覧表示します
  • ckan_tag_list:すべてのタグを一覧表示します
リソース
  • ckan_resource_show:リソースの詳細を表示します
システム
  • ckan_site_read:サイト情報
  • ckan_status_show:ステータスとバージョン情報

例

パッケージを検索する
{
  "tool": "ckan_package_search",
  "arguments": {
    "q": "climate data",
    "rows": 5,
    "sort": "score desc"
  }
}
組織を表示する
{
  "tool": "ckan_organization_show",
  "arguments": {
    "id": "sample-organization",
    "include_datasets": true
  }
}
すべてのタグを一覧表示する
{
  "tool": "ckan_tag_list",
  "arguments": {}
}

リソース

サーバーでは、以下のリソースも提供しています。

  • ckan://api/docs:API ドキュメント
  • ckan://config:サーバー設定

MCP クライアントでの使用

Claude Desktop

Claude Desktop の設定ファイルに以下を追加します。

{
  "mcpServers": {
    "ckan": {
      "command": "python",
      "args": ["/path/to/mcp_ckan_server.py"],
      "env": {
        "CKAN_URL": "https://demo.ckan.org",
        "CKAN_API_KEY": "your-api-key-here"
      }
    }
  }
}
その他の MCP クライアント

サーバーは stdio 経由で通信します。Python スクリプトを実行し、標準入出力を介して通信することで、任意の MCP 対応クライアントから接続できます。

CKAN API リファレンス

この MCP サーバーは、CKAN API v3 の主要なエンドポイントを実装しています。
詳細なドキュメント:https://docs.ckan.org/en/latest/api/

ライセンス

Mozilla Public License Version 2.0

作者

(C) 2025, Ondics GmbH, https://ondics.de

コメント

MCP は初めてですか?

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

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