Mmcp.market

Ckan MCP server

by aborruso·io.github.aborruso/ckan-mcp-server·v0.4.124

MCP server for interacting with CKAN open data portals

A89/100grade A
What users say
No reviews yet
Be the first
Safety scan
A89/100

full report

Adoption
Established

58 stars495 downloads/wk

Reviews

Write one

Nobody has reviewed Ckan yet.

If you have run it, two minutes of your experience saves the next person an afternoon.

Ckan tools (20)

write = sends, deletes, buys or posts

Read from the package source without running it. The installed server may list more.

  • ckan_analyze_datasets
  • ckan_catalog_stats

    Get a statistical overview of a CKAN portal: total dataset count and breakdown by category, format, and organization. Single CKAN call (package_search with rows=0 and facets). No query needed. Args: - server_url (string): Base URL of the CKAN server - facet_limit (number): Max entries per facet section (default 20) - response_format ('markdown' | 'json'): Output format Returns: Total dataset count

  • ckan_datastore_search
  • ckan_datastore_search_sql
  • ckan_find_portals
  • ckan_find_relevant_datasets
  • ckan_get_mqa_quality

    Get MQA (Metadata Quality Assurance) quality metrics for a dataset on dati.gov.it. Returns quality score and detailed metrics (accessibility, reusability, interoperability, findability, contextuality) from data.europa.eu. Only works with dati.gov.it server. Typical workflow: ckan_package_show (get dataset ID) \u2192 ckan_get_mqa_quality \u2192 ckan_get_mqa_quality_details (for non-max dimensions)

  • ckan_get_mqa_quality_details

    Get detailed MQA (Metadata Quality Assurance) quality reasons for a dataset on dati.gov.it. Returns dimension scores, non-max reasons, and raw MQA flags from data.europa.eu. Only works with dati.gov.it server. Typical workflow: ckan_get_mqa_quality (get overview scores) \u2192 ckan_get_mqa_quality_details (inspect failing metrics)

  • ckan_group_list

    List all groups on a CKAN server. Groups are thematic collections of datasets. Args: - server_url (string): Base URL of CKAN server - all_fields (boolean): Return full objects vs just names (default: false) - sort (string): Sort field (default: "name asc") - limit (number): Maximum results (default: 100). Use 0 to get only the count via faceting - offset (number): Pagination offset (default: 0) -

  • ckan_group_search

    Search for groups by name pattern. This tool provides a simpler interface than package_search for finding groups. Wildcards are automatically added around the search pattern. Args: - server_url (string): Base URL of CKAN server - pattern (string): Search pattern (e.g., "energia", "salute") - response_format ('markdown' | 'json'): Output format Returns: List of matching groups with dataset counts T

  • ckan_group_show

    Get details of a specific group. Args: - server_url (string): Base URL of CKAN server - id (string): Group ID or name - include_datasets (boolean): Include list of datasets (default: true) - response_format ('markdown' | 'json'): Output format Returns: Group details with optional datasets Typical workflow: ckan_group_show \u2192 ckan_package_show (inspect a dataset) \u2192 ckan_datastore_search (q

  • ckan_list_resources
  • ckan_organization_list
  • ckan_organization_search
  • ckan_organization_show

    Get details of a specific organization. Args: - server_url (string): Base URL of CKAN server - id (string): Organization ID or name - include_datasets (boolean): Include list of datasets (default: true) - include_users (boolean): Include list of users (default: false) - response_format ('markdown' | 'json'): Output format Returns: Organization details with optional datasets and users Typical workf

  • ckan_package_search
  • ckan_package_show
  • ckan_status_show

    Check if a CKAN server is available and get version information. Useful to verify server accessibility before making other requests. Also shows the count of High-Value Datasets (HVD) when the portal supports it. Args: - server_url (string): Base URL of CKAN server Returns: Server status, version information, and HVD dataset count (if available) Typical workflow: ckan_status_show (verify server is

  • ckan_tag_list

    List tags from a CKAN server using faceting. This returns tag names with counts, optionally filtered by dataset query or tag substring. Args: - server_url (string): Base URL of CKAN server - q (string): Dataset search query (default: "*:*") - fq (string): Filter query (optional) - tag_query (string): Filter tags by substring (optional) - limit (number): Max tags to return (default: 100, max: 1000)

  • sparql_query

Public scan report

scanner v0.1.9 · 2026-09-20 · same rubric, same numbers if you re-run it

no findings
  • Code scan2 source files scanned25/25
  • Live reliabilityno gateway calls yet and no remote to proben/a
  • Tool poisoningtools not inspected (local package is not executed); not countedn/a
  • Auth qualitylocal package, no credentials required12/15
  • Maintenancelast push 0 days ago15/15
  • Maintainer identitynamespace and repository owner differ; GitHub account older than a year6/10
Overall 89/100. Components that don't apply are left out of the denominator. Any critical finding is an F.RubricAppeal a findingJSON

What the publisher says

From the Ckan repository's README, as published. We do not edit it. Read it on GitHub

CKAN MCP Server

Turn any (CKAN) open data portal into a conversation.

Give your AI assistant direct access to any CKAN open data portal — search datasets, explore organizations, query tabular data, and read metadata, all through natural language.

CKAN is the open-source platform behind most public open data portals worldwide (Italy's dati.gov.it, the US data.gov, Canada's open.canada.ca, and many more). Navigating these portals usually requires knowing their structure, APIs, and search syntax. This MCP server removes that barrier: once connected, your AI tool can do it all for you.

This is possible because of open standards and open source. CKAN exposes a fully documented, public API. Metadata follows DCAT, an open W3C standard for describing datasets. Both are free to use, free to build on, and maintained by open communities. This server stands on that foundation.

Who is this for? Everyone. Journalists looking for data to verify a story. Researchers exploring public datasets. Public servants checking what data their administration publishes. Developers building data pipelines. No CKAN knowledge required.

Adopted by AgID — This project has been reused by AgID, Italy's Agency for Digital Italy, as part of its effort to make public open data more accessible, immediate, and easier to consult through AI.

Two ways to use it — pick the one that suits you:

Hosted endpoint: https://ckan-mcp-server.andy-pr.workers.dev/mcp

Recommendation: Option B is a great way to get started and try things out without any setup. Once you're familiar with what the server can do, switching to Option A (local install) gives you unlimited usage with no shared quotas.

👉 Want to explore the codebase? The AI-generated DeepWiki is a great starting point.

License: MIT — see LICENSE for complete details. Third-party notices: NOTICE.md.

⚖️ Limits

The local and hosted server use the same tool and output caps. The hosted endpoint also has the shared request quota shown above.

Shortened. The full README is on GitHub.

Nothing above is checked by us. What we check is on the safety report.

Install directly

Runs npx -y @aborruso/ckan-mcp-server on your machine. Read the scan report first; the gateway never runs local packages.

claude mcp add ckan-mcp-server -- npx -y @aborruso/ckan-mcp-server
Add to Cursor

Ckan: common questions

Is Ckan MCP server safe?
Yes, by our scan: it is graded A (89/100). Read the Ckan safety report
How do I install Ckan?
It runs on your machine. Copy the Claude Code, Claude Desktop or Cursor config from the install section.
Does Ckan need an API key?
Not as far as the registry entry and our scan can tell: no credentials are declared or required.
Is Ckan maintained?
The last commit was in the last day (2026-09-19). The latest release is v0.4.124.

More from aborruso