The Model Context Protocol (MCP) is an open standard that lets AI assistants interact directly with external services. NueForm's MCP server gives your AI full access to your workspace — forms, responses, analytics, teams, webhooks, and more.
What Can You Do?
With MCP connected, you can ask your AI things like:
- "What's my completion rate across all forms this month?"
- "Create a customer satisfaction survey with NPS scoring."
- "Export all responses from Q1 as a CSV."
- "Add sarah@company.com to the Marketing team."
- "Which questions take the longest to answer?"
Your AI translates these natural language requests into the appropriate NueForm API calls automatically.
Prerequisites
- A NueForm account (free tier works)
- An MCP-compatible AI client (see setup guides below)
Setup Guides
NueForm's MCP server URL:
https://nueform.io/api/mcp
Authentication is handled via OAuth — your AI client will open a browser window for you to sign in with your NueForm account. No API keys needed.
Claude Desktop
Add the following to your claude_desktop_config.json:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"nueform": {
"url": "https://nueform.io/api/mcp"
}
}
}
Restart Claude Desktop. You'll be prompted to sign in with your NueForm account on first use.
Claude Code (CLI)
Run the following command:
claude mcp add nueform --transport http https://nueform.io/api/mcp
Or add it to your .claude/settings.json:
{
"mcpServers": {
"nueform": {
"url": "https://nueform.io/api/mcp"
}
}
}
Cursor
Add to your .cursor/mcp.json in your project root (or global settings):
{
"mcpServers": {
"nueform": {
"url": "https://nueform.io/api/mcp"
}
}
}
Windsurf
Add to your MCP configuration in Windsurf settings:
{
"mcpServers": {
"nueform": {
"url": "https://nueform.io/api/mcp"
}
}
}
VS Code (GitHub Copilot)
Add to .vscode/mcp.json in your workspace:
{
"servers": {
"nueform": {
"url": "https://nueform.io/api/mcp"
}
}
}
Other MCP Clients
Any client that supports HTTP Streamable MCP transport can connect to NueForm. Point it to:
- Server URL:
https://nueform.io/api/mcp - Authentication: OAuth 2.0 (the client should handle the flow automatically)
Available Tools
NueForm's MCP server exposes 40 tools across 6 categories:
Forms (8 tools)
| Tool | Description |
|---|---|
list_forms | List forms with search, pagination, and filters |
get_form | Get a form with all its questions |
create_form | Create a new form with optional questions |
update_form | Update form settings and questions (incl. auto_translate — NueLingo, Pro+) |
delete_form | Delete a form and all its data (a form with signed contracts needs delete_signed_contracts: true, which permanently deletes the contracts too) |
publish_form | Publish a form with the same checks as the builder's Publish button (creates a version snapshot; returns warnings, or an error listing the questions to fix) |
unpublish_form | Unpublish a form (team forms: team admins and owners only) |
duplicate_form | Duplicate a form with all questions |
Forms are saved as drafts. publish_form — or published: true on create_form and update_form — runs the same checks as the builder's Publish button: team forms can only be published by team admins and owners, Pro features follow the form owner's plan, and booking, email-step, Fuse and composite questions must be fully configured. If a check fails, nothing is published and the tool returns the reason, the questions to fix and a hint for your AI. A form created with published: true is still created as a draft when its publish is blocked.
Analytics (5 tools)
| Tool | Description |
|---|---|
get_dashboard_analytics | Aggregated analytics across all forms |
get_form_analytics | Analytics for a specific form |
get_geo_points | Geographic scatter data for responses |
get_temporal_response | Response time distribution by hour |
get_question_timing | Per-question timing scatter data |
Responses (5 tools)
| Tool | Description |
|---|---|
list_responses | List responses with date and completion filters |
get_response | Get a single response with all answers |
delete_response | Delete a single response |
export_responses_csv | Export all responses as CSV |
bulk_delete_responses | Delete up to 100 responses at once |
Webhooks (6 tools)
| Tool | Description |
|---|---|
get_form_webhook | Get webhook config for a form |
update_form_webhook | Set or remove a form's webhook URL |
list_global_webhooks | List global webhook endpoints (Pro+) |
update_global_webhooks | Update global webhooks (Pro+) |
get_webhook_secret | Get webhook signing secret (Pro+) |
regenerate_webhook_secret | Regenerate signing secret (Pro+) |
Teams (12 tools)
| Tool | Description |
|---|---|
list_teams | List all teams you belong to |
create_team | Create a new team |
get_team | Get team details and members |
update_team | Update team name |
delete_team | Delete a team (owner only) |
list_team_members | List team members |
add_team_member | Add an existing NueForm user by email (role admin, editor or viewer, default viewer; member is a deprecated alias for viewer). For an address without an account, use create_invitation |
update_team_member | Change a member's role (admin, editor or viewer; member is a deprecated alias for viewer) |
remove_team_member | Remove a member (also cancels their pending invitations to the team) |
list_invitations | List a team's pending invitations, newest first, including expired ones (flagged expired: an expired invitation can't be accepted and no longer holds a seat; delete_invitation removes it). Link tokens are included for owners and admins only |
create_invitation | Invite someone by email — NueForm emails the invitation (role admin, editor or viewer, default viewer; member is a deprecated alias for viewer) |
delete_invitation | Cancel a pending invitation |
General (4 tools)
| Tool | Description |
|---|---|
get_user | Get your profile and plan info |
list_files | List uploaded files |
get_form_theme | Get a form's theme settings |
update_form_theme | Update colors, fonts, and styling |
Example Usage
Analyzing Form Performance
You: "What's the completion rate for my Customer Feedback form this month?"
AI: Uses
get_form_analyticswith date filters, then reports: "Your Customer Feedback form has a 73% completion rate this month (219 completed out of 300 total responses). That's up from 68% last month."
Creating a Form
You: "Create a quick 3-question customer satisfaction survey with a rating, a comment box, and an email field."
AI: Uses
create_formwith questions array, then confirms: "Done! I've created 'Customer Satisfaction Survey' with 3 questions. Want me to publish it?"
Managing Responses
You: "Export all responses from my Job Application form as a CSV so I can review them in a spreadsheet."
AI: Uses
export_responses_csvand returns the CSV data, which you can save to a file.
Troubleshooting
"Authentication failed"
Make sure you're signed into the correct NueForm account. Try disconnecting and reconnecting the MCP server in your AI client.
"Permission denied" on webhook or team tools
Some tools require specific plan tiers (Pro or Enterprise) or team roles (admin or owner). Check your plan on the billing page.
Tools not appearing
Restart your AI client after adding the MCP configuration. Some clients require a full restart to detect new MCP servers.
Rate limiting
NueForm's MCP server applies the same per-minute limits as the REST API (100 requests per minute, 500 on Enterprise), counted per user and separately from your API keys. Every request counts, including each one in a batch, and a batch can carry at most 10 requests. If you're making many requests in quick succession, the AI may need to wait between calls.