Skip to content

MCP Server

KUKAN provides a Model Context Protocol (MCP) compliant server endpoint. This enables Claude, ChatGPT, and other MCP-compatible AI agents to search and browse the data catalog.

POST /api/mcp

Operates in stateless mode using the Streamable HTTP transport.

Add the following to your settings:

{
"mcpServers": {
"kukan": {
"type": "url",
"url": "https://your-kukan-site/api/mcp"
}
}
}
Terminal window
curl -X POST https://your-kukan-site/api/mcp \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "initialize",
"params": {
"protocolVersion": "2025-03-26",
"capabilities": {},
"clientInfo": { "name": "test", "version": "0.1" }
}
}'

All tools are read-only. Access to private datasets is controlled based on the authenticated user's permissions.

ToolDescription
search_datasetsSearch datasets by keyword. Supports organization and tag filters
get_datasetGet detailed dataset information including resource list
get_resourceGet resource (file) metadata and URL
list_organizationsList organizations
list_groupsList groups (categories)
list_tagsList tags

Search the data catalog by keyword.

ParameterTypeRequiredDescription
qstringYesSearch keywords
organizationstringNoFilter by organization name (slug)
tagsstring[]NoFilter by tag names
offsetnumberNoNumber of results to skip (default: 0)
limitnumberNoMaximum results (default: 10, max: 50)

Get detailed information about a dataset.

ParameterTypeRequiredDescription
nameOrIdstringYesDataset name (slug) or UUID

Get resource metadata. Returns the download URL for uploaded files.

ParameterTypeRequiredDescription
idstringYesResource UUID
ParameterTypeRequiredDescription
qstringNoSearch by name
offsetnumberNoNumber of results to skip (default: 0)
limitnumberNoMaximum results (default: 20, max: 100)
ParameterTypeRequiredDescription
qstringNoSearch by name
offsetnumberNoNumber of results to skip (default: 0)
limitnumberNoMaximum results (default: 20, max: 100)
ParameterTypeRequiredDescription
qstringNoSearch by name
offsetnumberNoNumber of results to skip (default: 0)
limitnumberNoMaximum results (default: 50, max: 200)

The MCP endpoint integrates with KUKAN's authentication system.

  • Unauthenticated: Access to public datasets only
  • Authenticated: Access to private datasets within your organizations
  • System admin: Access to all datasets

Include authentication headers in your request when authentication is needed.

  • Protocol: MCP (Model Context Protocol) 2025-03-26
  • Transport: Streamable HTTP
  • Mode: Stateless (no session management)
  • Response format: JSON-RPC 2.0