Wufoo MCP by usefulapi
Read forms, fields, entries, reports and comments by field title, and submit entries.
Connect it
Settings → Connectors → Add custom connector
URL: https://wufoo.usefulapi.io/mcpSettings → Apps & Connectors → Advanced → Developer mode
Create connector with URL: https://wufoo.usefulapi.io/mcp{
"mcpServers": {
"wufoo": {
"url": "https://wufoo.usefulapi.io/mcp"
}
}
}claude mcp add --transport http wufoo https://wufoo.usefulapi.io/mcp{
"servers": {
"wufoo": {
"type": "http",
"url": "https://wufoo.usefulapi.io/mcp"
}
}
}18 tools, verified live
wufoo_list_formsread-onlyList the forms the API key's user can access: name, description, hash (permanent identifier), URL title, public/private, start/end dates, entry limit, created/updated timestamps. Set includeTodayCount to add EntryCountToday. Wufoo: GET /forms.json.
wufoo_get_formread-onlyFetch one form's settings by hash or URL title — name, description, confirmation message, notification emails, public flag, language, start/end dates, entry limit and links. Wufoo: GET /forms/{identifier}.json.
wufoo_get_form_fieldsread-onlyThe field structure of a form: each field's Title, Type, API ID (Field###, used for filters, sorting and submissions), required flag, default value and page. Checkbox, name, address and likert fields list SubFields with their own IDs; multiple-choice, dropdown and likert fields list Choices. Admin-only fields are not returned. Wufoo: GET /forms/{identifier}/fields.json.
wufoo_list_form_entriesread-onlyList a form's submitted entries (as in the Entry Manager), keyed by field API ID (Field105…) plus EntryId, DateCreated, CreatedBy, DateUpdated, UpdatedBy. Filter like the Entry Manager (Filter1=Field105 Contains foo, combined with match AND/OR), sort by any field ID, and page with pageStart/pageSize (max 100). For entries keyed by human field titles use wufoo_get_labeled_entries. Wufoo: GET /forms
wufoo_get_labeled_entriesread-onlyFetch a page of a form's entries with every Field### key replaced by the field's human title — e.g. "Email", or "Title — Label" for sub-fields of checkbox, name, address and likert fields ("Name — First", "Address — City"). EntryId, DateCreated and the other default/system keys stay as they are. Empty values are dropped unless includeEmpty is set. Also returns fieldIds (title → API ID) for buildin
wufoo_count_form_entriesread-onlyCount a form's entries — all of them, or only those matching filters (same filter format as wufoo_list_form_entries). Useful to plan paging. Returns {EntryCount}. Wufoo: GET /forms/{identifier}/entries/count.json.
wufoo_list_form_commentsread-onlyList the comments team members left on a form's entries in the Entry Manager: CommentId, EntryId, Text, CommentedBy, DateCreated. Optionally only for one entry. Page with pageStart/pageSize (max 100). Wufoo: GET /forms/{identifier}/comments.json.
wufoo_count_form_commentsread-onlyCount all comments on a form's entries. Returns {Count}. Wufoo: GET /forms/{identifier}/comments/count.json.
wufoo_list_reportsread-onlyList the reports the API key's user can access: name, description, hash, URL title, public flag and created/updated timestamps. Wufoo: GET /reports.json.
wufoo_get_reportread-onlyFetch one report by hash or URL title. Wufoo: GET /reports/{identifier}.json.
wufoo_get_report_fieldsread-onlyThe field structure of the form a report is built on (same shape as wufoo_get_form_fields). Wufoo: GET /reports/{identifier}/fields.json.
wufoo_list_report_entriesread-onlyThe entries that make up a report — what its datagrid widget or an export would show, keyed by field API ID. Wufoo documents no paging or filter parameters for this endpoint. Wufoo: GET /reports/{identifier}/entries.json.
wufoo_count_report_entriesread-onlyCount the entries in a report. Returns {EntryCount}. Wufoo: GET /reports/{identifier}/entries/count.json.
wufoo_list_report_widgetsread-onlyThe chart, graph (pie/bar/line) and big-number widgets on a report: Name, Type, TypeDesc, Size and Hash (the hash embeds the widget). Text and datagrid widgets are not returned. Wufoo: GET /reports/{identifier}/widgets.json.
wufoo_list_usersread-onlyList the account's users: name, email, timezone, company, owner/admin flags and create-forms/reports/themes permissions. Each user's API key is redacted from the result. Wufoo: GET /users.json.
wufoo_submit_entrycan modifyWRITE: submits a new entry to a form, exactly as if someone filled it in — it is stored and triggers the form's notifications, webhooks and integrations. Keys are field API IDs from wufoo_get_form_fields (Field1, Field105…); fields with sub-fields (name, address, checkbox) take one key per sub-field ID. Dates must be YYYYMMDD. Field validation and form limits still apply: a rejected submission ret
wufoo_add_webhookcan modifyWRITE: adds a webhook to a form, so Wufoo POSTs every new entry to the given URL. Idempotent per URL: calling again with the same URL updates its handshake key / metadata setting instead of adding a duplicate. Forms allow at most 10 integrations. Returns WebHookPutResult.Hash — keep it, it is needed to delete the webhook. Wufoo: PUT /forms/{identifier}/webhooks.json.
wufoo_delete_webhookcan modifyWRITE: removes a webhook from a form; the receiving URL stops getting new entries immediately. Needs the webhook hash returned by wufoo_add_webhook (Wufoo has no endpoint to list webhooks). Wufoo: DELETE /forms/{identifier}/webhooks/{webhookHash}.json.
Alternatives in Other
Compare →
Domain IntelligenceA
WHOIS/RDAP, DNS, SSL, live subdomains with IPs, and SPF/DMARC/DKIM for any domain.
CHChangeThisFileA
1,000+ conversion routes plus translate, extract tables, compress. 25 free/month, then a free key.
TSTHORChain SwapA
Read-only THORChain swap quotes, liquidity pools, and network status.
TITAG IT VerifyA
Verify on-chain lifecycle state and provenance of NFC-tagged physical products.
ATAtsA
Which ATS does a company use? Portal-verified answers for 743 employers + resume ATS check. No key.
ZMZooza MCP ServerA
MCP server for Zooza — class scheduling, attendance, and booking for activity businesses.