Tally MCP
Manage Tally.so forms through AI conversation. Create, update, and organize forms using natural language instead of web interfaces. Features safe bulk operations and works with all major MCP clients.
README
Tally MCP Server
A Model Context Protocol (MCP) server that provides AI assistants with secure access to Tally.so form management capabilities.
New to Tally?
Use the badge above to save 50% for 3 months.
I'll earn a small commission (at no extra cost to you) which helps fund ongoing maintenance of this open‑source project.
About
Tally MCP Server brings the power of Tally.so form management directly into your AI workflow. Instead of context-switching between your AI assistant and Tally's web interface, simply describe what you need in natural language and let the AI handle all the API interactions.
Why This Exists
Form creation and management shouldn't break your flow. Whether you're a developer creating test forms, a content creator building registration pages, or anyone who finds themselves constantly jumping between tools, this MCP server keeps you in the conversation.
Key Features
🎯 Natural Language Form Management
- Create forms by describing what you need: "Build a client intake form with name, email, and project details"
- Update existing forms without opening the Tally interface
- Clone successful forms as templates for future use
🛡️ Safety-First Bulk Operations
- Delete multiple forms using pattern matching ("all forms starting with 'E2E Test'")
- Mandatory preview → confirm → execute workflow prevents accidents
- Granular exclusion controls ("delete all test forms except these 3 templates")
📊 Complete Form Lifecycle
- Real-time response analytics and completion rates
- Export submissions to CSV/JSON
- Team management and permission controls
- Workspace organization tools
⚡ Developer Experience
- Built in TypeScript with full type safety
- Deployed on Cloudflare Workers for global speed
- 90% test coverage
- Works with Claude Desktop, Cursor, Windsurf, and any MCP-compatible client
Perfect For
- Developers who create lots of test forms and need easy cleanup
- Content creators building registration forms for workshops and events
- Teams managing multiple form projects across workspaces
- Anyone tired of clicking through form builders when they could just describe what they want
Transform form management from a context-breaking chore into a seamless part of your AI-powered workflow.
🚀 Quick Start
Step 0 – Create a discounted Tally account (optional)
If you don't already have a Tally account, grab the 50% builder's discount before continuing. You'll support this repo while saving money—win‑win!
Option 1: Claude.ai Integration (Recommended)
Use the battle-tested mcp-remote package:
Claude Desktop Configuration (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"tally-remote": {
"command": "npx",
"args": [
"mcp-remote",
"https://tally-mcp.focuslab.workers.dev/mcp",
"--header",
"Authorization: Bearer YOUR_AUTH_TOKEN"
]
}
}
}
Replace YOUR_AUTH_TOKEN with your personal server authentication token.
Option 2: Direct Integration (Cursor, etc.)
For clients that support custom headers:
{
"mcpServers": {
"tally": {
"url": "https://tally-mcp.focuslab.workers.dev/mcp",
"transport": "http-stream",
"headers": {
"Authorization": "Bearer YOUR_AUTH_TOKEN"
}
}
}
}
Option 3: Local Proxy (Alternative)
If you prefer a custom solution:
-
Start the local proxy:
npm run proxy -
Configure Claude.ai:
- Server URL:
http://localhost:3001/mcp - Transport:
http-stream - Authentication: None
- Server URL:
🔧 Configuration
The server uses your personal authentication token to securely access your Tally data.
Required Environment Variables:
TALLY_API_KEY: Your Tally API key (configured in Cloudflare Workers)AUTH_TOKEN: Server authentication token (configured in Cloudflare Workers)
🛡️ Security
- ✅ Server-level authentication: Only authorized users can access your data
- ✅ Secure bridge: mcp-remote handles authentication transparently
- ✅ Encrypted transport: All communications use HTTPS
- ✅ Token-based auth: Industry standard Bearer token approach
🛠️ Available Tools
- create_form: Create new Tally forms with custom fields
- modify_form: Update existing form configurations
- get_form: Retrieve detailed form information
- list_forms: Browse all your forms
- delete_form: Remove forms you no longer need
- get_submissions: Access form submission data
- analyze_submissions: Get insights from form responses
- share_form: Generate sharing links and embed codes
- manage_workspace: Handle workspace settings
- manage_team: Team member and permission management
📱 Multi-Client Support
Supported MCP Clients:
- ✅ Claude.ai (via mcp-remote)
- ✅ Cursor (direct authenticated or via mcp-remote)
- ✅ Windsurf (via mcp-remote)
- ✅ Any MCP client supporting HTTP Stream transport
🔄 Development
Local Development
npm install
npm run dev
Testing
npm test
npm run test:coverage
Continuous Integration
In your CI (e.g., GitHub Actions), run:
npm ci
npm run test:coverage
Jest enforces a >90% coverage threshold via jest.config.js, causing the build to fail if coverage is below this level.
Deployment
npm run build:worker
npx wrangler deploy
📚 Documentation
- MCP Protocol: Model Context Protocol
- Tally API: Tally Developer Documentation
- Cloudflare Workers: Workers Documentation
- mcp-remote: NPM Package
🤝 Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests
- Submit a pull request
📄 License
MIT License - see LICENSE file for details.
Built by Chris Cameron • LearnWith.cc
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.