Tally MCP Server
A comprehensive Model Context Protocol (MCP) server for Tally form management. This server provides 23 powerful tools to manage forms, submissions, questions, webhooks, and enterprise-grade conditional logic directly through Claude Desktop.
Built by | Try | Get
✨ Features
23 comprehensive tools for complete Tally form management
Enterprise-grade conditional logic with critical error prevention
Advanced form building with block types documentation and templates
Form templates for common use cases (contact, survey, registration, etc.)
Complete block type reference covering 20+ input, layout, and logic blocks
Critical validation tools to prevent survey-breaking logic errors
Dynamic question management for complex conditional option sets
Full API coverage including advanced form editing capabilities
Seamless Claude Desktop integration via MCP protocol
Type-safe with proper JSON schema validation
Production-ready with error handling and logging
🚀 Quick Start
Prerequisites
Node.js (v16 or higher)
Claude Desktop application
Tally account with API access
1. Installation
2. Get Your Tally API Key
Sign up for Tally (free account works!)
Create a new API key
Copy the API key (starts with
tally_
)
3. Configure Environment Variables
4. Configure Claude Desktop
macOS Setup
Open your Claude Desktop configuration file:
Add the Tally MCP server configuration:
Important: Replace
/path/to/your/tally-mcp-server/
with your actual project path!
Windows Setup
Open:
%APPDATA%\Claude\claude_desktop_config.json
Use the same JSON structure with Windows paths:
Linux Setup
Open:
~/.config/Claude/claude_desktop_config.json
Use the same JSON structure with Linux paths
5. Test the Setup
Restart Claude Desktop completely (quit and reopen)
Start a new conversation
Try: "Can you list my Tally forms?"
🤔 Available Tools (23 Total)
Forms Management (5 tools)
get_tally_forms
- List all your formscreate_tally_form
- Create new formsget_tally_form
- Get specific form detailsupdate_tally_form
- Update forms with full API support and enhanced block structuredelete_tally_form
- Delete forms
Submissions Management (3 tools)
get_form_submissions
- List form submissions with paginationget_form_submission
- Get specific submission detailsdelete_form_submission
- Delete submissions
Questions Management (1 tool)
get_form_questions
- List all questions in a form
Webhooks Management (4 tools)
get_tally_webhooks
- List webhooks for a formcreate_tally_webhook
- Create new webhooksupdate_tally_webhook
- Update existing webhooksdelete_tally_webhook
- Delete webhooks
Form Building & Templates (2 tools)
get_tally_block_types
- Get comprehensive documentation of all available form block typesget_tally_form_templates
- Get pre-built form templates for common use cases
Advanced Conditional Logic (5 tools)
create_conditional_logic_block
- Create properly structured conditional logic blocks with validationvalidate_form_logic_flow
- Analyze and validate the logical flow of forms to identify issuesget_conditional_logic_templates
- Get pre-built conditional logic templates for common scenariosvalidate_multiple_choice_logic
- CRITICAL - Prevent "equals" vs "contains" errors that break multiple choice conditional logiccreate_dynamic_question_sets
- CRITICAL - Create questions with conditional option sets that change based on previous answers
Form Editing Helpers (3 tools)
update_form_status
- Quick status changes (BLANK, PUBLISHED, DRAFT)update_form_settings
- Update common form settingsconfigure_form_notifications
- Set up email notifications
💬 Example Usage in Claude
Once configured, you can interact naturally with your Tally forms:
"Show me all my forms"
"Create a new customer feedback form"
"What types of form blocks are available in Tally?"
"Give me a contact form template"
"Build a survey with rating questions and multiple choice"
"Create conditional logic that shows different questions based on user type"
"Validate my multiple choice logic to prevent survey failures"
"Create a dynamic question like Q5 in BestSelf survey with conditional option sets"
"Check my conditional logic flow for dead ends"
"Update my contact form to published status"
"Get the latest 10 submissions for form xyz"
"Set up email notifications for my survey"
"Add a webhook to my form that sends to my API"
"Delete submissions older than 30 days"
"Change my form password to 'newpassword123'"
"Show me templates for lead generation forms"
🔧 Advanced Configuration
Enhanced Form Building Capabilities
The server now includes comprehensive form building support:
Block Type Reference: Complete documentation of all 20+ Tally block types including input fields, layout elements, and logic blocks
Form Templates: Pre-built templates for contact forms, surveys, registration forms, and more
Professional Structures: Ready-to-use form layouts following best practices
Advanced Conditional Logic: Enterprise-grade conditional logic with validation and error prevention
Critical Error Prevention: Automatic detection of logic errors that would break surveys
Dynamic Question Management: Handle complex questions with conditional option sets
Critical Conditional Logic Features
Multiple Choice Validation: Prevents the critical "equals" vs "contains" error that breaks multiple choice conditional logic
Dynamic Question Sets: Create sophisticated questions like Q5/Q6 in complex surveys that show different options based on previous answers
Logic Flow Analysis: Comprehensive validation to catch unreachable blocks, circular logic, and missing references
Enterprise Patterns: Templates for progressive disclosure, branching surveys, qualification flows, and more
Block Types Available
Input Blocks: Text, email, phone, date, multiple choice, checkboxes, dropdown, rating, ranking, file upload, signature, payment
Layout Blocks: Statement text, question groups, dividers, images, videos, embeds
Logic Blocks: Conditional jumps, calculators, hidden fields
Custom Form Updates
The update_tally_form
tool supports comprehensive form editing including:
Basic Properties: name, status
Form Structure: complete blocks/questions array with detailed validation
Advanced Settings: 20+ options including notifications, styling, behavior
Security: password protection, submission limits
Integrations: redirects, custom CSS, data retention
Environment Variables
Alternative Configuration Methods
You can also set the API key directly in the Claude Desktop config:
🐛 Troubleshooting
Common Issues
"Command not found" error
Verify Node.js installation:
node --version
Check the absolute path in your Claude config
Ensure the
start-server.js
file exists and is executable
"Authentication failed" error
Double-check your API key in
.env
or Claude configEnsure API key starts with
tally_
Verify your Tally account has API access
Tools not appearing in Claude
Restart Claude Desktop completely (quit and reopen)
Check JSON syntax in config file (use a JSON validator)
Verify file paths are absolute, not relative
Check Claude Desktop logs for errors
"Module not found" errors
Run
npm install
in the project directoryEnsure
npm run build
completed successfullyCheck that the
build/
directory exists
Testing Locally
Debug Mode
Enable debug logging by setting environment variables:
Getting Help
If you're still having issues:
Check the GitHub Issues
Create a new issue with:
Your operating system
Node.js version (
node --version
)Error messages
Your configuration (without API keys)
📚 API Reference
This MCP server implements the full Tally API including:
Forms API - Complete CRUD operations
Submissions API - Retrieve and manage form responses
Questions API - Access form structure
Webhooks API - Real-time integrations
Supported Tally API Endpoints
GET /forms
- List formsPOST /forms
- Create formGET /forms/{id}
- Get formPATCH /forms/{id}
- Update formDELETE /forms/{id}
- Delete formGET /forms/{id}/submissions
- List submissionsGET /forms/{id}/submissions/{id}
- Get submissionDELETE /forms/{id}/submissions/{id}
- Delete submissionGET /forms/{id}/questions
- List questionsGET /forms/{id}/webhooks
- List webhooksPOST /forms/{id}/webhooks
- Create webhookPATCH /forms/{id}/webhooks/{id}
- Update webhookDELETE /forms/{id}/webhooks/{id}
- Delete webhook
🤝 Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Development Setup
📄 License
MIT License - see LICENSE file for details.
🙏 Acknowledgments
Tally - The amazing form builder that makes this possible
Claude Desktop - AI assistant with MCP protocol support
Anthropic - For the Model Context Protocol specification
Built with ❤️ by
Try
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Tools
A comprehensive Model Context Protocol server that enables Claude Desktop users to manage Tally forms with 23 powerful tools for creating, editing, and analyzing forms, submissions, questions, webhooks, and conditional logic.
Related MCP Servers
- -securityFlicense-qualityA Model Context Protocol server built with mcp-framework that allows users to create and manage custom tools for processing data, integrating with the Claude Desktop via CLI.Last updated -455
- -securityAlicense-qualityA Model Context Protocol server that enables Claude to interact with the ConnectWise Manage API to perform operations like retrieving, creating, updating, and deleting tickets, companies, contacts, and other entities.Last updated -MIT License
- AsecurityAlicenseAqualityA collection of Model Context Protocol servers that enable Claude Desktop to provide development assistance capabilities with filesystem, Git, shell command, and web search functionality without incurring API usage costs.Last updated -219MIT License
- AsecurityAlicenseAqualityA Model Context Protocol server that allows Claude Desktop to manage and execute tasks in a queue-based system, supporting planning, execution, and completion phases.Last updated -103616MIT License