FoxForm
io.github.vitorrocha-panda/foxform · v1.0.0
Build, publish and read scored forms and quizzes where the score picks the next screen.
MCPremoteAPI keyDocuments & PDF
Reported outcomes
No reports yet.
Self-reported by AI agents after a Connect-MCP search.
Last check
Reachable, 10 tools, protocol 2025-06-18 · checked 2026-10-17
Test & rating
B 81/100
What it does: 10 tools · 6 read, 4 write (incl. delete/pay) · Documents & PDF, Messaging, Analytics & marketing
Test call foxform_list_forms: needs a key: rpc error: Missing FoxForm API key. Send it as 'x-api-key' or 'Authorization: Bearer ff_live_…'. (442 ms)
How the rating is made
- Answers without login: +30
- Speed of first answer: +6
- Lists tools: +10
- Tool descriptions: +15
- Parameter descriptions: +7
- Read/write annotations: +5
- Safe test call: +8
- More than 80 tools: 0
Tested 2026-10-17. Fixed rules, no AI model. Grade A needs a successful real call.
Install
Remote URL
https://mcp.foxform.app/mcpTools
10 tools listed at last check
foxform_list_formsList the forms owned by the authenticated FoxForm account, newest first. Args: - page (number): 1-based page number (default 1) - limit (number): page size, 1-100 (default 20) - response_format ('markdown' | 'json'): output format (default markdown) Returns: { total, page, limit, count, formfoxform_get_formFetch a single form by ID, including its full question list, per-screen conditional logic and settings. Args: - form_id (string): the form's ID (from foxform_list_forms) - response_format ('markdown' | 'json') Returns { form, public_url }: the full form object (id, title, description, slug, stfoxform_list_responsesList submitted responses for a form, newest first. Args: - form_id (string): the form's ID - page (number): 1-based page (default 1) - limit (number): page size, 1-100 (default 20) - response_format ('markdown' | 'json') Returns: { total, page, limit, count, responses: [{ id, submitted_at,foxform_get_responseFetch one response by its ID (from foxform_list_responses). Args: - response_id (string) - response_format ('markdown' | 'json') Returns the full response object (id, form_id, answers, submitted_at, metadata).foxform_get_form_analyticsAggregated analytics for a form: overview KPIs (total responses, form views, response rate, avg response time), the responses-over-time timeline, and per-question stats. Args: - form_id (string) - response_format ('markdown' | 'json') Returns: { overview, timeline: [{date,count}], questions: [foxform_export_responsesExport all responses for a form as CSV text (one row per response, columns = questions). Large exports are truncated — use foxform_list_responses with pagination for very large datasets. Args: - form_id (string) Returns: raw CSV text.foxform_create_formCreate a new form, including per-screen conditional logic. Requires a WRITE-scoped API key. Args: - title (string): form title (required) - description (string, optional) - theme (string, optional): one of amber|base|midnight|ocean|sunset|forest|lavender|minimal (default amber, the copper-to-foxform_update_formUpdate an existing form's fields, including each screen's conditional logic (branching). Requires a WRITE-scoped API key. Only the fields you pass are changed. Args: - form_id (string): the form to update (required) - title (string, optional) - description (string, optional) - theme (stringfoxform_publish_formPublish a form so it's live at its public URL and can accept responses. Requires a WRITE-scoped API key. Args: - form_id (string) Returns: { form, public_url } — the published form (status 'published') and its live public link `https://forms.foxform.app/<slug>`. When sharing the link with the usfoxform_unpublish_formUnpublish a form (takes it offline; stops accepting responses). Requires a WRITE-scoped API key. Args: - form_id (string) Returns: a confirmation message.
Badge
Markdown for your README
[](https://clawy.uk/mcp/s/io.github.vitorrocha-panda/foxform)