Skip to content

Connectors · Developer & infrastructure

KoboToolbox MCP server for AI agents.

actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to KoboToolbox and the rest of your systems. It gives your agent 173 KoboToolbox actions (105 reads, 47 writes and 21 that wait for a confirmation) and holds the KoboToolbox credential itself, so the agent never does. It paces KoboToolbox's limits and records every call.

100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.

claude mcp add --transport http actionlake https://connect.actionlake.com/mcp
the first call
do {  action: "kobotoolbox.assets.list",  intent: "check which KoboToolbox account is connected"}# Get user's assets Search can be made with q parameter · read · 1 upstream call
  • 173actionsin one signed file
  • 105readlook, never change
  • 47writecreate and update
  • 21wait for a yesdestructive, confirmed first

Set up

Connect KoboToolbox in three steps.

  1. 01

    Add actionlake to Claude.

    Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.

    https://connect.actionlake.com/mcp
  2. 02

    Connect KoboToolbox.

    API key. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead. actionlake stores what you paste write-only, sealed under your tenant's key.

    • api_tokenKoboToolbox API token: in KoboToolbox open Account Settings > Security > API Key (or GET /token/?format=json while…
    • hostWhere your KoboToolbox lives: your host
    account { op: "connections.requirements", service: "kobotoolbox" }
    # free: exactly what to paste, and what is found for you
  3. 03

    Make the first call. Check before a write.

    Ask in plain words; Claude picks the action. Before anything changes, check validates the call and prices it, for free.

    do    { action: "kobotoolbox.assets.list" }# get user's assets search can be made with q parameter · read · 1 upstream callcheck { action: "kobotoolbox.assets.create", input: { … } }# free: inputs, permissions, cost and confirmations, nothing sent

KoboToolbox at a glance

Sign-in
API key. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead.
You provide
api_token
Setup fields
host
Limits we pace to
10 calls a second, per connection
API covered
KoboToolbox KPI API 2.0.0 (api_v2) (OpenAPI 3.1.0), at your KoboToolbox instance's API base URL, which you enter when connecting
Built from
KoboToolbox's documentation, read 23 October 2026kf.kobotoolbox.orgsupport.kobotoolbox.org
Service file
Version 1.0.0, signed (Ed25519)
Cached reads
105 of 105 reads, for up to 5 minutes; a write clears what it affects
Shared entities
3, so ask can line KoboToolbox up with your other systems
Data
Processed and stored in Sydney, Australia. No US region yet

Capabilities

What an AI agent can do in KoboToolbox.

173 actions in 25 areas. Every one carries its effect, so a key can allow the reads and hold the rest.

  • 105readlook, never change
  • 47writecreate and update
  • 21destructivewait for a confirmation
  1. Assets

    87

    43 read · 30 write · 14 destructive

    Get user's assets Search can be made with q parameter · Assets create · Assets data list · Get a user's current asset

  2. Organizations

    17

    11 read · 4 write · 2 destructive

    List user's organizations · List Members Retrieves all members and pending invitations in the specified organization · Organizations asset usage list · Retrieve Organization Assets This endpoint returns all assets associated with a specific organization

  3. Me

    8

    4 read · 2 write · 2 destructive

    Retrieve current user profile · Set a new email The new email will be unverified and replace existing unverified, non-primary emails · View current user's email · List user's social accounts

  4. Project views

    8

    7 read · 1 write · 0 destructive

    Retrieve assets available in project view · Project views assets minimal list get · Create an export for the requested object Note: {obj type} can either be users or assets · List project views for current user

  5. Stripe

    8

    6 read · 2 write · 0 destructive

    Lists the one-time add-ons for the authenticated user's organization. · Stripe checkout link create · Stripe customer portal create · Stripe products list

  6. Access logs

    6

    4 read · 2 write · 0 destructive

    Create an export task for all users ⚠️ Only available to superusers · List all access logs export tasks for all users ⚠️ Only available to superusers · Access logs list · Create an export task for the authenticated user

  7. Project ownership

    6

    3 read · 2 write · 1 destructive

    Create (send) an invite Where the assets uid are given in the payload's list · List of invites Invites sent or received by current user about transferring project ownership · Invite detail It can be useful to monitor the invite status while the transfer is being processed · Retrieve transfer details

  8. Asset snapshots

    4

    2 read · 1 write · 1 destructive

    Asset snapshots create · List all snapshots for every asset of a user · Asset snapshots get · Delete an asset snapshot

17 more areas · 29 actions
  • Asset subscriptions 4
  • Project history logs 3
  • Imports 2
  • Languages 2
  • Permissions 2
  • Terms of service 2
  • Transcription services 2
  • Translation services 2
  • Users 2
  • Asset usage 1
  • Audit logs 1
  • Email confirmations 1
  • Environment 1
  • Service usage 1
  • Social apps 1
  • Tags 1
  • User reports 1

Top actions

The KoboToolbox API, shaped for agents.

The ids your agent types, what each does, and the one name it shares with other systems. 17 of KoboToolbox's 17 action names are shared with at least one other connector, so an agent learns them once.

ActionWhat it doesEffectSame name in
kobotoolbox.me.getRetrieve current user profileRetrieve current user profilereadidentity.current_user.get307 connectors
kobotoolbox.assets.listGet user's assets Search can be made with q parameterGet user's assets Search can be made with q parameterreadcontent.form.list36 connectors
kobotoolbox.assets.createAssets createAssets createwritecontent.form.create26 connectors
kobotoolbox.assets.data_listAssets data listAssets data listreadcontent.form_response.list20 connectors
kobotoolbox.users.listList users ⚠️ Only available to superusers Search can be made with q parameterList users ⚠️ Only available to superusers Search can be made with q parameterreadidentity.user.list474 connectors
kobotoolbox.assets.updateUpdate or connect a user's asset Updates a project or connect project's data from this project to other projects When DaUpdate or connect a user's asset Updates a project or connect project's data from this project to other projects When Data sharing : fields : Optionalwritecontent.form.update25 connectors
kobotoolbox.users.getRetrieve a user ⚠️ Regular users have access to active users onlyRetrieve a user ⚠️ Regular users have access to active users onlyreadidentity.user.get399 connectors
kobotoolbox.assets.data_getAssets data getAssets data getreadcontent.form_response.get15 connectors
kobotoolbox.assets.deleteDelete a user's assetDelete a user's assetdestructivecontent.form.delete20 connectors
kobotoolbox.audit_logs.listList actions performed by usersList actions performed by usersreadidentity.audit_event.list51 connectors
kobotoolbox.permissions.listPermissions listPermissions listreadidentity.permission.list33 connectors
kobotoolbox.assets.exports_createCreates an export task Where: fields from all versions (required) is a boolean to specify whether fields from all form vCreates an export task Where: fields from all versions (required) is a boolean to specify whether fields from all form versions will be included in the exportwriteanalytics.data_export.create10 connectors

Try it

Prompts to paste into Claude.

Each one names the KoboToolbox actions it will call, so you know what it reads and what it changes before you send it.

  1. Readread

    Get user's assets Search can be made with q parameter in KoboToolbox and tell me what stands out.

    callskobotoolbox.assets.list

  2. Writewrite

    Assets create in KoboToolbox. Show me exactly what you will send before you save it.

    callskobotoolbox.assets.create

Governance for KoboToolbox

Destructive actions wait for a yes.

21 KoboToolbox actions are destructive. These are all of them:

  • Delete a user's assetkobotoolbox.assets.delete
  • Deletes current submissionkobotoolbox.assets.data_delete
  • Me deletekobotoolbox.me.delete
  • Delete a file from current assetkobotoolbox.assets.files_delete
  • Delete an external service.kobotoolbox.assets.hooks_delete
  • Deletes current export taskkobotoolbox.assets.exports_delete
  • Assets data bulk deletekobotoolbox.assets.data_bulk_delete
  • Delete a specific attachment of an Asset id can only be the uid of attachment to be deletedkobotoolbox.assets.attachments_delete
  • Remove a connection between two projectskobotoolbox.assets.paired_data_delete
  • Delete a social account providerkobotoolbox.me.social_accounts_delete
  • Delete Organization Invite Organization owner or admin can delete an organization invite.kobotoolbox.organizations.invites_delete
  • Remove Member Delete an organization member.kobotoolbox.organizations.members_delete
  • Delete current export setting <sup </sup Required permissions: manage asset (Manage project)kobotoolbox.assets.export_settings_delete
  • Assets attachments bulk deletekobotoolbox.assets.attachments_bulk_delete
  • Delete validation statuskobotoolbox.assets.data_validation_status_delete
  • Remove a permission assignmentkobotoolbox.assets.permission_assignments_delete
  • Assets data validation statuses deletekobotoolbox.assets.data_validation_statuses_delete
  • Remove all permission assignments ⚠️ Warning This endpoint currently supports deleting only the user whose username is pkobotoolbox.assets.permission_assignments_bulk_delete
  • Delete an asset snapshotkobotoolbox.asset_snapshots.delete
  • Delete a subscription to an asset Unsubscribe from a public asset.kobotoolbox.asset_subscriptions.delete
  • Delete invitekobotoolbox.project_ownership.invites_delete

A destructive action runs only with confirm: true. Under the human policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.

dokobotoolbox.assets.deleteconfirm_policy: human

Delete a user's asset?

intent: the user asked me to delete a user's asset

run suspended · waiting for a named person · key kobotoolbox-agent cannot confirm itself
In the console, or from an emailed signed link.
a key for this connector
account {  op: "keys.create", name: "kobotoolbox-agent",  allowed_actions: ["kobotoolbox.*"], cap_calls: 2000,  confirm_policy: "human_for_writes",  approval_rules: [    { match: "kobotoolbox.assets.delete", approver: "[email protected]" },    { match: "kobotoolbox.assets.data_delete", approver: "[email protected]" },    { match: "kobotoolbox.me.delete", approver: "[email protected]" }  ]}
Illustrative. Scoped to KoboToolbox only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

Cost

What KoboToolbox costs on actionlake.

Every KoboToolbox action is one upstream call, the only thing actionlake bills. Searching, check, cost, account and any call KoboToolbox refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

  • 1upstream call per actionall 173 KoboToolbox actions
  • 173actions pageeach page of a long list is one call
  • 105reads can be cacheda cache hit costs nothing
  • 100,000calls a month, freepaid plans from US$49 a month for 250,000

See pricing

Action index

Every KoboToolbox action.

173 actions by area: the id your agent calls, what it does, and its effect.

Assets87
  • kobotoolbox.assets.advanced_features_bulk_actions_createCreate a bulk processing job Creates and starts a bulk processing job for one question across multiple submissionswrite
  • kobotoolbox.assets.advanced_features_bulk_actions_getAssets advanced features bulk actions getread
  • kobotoolbox.assets.advanced_features_bulk_actions_listList bulk processing jobs on an asset Returns paginated bulk processing jobs associated with the specified assetread
  • kobotoolbox.assets.advanced_features_bulk_actions_updateUpdate a bulk processing job Cancels a single bulk processing job for an assetwrite
  • kobotoolbox.assets.advanced_features_createAdd an advanced action to an asset Enables a new type of advanced action on a question in the assetwrite
  • kobotoolbox.assets.advanced_features_getRetrieve advanced feature configuration for a question on an asset Gets the params for one advanced action for one questread
  • kobotoolbox.assets.advanced_features_listList all advanced features on an asset Lists all advanced features on all questions in an assetread
  • kobotoolbox.assets.advanced_features_updateUpdate an advanced action on an asset Update the params of an advanced action on a question in the assetwrite
  • kobotoolbox.assets.attachments_audio_duration_createAssets attachments audio duration createwrite
  • kobotoolbox.assets.attachments_bulk_deleteAssets attachments bulk deletedestructive
  • kobotoolbox.assets.attachments_deleteDelete a specific attachment of an Asset id can only be the uid of attachment to be deleteddestructive
  • kobotoolbox.assets.bulk_createPerform bulk actions on assets Actions available: - archive - delete - unarchive - undelete (superusers only)write
  • kobotoolbox.assets.content_getReturn the content of a user's asset.read
  • kobotoolbox.assets.counts_getReturn counts of deployed, archived, and draft assetsread
  • kobotoolbox.assets.counts_listCount the daily amount of submissions Returns up to the last 31 days of daily counts and total counts of submissions to read
  • kobotoolbox.assets.createAssets createwrite
  • kobotoolbox.assets.data_bulk_deleteAssets data bulk deletedestructive
  • kobotoolbox.assets.data_bulk_updateBulk updating of submissions Where <field to update n is a string and should be an existing XML field value of the submiwrite
  • kobotoolbox.assets.data_deleteDeletes current submissiondestructive
  • kobotoolbox.assets.data_duplicate_createAssets data duplicate createwrite
  • kobotoolbox.assets.data_edit_getAssets data edit getread
  • kobotoolbox.assets.data_enketo_edit_getAssets data enketo edit getread
  • kobotoolbox.assets.data_enketo_redirect_edit_getAssets data enketo redirect edit getread
  • kobotoolbox.assets.data_enketo_redirect_view_getAssets data enketo redirect view getread
  • kobotoolbox.assets.data_enketo_view_getAssets data enketo view getread
  • kobotoolbox.assets.data_getAssets data getread
  • kobotoolbox.assets.data_listAssets data listread
  • kobotoolbox.assets.data_supplement_getRetrieve submission supplementary data This endpoint allows you to retrieve supplementary data attached to a submissionread
  • kobotoolbox.assets.data_supplement_updateUpdate submission supplementary data This endpoint allows you to add, update, or delete supplementary data for a submisswrite
  • kobotoolbox.assets.data_supplements_bulk_createBulk accept NLP results Accepts transcription or translation results for multiple submissions in a single requestwrite
  • kobotoolbox.assets.data_validation_status_deleteDelete validation statusdestructive
  • kobotoolbox.assets.data_validation_status_getGet validation statuses Retrieves the validation status of a submission.read
  • kobotoolbox.assets.data_validation_status_updateUpdate the validation of a submission The validation status of the submission can be updatedwrite
  • kobotoolbox.assets.data_validation_statuses_deleteAssets data validation statuses deletedestructive
  • kobotoolbox.assets.data_validation_statuses_updateAssets data validation statuses updatewrite
  • kobotoolbox.assets.deleteDelete a user's assetdestructive
  • kobotoolbox.assets.deployment_create(Re)Deploy a form Deploy a new form or re-deploy an existing one.write
  • kobotoolbox.assets.deployment_getRetrieve the existing deployment (if any)read
  • kobotoolbox.assets.deployment_update(Un)Archive the existing deploymentwrite
  • kobotoolbox.assets.export_settings_createAssets export settings createwrite
  • kobotoolbox.assets.export_settings_deleteDelete current export setting <sup </sup Required permissions: manage asset (Manage project)destructive
  • kobotoolbox.assets.export_settings_getRetrieve a specific export setting <sup </sup Required permissions: view submissions (View submissions)read
  • kobotoolbox.assets.export_settings_listList of export settings for a specific asset <sup </sup Required permissions: view submissions (View submissions)read
  • kobotoolbox.assets.export_settings_updateUpdate the current export setting <sup </sup Required permissions: manage asset (Manage project)write
  • kobotoolbox.assets.exports_createCreates an export task Where: fields from all versions (required) is a boolean to specify whether fields from all form vwrite
  • kobotoolbox.assets.exports_deleteDeletes current export taskdestructive
  • kobotoolbox.assets.exports_getRetrieves current export taskread
  • kobotoolbox.assets.exports_listList of export tasks endpoints Lists the export tasks accessible to requesting user, for anonymous access nothing is retread
  • kobotoolbox.assets.files_createAssets files createwrite
  • kobotoolbox.assets.files_deleteDelete a file from current assetdestructive
  • kobotoolbox.assets.files_getRetrieve a file from current assetread
  • kobotoolbox.assets.files_listRetrieve current asset files Results can be narrowed down with a filter by type:read
  • kobotoolbox.assets.getGet a user's current assetread
  • kobotoolbox.assets.hash_getGet a hash of all version id s of all accessible assets by the current userread
  • kobotoolbox.assets.history_actions_getRetrieve distinct actions performed on the project.read
  • kobotoolbox.assets.history_export_createExport current project's history Exports the project's history and sends it by email to the requesting user.write
  • kobotoolbox.assets.history_listList project history logs Lists all project history logs for a single projectread
  • kobotoolbox.assets.hooks_createAdd an external service to assetwrite
  • kobotoolbox.assets.hooks_deleteDelete an external service.destructive
  • kobotoolbox.assets.hooks_getRetrieve an external serviceread
  • kobotoolbox.assets.hooks_listList external services Lists the external services endpoints accessible to requesting userread
  • kobotoolbox.assets.hooks_logs_getRetrieve an external service endpoint logread
  • kobotoolbox.assets.hooks_logs_listList logs of an external services endpoints accessible to requesting user ⚠️ The page query parameter is deprecated, useread
  • kobotoolbox.assets.hooks_logs_retry_updateRetry a failed submission attemptwrite
  • kobotoolbox.assets.hooks_retry_updateRetries all failed attempts This call is asynchronouswrite
  • kobotoolbox.assets.hooks_updateUpdate an external service.write
  • kobotoolbox.assets.listGet user's assets Search can be made with q parameterread
  • kobotoolbox.assets.metadata_getGet metadata for all authenticated user' assetsread
  • kobotoolbox.assets.minimal_list_getAssets minimal list getread
  • kobotoolbox.assets.paired_data_createCreate a connection between two projects fields : Optionalwrite
  • kobotoolbox.assets.paired_data_deleteRemove a connection between two projectsdestructive
  • kobotoolbox.assets.paired_data_getRetrieve a connection between two projectsread
  • kobotoolbox.assets.paired_data_listAssets paired data listread
  • kobotoolbox.assets.paired_data_updateUpdate a connection between two projects Notes: source cannot be changedwrite
  • kobotoolbox.assets.permission_assignments_bulk_createAssign multiple permissions at once Can put both regular and partial permission in the payloadwrite
  • kobotoolbox.assets.permission_assignments_bulk_deleteRemove all permission assignments ⚠️ Warning This endpoint currently supports deleting only the user whose username is pdestructive
  • kobotoolbox.assets.permission_assignments_clone_updateClone permission assignments from another asset using uid Where clone from is the source uid.write
  • kobotoolbox.assets.permission_assignments_createAssets permission assignments createwrite
  • kobotoolbox.assets.permission_assignments_deleteRemove a permission assignmentdestructive
  • kobotoolbox.assets.permission_assignments_getRetrieve assignmentsread
  • kobotoolbox.assets.permission_assignments_listList permission assignmentsread
  • kobotoolbox.assets.qual_questions_tags_listList available tags for a QA tags question Lists the tag values previously submitted for a qualTags question on this assread
  • kobotoolbox.assets.reports_getReport of a user's asset Returns the submission data for all deployments of a surveyread
  • kobotoolbox.assets.updateUpdate or connect a user's asset Updates a project or connect project's data from this project to other projects When Dawrite
  • kobotoolbox.assets.valid_content_getReturn valid content for user's assetread
  • kobotoolbox.assets.versions_getRetrieve asset versions Returns the details of an asset versionread
  • kobotoolbox.assets.versions_listList the versions of formsread
Organizations17
  • kobotoolbox.organizations.asset_usage_listOrganizations asset usage listread
  • kobotoolbox.organizations.assets_counts_getReturn counts of deployed, archived, and draft assets owned by the organizationread
  • kobotoolbox.organizations.assets_getRetrieve Organization Assets This endpoint returns all assets associated with a specific organizationread
  • kobotoolbox.organizations.assets_minimal_list_getOrganizations assets minimal list getread
  • kobotoolbox.organizations.getRetrieve organization's detailsread
  • kobotoolbox.organizations.invites_createCreate Organization Invite Create organization invites for registered and unregistered userswrite
  • kobotoolbox.organizations.invites_deleteDelete Organization Invite Organization owner or admin can delete an organization invite.destructive
  • kobotoolbox.organizations.invites_getRetrieve organization inviteread
  • kobotoolbox.organizations.invites_listList organization invitesread
  • kobotoolbox.organizations.invites_updateUpdate Organization Invite Update an organization invite to accept, decline, cancel, expire, or resendwrite
  • kobotoolbox.organizations.listList user's organizationsread
  • kobotoolbox.organizations.members_deleteRemove Member Delete an organization member.destructive
  • kobotoolbox.organizations.members_getRetrieve Member Details Retrieves the details of a specific member within an organization by username.read
  • kobotoolbox.organizations.members_listList Members Retrieves all members and pending invitations in the specified organizationread
  • kobotoolbox.organizations.members_updateUpdate Member Role Updates the role of a member within the organization to admin or member write
  • kobotoolbox.organizations.service_usage_getOrganizations service usage getread
  • kobotoolbox.organizations.updateUpdate organization's detailswrite
Me8
  • kobotoolbox.me.deleteMe deletedestructive
  • kobotoolbox.me.emails_createSet a new email The new email will be unverified and replace existing unverified, non-primary emailswrite
  • kobotoolbox.me.emails_listView current user's emailread
  • kobotoolbox.me.getRetrieve current user profileread
  • kobotoolbox.me.social_accounts_deleteDelete a social account providerdestructive
  • kobotoolbox.me.social_accounts_getRetrieve a social account providerread
  • kobotoolbox.me.social_accounts_listList user's social accountsread
  • kobotoolbox.me.updateUpdate current user infoswrite
Project views8
  • kobotoolbox.project_views.assets_counts_getReturn counts of deployed, archived, and draft assets in the project viewread
  • kobotoolbox.project_views.assets_getRetrieve assets available in project viewread
  • kobotoolbox.project_views.assets_minimal_list_getProject views assets minimal list getread
  • kobotoolbox.project_views.export_createCreate an export for the requested object Note: {obj type} can either be users or assetswrite
  • kobotoolbox.project_views.export_getRetrieve an export for the requested object Note: {obj type} can either be users or assetsread
  • kobotoolbox.project_views.getRetrieve project view of a shared project to current userread
  • kobotoolbox.project_views.listList project views for current userread
  • kobotoolbox.project_views.users_getRetrieve users available in project viewread
Stripe8
  • kobotoolbox.stripe.addons_getLists the one-time add-ons for the authenticated user's organization.read
  • kobotoolbox.stripe.addons_listLists the one-time add-ons for the authenticated user's organization.read
  • kobotoolbox.stripe.change_plan_getChange an existing subscription to a new priceread
  • kobotoolbox.stripe.checkout_link_createStripe checkout link createwrite
  • kobotoolbox.stripe.customer_portal_createStripe customer portal createwrite
  • kobotoolbox.stripe.products_listStripe products listread
  • kobotoolbox.stripe.subscriptions_getStripe subscriptions getread
  • kobotoolbox.stripe.subscriptions_listStripe subscriptions listread
Access logs6
  • kobotoolbox.access_logs.export_createCreate an export task for all users ⚠️ Only available to superuserswrite
  • kobotoolbox.access_logs.export_listList all access logs export tasks for all users ⚠️ Only available to superusersread
  • kobotoolbox.access_logs.listAccess logs listread
  • kobotoolbox.access_logs.me_export_createCreate an export task for the authenticated userwrite
  • kobotoolbox.access_logs.me_export_listList all access logs export tasks for the authenticated userread
  • kobotoolbox.access_logs.me_listAccess logs me listread
Project ownership6
  • kobotoolbox.project_ownership.invites_createCreate (send) an invite Where the assets uid are given in the payload's listwrite
  • kobotoolbox.project_ownership.invites_deleteDelete invitedestructive
  • kobotoolbox.project_ownership.invites_getInvite detail It can be useful to monitor the invite status while the transfer is being processedread
  • kobotoolbox.project_ownership.invites_listList of invites Invites sent or received by current user about transferring project ownershipread
  • kobotoolbox.project_ownership.invites_transfers_getRetrieve transfer detailsread
  • kobotoolbox.project_ownership.invites_updateUpdate an invite status Update the status of an invitewrite
Asset snapshots4
  • kobotoolbox.asset_snapshots.createAsset snapshots createwrite
  • kobotoolbox.asset_snapshots.deleteDelete an asset snapshotdestructive
  • kobotoolbox.asset_snapshots.getAsset snapshots getread
  • kobotoolbox.asset_snapshots.listList all snapshots for every asset of a userread
Asset subscriptions4
  • kobotoolbox.asset_subscriptions.createCreate an asset subscription Create a subscription to a public collection for the user.write
  • kobotoolbox.asset_subscriptions.deleteDelete a subscription to an asset Unsubscribe from a public asset.destructive
  • kobotoolbox.asset_subscriptions.getRetrieve an asset subscriptionread
  • kobotoolbox.asset_subscriptions.listList all asset subscriptions of a userread
Project history logs3
  • kobotoolbox.project_history_logs.export_createCreate an export of projects history logs ⚠️ Only available to superusers Export project history logs and send it by emawrite
  • kobotoolbox.project_history_logs.export_getList of Project History Exports ⚠️ Only available to superusersread
  • kobotoolbox.project_history_logs.listList all project history logs for all projectsread
Imports2
  • kobotoolbox.imports.getRetrieve imported filesread
  • kobotoolbox.imports.listList imported filesread
Languages2
  • kobotoolbox.languages.getRetrieve one language code - is the unique identifier of a specific languageread
  • kobotoolbox.languages.listList the languages accessible to requesting (authenticated) userread
Permissions2
  • kobotoolbox.permissions.getRetrieve a codename's permissionsread
  • kobotoolbox.permissions.listPermissions listread
Terms of service2
  • kobotoolbox.terms_of_service.getRetrieve a specific terms of serviceread
  • kobotoolbox.terms_of_service.listList the different terms of serviceread
Transcription services2
  • kobotoolbox.transcription_services.getRetrieve a transcription service code - is the unique identifier of a specific languageread
  • kobotoolbox.transcription_services.listList the transcription services accessible to requesting userread
Translation services2
  • kobotoolbox.translation_services.getRetrieve a translation service code - is the unique identifier of a specific languageread
  • kobotoolbox.translation_services.listList the translation services accessible to requesting (authenticated) userread
Users2
  • kobotoolbox.users.getRetrieve a user ⚠️ Regular users have access to active users onlyread
  • kobotoolbox.users.listList users ⚠️ Only available to superusers Search can be made with q parameterread
Asset usage1
  • kobotoolbox.asset_usage.listGet user's asset usageread
Audit logs1
  • kobotoolbox.audit_logs.listList actions performed by usersread
Email confirmations1
  • kobotoolbox.email_confirmations.createRequest another account confirmation email Sends a fresh confirmation link to an email address that is registered but nowrite
Environment1
  • kobotoolbox.environment.getRetrieve Kobo server environment configurationsread
Service usage1
  • kobotoolbox.service_usage.list<span class='label label-warning' ⚠️ Deprecated</span Track Service Usage Tracks the total usage of different services fread
Social apps1
  • kobotoolbox.social_apps.getSocial apps getread
Tags1
  • kobotoolbox.tags.listList current user's assets' tagsread
User reports1
  • kobotoolbox.user_reports.listUser reports listread

Questions

The KoboToolbox MCP server, answered.

Is there a KoboToolbox MCP server for Claude?

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 173 KoboToolbox actions across assets, organizations, me and project views, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by KoboToolbox.

What do I need to connect KoboToolbox?

KoboToolbox API token: in KoboToolbox open Account Settings > Security > API Key (or GET /token/?format=json while…. Plus your host. The free call account { op: "connections.requirements", service: "kobotoolbox" } lists exactly what to paste.

Can an AI agent delete or change things in KoboToolbox?

Only if its key allows it, and only with an explicit confirmation. 21 KoboToolbox actions are destructive, including delete a user's asset, deletes current submission and me delete. Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.

Will an AI agent use up my KoboToolbox API limit?

actionlake paces every call to the limits in the KoboToolbox service file: 10 calls a second per connection. Repeated reads are answered from cache (105 KoboToolbox actions can be), which never reaches KoboToolbox.

What does a KoboToolbox action cost?

One upstream call, the only unit actionlake bills. A list that pages bills one call per page (173 KoboToolbox actions page). Cache hits, searches, dry runs and calls KoboToolbox refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

Which KoboToolbox API does it cover?

The KoboToolbox KPI API 2.0.0 (api_v2) (OpenAPI 3.1.0) at your KoboToolbox instance's API base URL, which you enter when connecting. It is built from KoboToolbox's documentation as read on 23 October 2026. 173 actions in 25 areas, each one in the signed service file (version 1.0.0).

Does actionlake keep my KoboToolbox data, and where?

actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to 5 minutes, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your KoboToolbox credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.

Which AI clients can use it?

Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.

Give your agent KoboToolbox today.

Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.