An MCP server for KoboToolbox that enables Claude to deploy surveys, fetch submissions, and manage your entire data collection workflow. Requires Python 3.10+.
Upload and deploy XLSForm files directly from Claude. Create new forms or update existing ones while preserving submissions.
Retrieve survey responses with optional filtering. Export data as CSV or Excel for analysis.
Export forms as XLSForm, add translation columns, and redeploy -- all guided by built-in workflow help.
Approve, reject, or flag submissions for quality control without deleting any data.
# Set your KoboToolbox API token
export KOBO_API_TOKEN="your-token-here"
# Register the MCP server
claude mcp add kobotoolbox -- \
env KOBO_API_TOKEN=$KOBO_API_TOKEN uvx kobo-mcp
# For the EU server, also pass the server URL:
claude mcp add kobotoolbox -- \
env KOBO_API_TOKEN=$KOBO_API_TOKEN \
KOBO_SERVER=https://eu.kobotoolbox.org uvx kobo-mcp
To get your API token: log in to KoboToolbox → Account Settings → Security → API Key.
| Tool | Description |
|---|---|
info |
Get help and discover workflows (translate, deploy, data export) |
list_forms |
List all KoboToolbox surveys |
get_form |
Get detailed form structure (JSON) |
resolve_form |
Find the form UID for an Enketo submission URL |
export_form |
Download existing form as XLSForm (.xlsx) |
get_submissions |
Fetch survey responses with optional filtering |
deploy_form |
Upload and deploy new XLSForm files |
replace_form |
Update existing forms while preserving submissions |
set_validation_status |
Approve, reject, or flag submissions |
export_data |
Export data as CSV or Excel |
You can also configure manually in ~/.claude.json:
{
"mcpServers": {
"kobotoolbox": {
"type": "stdio",
"command": "uvx",
"args": ["kobo-mcp"],
"env": {
"KOBO_API_TOKEN": "your-token-here"
}
}
}
}
For the EU server, add "KOBO_SERVER": "https://eu.kobotoolbox.org" to the env block.