Tally
Tally is a form-building platform that allows users to create forms, collect responses, and integrate with various tools and services.
Verdict
Common use cases
- Draft event registration forms from chat
- Pull survey responses into analysis threads
- Set up webhooks for Slack notifications
- Archive old forms after campaign ends
- Retrieve field schemas for integration mapping
Integration
- Vendor
- Tally
- Category
- other
- Auth
- API_KEY
- Tools
- 16
- Composio slug
tally
Tools
- Create Form
Tool to create a new form. use after preparing block definitions and optional settings.
- Create Webhook
Tool to create a new webhook for a form. use after confirming you have the form id and the callback url.
- Delete Formdestructive
Tool to delete a specific form identified by its id. use after confirming the form should be permanently removed.
- Delete Webhookdestructive
Tool to delete a specific webhook. use after confirming the webhook id.
- Get Form Details
Tool to retrieve details of a specific form. use when you need comprehensive form metadata by id. use after confirming the form id to fetch its full configuration, blocks, and stats.
- Get Form Fields
Tool to retrieve the fields of a specific form. use when you need the form's field definitions after obtaining its id.
- Get Form Responses
Tool to retrieve the responses of a specific form. use after confirming the form id and when paginated data is needed.
- Get Form Settings
Tool to retrieve the settings of a specific form. use after confirming the form id. example: "get settings for form abc123."
- Get User Info
Tool to retrieve information about the authenticated user. use when you need to confirm account details before proceeding.
- Get Webhook Events
Tool to list events associated with a specific webhook. use when you need to inspect delivery history after creating or listing a webhook.
- List Forms
Tool to retrieve a paginated list of forms. use when you need to list all forms accessible to the authenticated user.
- List Submissions
Tool to list submissions for a specific form. use when you need to paginate through form submissions.
- List Webhooks
Tool to retrieve a paginated list of configured webhooks. use when you need a full listing of webhooks across your accessible forms and workspaces.
- List Workspaces
Tool to retrieve a paginated list of workspaces. use when you need to browse workspaces accessible to the authenticated user.
- Update Form
Tool to update form details. use after confirming the form exists and obtaining its id.
- Update Workspace
Tool to update the details of a specific workspace identified by its id. use when you need to rename a workspace after confirming the workspace id.
Setup
Setup guide
- 11. Open your Switchy workspace and navigate to Settings > Integrations > Browse MCP Servers. 2. Search for Tally and click Connect. 3. Go to your Tally account settings at tally.so, find the API section, and generate a new API key with read and write permissions. 4. Paste the key into Switchy's auth prompt and click Authorize. 5. Return to any Space and type '@Tally list my forms' to confirm the connection works. 6. If you see your form list, the integration is live; if you get an error, double-check the key has the correct scopes and hasn't expired. 7. To invoke a tool, @mention Tally in a message followed by your request — for example, '@Tally create a customer feedback form with rating and comment fields'.
What teammates see: by default, memories from Tally are scoped to the Space (PROJECT visibility) - you can mark any memory PRIVATE or share it ORG-wide.
Works well with
Top models
Compatibility data appears once enough Spaces have used this MCP together with a given model.
How Switchy teams use it
Starter prompts
Build Feedback Form
@Tally create a customer satisfaction form with a 1-5 rating question and a comment box for additional feedbackOpen in a Space →
Export Recent Responses
@Tally get the most recent 50 responses from form ID abc123 and summarize the top three themesOpen in a Space →
Configure Webhook
@Tally create a webhook for form ID abc123 that sends new responses to https://hooks.example.com/tallyOpen in a Space →
Audit Form Settings
@Tally show me the settings for form ID abc123 including redirect URL and submission capOpen in a Space →
Clean Up Old Forms
@Tally delete form ID xyz789 since the Q1 campaign is over and we won't reuse itOpen in a Space →
Example outputs
Illustrative - representative of the model's voice and quality, not literal recordings.
@Tally show me all responses from the Q1 feedback form, including any partial submissions from the last 30 days
Retrieved 47 responses from form 'Q1 Team Feedback' (ID: fm_abc123). 42 are complete submissions, 5 are partial. Most recent response received 2 hours ago. Fields captured: satisfaction rating (1-5 scale), open feedback text, department dropdown, and optional email. The partial responses stopped at the feedback text field. Response data includes submission timestamps, respondent metadata where available, and all field values in structured format.
This example shows read-access to form responses with filtering. Requires API key with read scope for the target form. Tally returns paginated results; for forms with hundreds of responses, you may need to specify pagination parameters or accept a subset. Partial submissions are included by default unless filtered out.
@Tally create a new event registration form with fields for name, email, dietary restrictions, and a yes/no RSVP confirmation
Created form 'Event Registration' (ID: fm_xyz789) with 4 blocks: short text input for name, email input with validation, multiple choice for dietary restrictions (vegetarian/vegan/gluten-free/none), and yes/no toggle for RSVP confirmation. Form is live at tally.so/r/xyz789. Default settings applied: responses stored in Tally, no submission limit, thank-you message enabled. You can now retrieve the form ID to configure webhooks or adjust settings like requiring login or setting a close date.
Demonstrates form creation with mixed field types. The MCP constructs block definitions from your natural language description, but complex conditional logic or custom validation rules may require follow-up refinement. Form is immediately published unless you specify draft mode. You'll need the form ID for subsequent operations like adding webhooks or modifying settings.
@Tally set up a webhook for the customer feedback form to ping our Slack channel whenever someone submits a response rated below 3 stars
Created webhook (ID: wh_def456) for form 'Customer Feedback' (fm_abc123). Configured to POST to https://hooks.slack.com/services/YOUR/WEBHOOK/URL on every new response submission. Note: Tally webhooks fire on all submissions; filtering by rating value (below 3 stars) must be handled in your Slack webhook handler or via an intermediary service like Zapier. Webhook payload includes full response data, form metadata, and submission timestamp. Test the endpoint to confirm receipt.
Shows webhook creation for real-time notifications. Important limitation: Tally webhooks cannot filter by field values at creation time—conditional logic must be implemented in your receiving endpoint. Requires a publicly accessible HTTPS URL. Webhook failures are not automatically retried, so monitor your endpoint's uptime. You can delete the webhook by ID if routing changes.
Use-case deep-dives
When Tally MCP beats manual form management for support teams
A 6-person support team runs weekly NPS surveys and quarterly feature requests through Tally. They used to copy-paste responses into Slack and Notion manually. With the Tally MCP, they set up a webhook that pipes new responses directly into a shared AI workspace where the team triages sentiment and tags feature requests in real time during their Monday sync. The MCP's Get Form Responses tool handles pagination automatically, so even a 400-response survey loads without manual clicking. This works because their forms are stable (same structure each cycle) and they need read access more than write. If you're constantly rebuilding forms or need advanced conditional logic, you'll still do that in Tally's UI. But for teams who treat forms as data pipes into a shared workspace, this MCP cuts 2-3 hours of copy-paste per week.
How a 3-person ops team uses Tally MCP for one-off event forms
A startup ops team runs 8-10 community events per quarter. Each event needs a custom registration form with different fields (dietary restrictions for dinners, GitHub handles for hackathons). They use the Tally MCP's Create Form tool to spin up new forms from a template prompt in their AI workspace, then immediately create a webhook to route registrations into their event-planning thread. The MCP shines here because the team isn't form-design experts—they describe what they need in plain language, the AI generates the block definitions, and the form goes live in under 5 minutes. The trade-off: if your events have complex multi-step flows or payment gates, you'll hit Tally's block limitations and need to hand-code those in the UI. For straightforward registration forms that feed into a shared workspace, this MCP turns form creation into a 2-message conversation instead of a 20-minute UI session.
When Tally MCP replaces spreadsheet exports for sales handoff
A 4-person sales team uses Tally for inbound demo requests. Marketing built the form once; sales needs to pull responses twice daily to assign leads. Before the MCP, someone exported a CSV, uploaded it to Sheets, then pinged the team. Now they use Get Form Responses in their AI workspace to fetch new leads since the last check, and the AI auto-assigns based on territory and deal size. The MCP's field-retrieval tools let the AI parse custom fields (company size, use case) without hardcoding column names. This works because their form structure is fixed and they need fast read access, not form edits. If your lead volume exceeds 500/day, the pagination gets slow and you're better off with Tally's native Zapier integration. But for teams under 100 leads/week who want leads in their workspace without leaving the conversation, this MCP turns lead handoff into a background task.
Frequently asked
What does the Tally MCP let me do in Switchy?
The Tally MCP lets your AI agents create forms, manage webhooks, and pull response data directly from your Tally account. Agents can build multi-step forms programmatically, set up event triggers, and analyze submissions without you logging into Tally's dashboard. It's useful for teams that generate forms on the fly or need to sync responses into other workflows.
Do I need admin access to connect Tally via API key?
Yes. You'll need a Tally account with permission to generate API keys, which typically means you're the workspace owner or an admin. The key grants full read-write access to forms, responses, and webhooks in that workspace, so don't share it with people who shouldn't delete forms or read submission data.
Can the Tally MCP edit existing form blocks or just create new forms?
It can create new forms from scratch and delete forms entirely, but it doesn't expose a dedicated "update form" tool. If you need to change a form's structure, the typical pattern is to retrieve the current config, delete the old form, and create a new one with your edits. Not elegant, but that's how Tally's API works today.
Why use the MCP instead of Tally's embed or Zapier integration?
Use the MCP when you want an AI agent to generate or modify forms based on conversation context—like building a feedback form mid-chat or pulling response stats into a report. Tally embeds are for static publishing, and Zapier is for fixed trigger-action recipes. The MCP gives you programmatic control inside Switchy's shared workspace.
Who on my team should connect the Tally integration?
Whoever owns your Tally workspace and is comfortable issuing API keys. That person's key will be used by all agents in your Switchy workspace, so make sure they're okay with agents creating, reading, and deleting forms on their behalf. If you rotate the key later, you'll need to reconnect the MCP.