Kobotoolbox Mcp Server

io.github.drannakurasova由 GitHub 帳號 drannakurasova 發布v0.1.0更新於 Oct 24, 2026

MCP server for KoboToolbox: list forms, fetch submissions, and export field data.

已驗證STDIO僅桌面檔案與儲存資料與分析

概覽

AI 產生的概覽

讓助理列出 KoboToolbox 表單、取得問卷提交紀錄,並匯出 CSV、XLS、GeoJSON 或 SPSS 標籤格式的現場資料。

可以做什麼
將 KoboToolbox REST API v2 包裝成三個唯讀工具。list_forms 列出所連接帳戶中的每個表單或專案,包含名稱、UID、部署狀態與提交數量。get_submissions 取得某個表單的提交紀錄,支援篩選、排序與分頁。export_form_data 啟動伺服器端匯出,等待完成後回傳 csv、xls、geojson 或 spss_labels 格式的下載連結。
適用情境
適合在 KoboToolbox 收集問卷或現場資料的團隊,想直接詢問即時紀錄或取得匯出檔,而不必登入儀表板手動篩選提交。面向人道救援、發展與監測類工作流程,這類團隊可能沒有工程支援。
執行需求
以 npm 套件形式透過 stdio 在本機執行,需要 Node.js 18 或更新版本。需要全球或歐盟伺服器上的 KoboToolbox 帳戶,並透過 KOBO_API_TOKEN 環境變數提供 API 權杖,用 KOBO_SERVER 選擇主機。需要連線至 KoboToolbox API 的網路存取。
安裝前請注意
KOBO_API_TOKEN 可完整存取帳戶資料,應像密碼一樣保管;它從環境變數讀取並傳送給 KoboToolbox API。此伺服器被描述為唯讀與匯出,因此不應修改或刪除紀錄,但匯出會在伺服器端建立匯出工作並回傳下載連結。表單與提交資料會離開本機傳送到 KoboToolbox 主機。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Kobotoolbox Mcp Server,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

KoboToolbox MCP Server

A Model Context Protocol server that lets Claude (or any MCP client) read and export field data directly from KoboToolbox.

Ask in plain language — "How many intakes came in this week that need medical attention?" or "Export this project's data as a CSV" — and the assistant queries the live KoboToolbox API and answers from real records, instead of you logging in and clicking through the dashboard by hand.

As of July 2026, no KoboToolbox MCP server existed in the official MCP registry — this is the first.


Why KoboToolbox

KoboToolbox is the most widely used data-collection toolkit in humanitarian and development work. It's open-source, free to use, and runs the field operations of UNHCR and thousands of NGOs — surveys, needs assessments, monitoring — often in places with poor connectivity and no dedicated IT staff.

That last part is exactly why an MCP server matters here. The organizations running on KoboToolbox are the ones least likely to have engineers who can pull and analyze their own data on demand. Today, answering "what does this month's data actually say?" means a person logging in, filtering submissions by hand, exporting a spreadsheet, and counting. This server collapses that into a question typed in chat — and turns any MCP-capable assistant into someone who can operate the tool on the team's behalf.

There are already thousands of MCP servers for developer tooling and office apps. There were none for the platform that humanitarian responders actually run their work on. This closes that gap.


What it does

Three tools, mapped directly onto the KoboToolbox REST API v2. All read/export — this server never modifies or deletes your data.

ToolWhat it doesKey inputs
list_formsLists every form/project in the connected account — name, UID, deployment status, submission count.(none)
get_submissionsFetches the submitted records for one form, with optional filtering, sorting, and pagination.assetUid (required), query, limit, start, sort
export_form_dataKicks off a server-side export, waits for it to finish, and returns a download URL.assetUid (required), format (csv/xls/geojson/spss_labels), fields

Requirements

  • Node.js 18+
  • A KoboToolbox account (free — sign up) on either the global server (kf.kobotoolbox.org) or the EU server (eu.kobotoolbox.org)
  • Your account's API token

Getting your API token

Log into KoboToolbox, then either:

  • Account Settings → Security → Display your API key, or
  • visit https://<your-server>/token/?format=json

Treat this token like a password — it grants full access to your account's data.


Installation

bash
git clone https://github.com/drannakurasova/kobotoolbox-mcp-server.gitcd kobotoolbox-mcp-servernpm installnpm run build

Configuration

Copy the example env file and fill in your token:

bash
cp .env.example .env
env
KOBO_API_TOKEN=your_kobotoolbox_api_token_hereKOBO_SERVER=kf.kobotoolbox.org      # or eu.kobotoolbox.org

Usage

With Claude Desktop

Add this to your claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\):

json
{  "mcpServers": {    "kobotoolbox": {      "command": "node",      "args": ["/absolute/path/to/kobotoolbox-mcp-server/dist/index.js"],      "env": {        "KOBO_API_TOKEN": "your_token_here",        "KOBO_SERVER": "kf.kobotoolbox.org"      }    }  }}

Fully quit and reopen Claude Desktop. The kobotoolbox tools will appear in the tools menu, and you can just ask:

"What forms are in my KoboToolbox account?" "Show me the latest 10 submissions for the intake form." "Export that project's data as a CSV."

With the MCP Inspector

The Inspector is a browser-based test harness — the quickest way to exercise each tool directly (and to record a demo).

bash
npm run inspect

It prints an authenticated URL; open it, click List Tools, select a tool, fill in the inputs, and hit Run Tool.


Development

bash
npm run dev       # run from source with tsx (no build step)npm run build     # compile TypeScript to dist/npm start         # run the compiled servernpm run inspect   # launch the MCP Inspector against the built server

How it works

  • src/index.ts — defines the MCP server and registers the three tools, with input validation via Zod. Runs over stdio.
  • src/kobo-client.ts — a thin, typed wrapper around the KoboToolbox REST API v2 (token auth, form listing, submission fetch, and the create-then-poll export flow).

Credentials come only from environment variables — nothing is hardcoded, so the same server works against any KoboToolbox account or form.


Roadmap

Possible extensions:

  • Write access (create submissions, edit validation status)
  • Per-form schema/question introspection so the assistant understands field meanings
  • Support for private/self-hosted KoboToolbox instances

License

MIT

來源:README.md,提交 9a34c9f

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.1.0最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分