If you're an AI reading this: skill.md has everything you need.Read it →
Explorer/MCP/florian/weavely
REMOTE

Weavely AI Forms & Surveys

florian/weavely

Weavely is an AI-native form builder. This MCP server exposes 13 tools that cover the entire form-building lifecycle: create forms, add and update 25+ element types (text, rating, matrix, file upload, signature, and more), configure conditional logic, set themes, manage multi-step pages, and publish — all from natural language. The AI builds incrementally while a live preview URL updates in real time. When you're done, a single publish_form call returns an editor link to claim full ownership on the Weavely platform. No authentication required. After publishing, connect your form to Google Sheets, Zapier, n8n, HubSpot, Notion, and more.

13 tools available
The Newcomer
Hasn't been around long. Nothing caught our attention, but there isn't much history to go on yet.
Time indexed (1mo)
13toolsRemote/ HTTP1moindexed
100% uptime · 315ms avgChecked May 17, 2026
Quality Score
66/95
Deep
Risk Score
0/100
Clean
How is this calculated?
Quality Breakdown
Tenure10/20
38 days indexed
Capability17.9/25
Tools: 5.9/13 (13 tools)
Description: 5/5
Endpoint: 7/7
Adoption12.7/25
Use count: 12.7/20 (1,524 uses)
Multi-registry: 0/5 (1 registry)
Reliability25/25
Currently live: 10/10
Uptime history: 15/15 100% (52/52 checks)
Security scan: 0 pts in v1.0; ready to weight when coverage improves
Risk
0Clean
No signals detected.
The scanner shows
13 tools. Nothing caught our attention.
First indexed Apr 9, 2026
Server Profile
Tools catalogued
13
13 tools available. Full list below.
Hosting
Remote / HTTP
Runs on the internet. No access to your filesystem, SSH keys, or environment variables.
Registry presence
Not verified
Not yet verified by the Official MCP Registry.
Liveness
100%
Based on 48 checks. Average response: 315ms.
Publisher Verification
Not yet verified by the Official MCP Registry.
Endpoint
https://weavely--florian.run.tools
Tools (13)
create_form
Create a new Weavely form. Returns a formId and a live preview URL. IMPORTANT: This MUST be the first tool you call — all other tools require the formId returned by this tool. IMPORTANT: Call all tools ONE AT A TIME, sequentially. NEVER call multiple tools in parallel. IMPORTANT: Pass the formId from this response to ALL subsequent tool calls. The preview URL is a live link the user can open to see the form at any point. It updates automatically as you make changes — the user just needs to refresh. This is a PREVIEW only — the form is not published yet. The user CANNOT claim, sign up, or take ownership of the form from the preview URL. The ONLY way to publish is through the publish_form tool. When the user wants to publish, save, or share their form, you MUST use the publish_form tool. Do NOT tell them to visit the preview URL to claim or publish — that is not possible. After calling this, use add_element, add_page, set_theme, etc. to build the form step by step. Always share the preview URL with the user so they can follow along. PLATFORM FEATURES NOT AVAILABLE IN THIS TOOL: Weavely supports many features that are only available on the Weavely platform (not through this tool). If the user asks about any of the following, let them know the feature exists but they need to publish their form first and then configure it on the Weavely platform: - Integrations: Make, Zapier, n8n, Google Sheets, HubSpot, Airtable, Notion, and more - Email notifications: receive an email on each submission, or send confirmation emails to respondents - Social media preview: customize the Open Graph image, title, and description for link sharing - Custom domain: serve the form on the user's own domain - Form icon: customize the favicon/icon shown in the browser tab - Embed codes: get HTML embed snippets to embed the form on any website - Image content: adding images to image-choice options or using the image element requires the Weavely platform (image uploads are not supported through this tool) Tell the user to publish first (via publish_form), then visit the Weavely editor to set these up.
get_form_summary
Get the current form structure: pages, elements (with IDs, types, labels), theme, and settings. Call this to see available page and element IDs before making edits. Requires create_form to have been called first.
add_element
Add an element to a page. The element is appended to the end of the page. Call this sequentially — NEVER call multiple add_element in parallel. Use get_form_summary to see available pageIds. Element types and their specific params: - Input fields: input-text, input-number, input-email, input-phone-number, input-url, input-time, input-date, text-area - File upload: input-file (supports maxFiles, maxFileSize, allowedFileType) - Choice fields: radio-buttons, checkbox-buttons, dropdown, ranking (require options; support randomize; radio/checkbox-buttons also support allowOtherOption) - Image choice: image-choice (requires options; supports multiple selection. NOTE: to assign images to options, use the Weavely platform after publishing) - Single checkbox: checkbox (a single yes/no toggle; supports defaultChecked) - Matrix: matrix (a grid question. matrixRows are the row labels, matrixColumns are the column options [{label, value}], matrixMultiple allows selecting multiple columns per row) - Rating: star-rating (defaults to 5 stars; supports stars count), scale-rating (defaults to 10; supports scales count), range-slider (defaults 0-100; supports min, max, step) - Display: heading, paragraph (label is the display text; paragraph supports HTML) - Media: embed-html (codeSnippet), embed-audio (url), embed-video (url). NOTE: the image element is not available through this tool — use the Weavely platform to add images. - Special: signature For choice types, provide options as [{label: "...", value: "..."}]. The value is the internal identifier (use lowercase-kebab-case).
update_element
Update an existing element's properties. Only send the fields you want to change. Use get_form_summary to find element IDs. Note: you cannot change an element's type — remove it and add a new one instead.
remove_element
Remove an element from the form by its ID. Use get_form_summary to find element IDs.
reorder_elements
Move an element to a new position within the same page or to a different page. Use get_form_summary to see current page and element IDs.
Show all 13 tools ↓
add_page
Add a new form page. By default it is inserted before the ending page. Use this to create multi-page forms. After adding, use add_element to populate the page.
remove_page
Remove a form page and all its elements. Cannot remove the ending page or the last remaining form page.
reorder_pages
Reorder the form pages. Provide the form page IDs in the desired order. The ending page is always kept last automatically — do not include it.
set_theme
Set the form's visual theme. Choose colors, fonts, layout, and component styles that match the form's topic and tone. Be creative — pick a cohesive palette. Only send what you want to change — unset properties keep their current values. COLORS (all hex values): - primary: main accent color (buttons, highlights) - background: page background - text: general body text - question: question/label text - answer: user input text - secondary: secondary UI elements - surface: input field backgrounds - border: input borders, dividers - error: validation error color FONT: - family: global font family shorthand (Google Fonts compatible: Inter, Poppins, Playfair Display, Space Grotesk, DM Sans, Lora, etc.) - text: { size: "16px", family: "Inter" } - headings: { size: "32px", family: "Playfair Display" } LAYOUT types: - "under": questions stacked vertically (default) - "left": labels left, inputs right - "right": labels right, inputs left - "clean": minimal, no visual separators - "over": background image with overlay - "through": full-bleed background COMPONENTS: - form: { variables: { gap: "30px", maxWidth: "700px", textAlign: "left" } } - input: { preset: "default" | "square" } - button: { preset: "default" | "square", hoverAnimation: { preset: "default" | "grow" } } - question: { variables: { fontWeight: "500" } }
set_settings
Configure form-level settings. Only send what you want to change. Supported language codes: ar, ca, zh-Hans, zh-Hant, hr, cs, da, nl, en, et, fi, fr, de, el, he, hi, hu, id, it, ja, ko, no, pl, pt, ru, es, sv, tr, uk, vi.
set_logic
Set conditional logic rules and/or event triggers. This replaces ALL existing rules/triggers. Use get_form_summary to see element and page IDs for building conditions. Logic rule structure (FOLLOW THIS EXACTLY): { "id": "<uuid>", "name": "Human-readable rule description", "conditions": [ { "id": "<uuid>", "variable": "field:<elementId>", "operator": "isNotEmpty", "value": null } ], "logicalOperator": "all", "actions": [ { "id": "<uuid>", "name": "showElement", "data": { "elementId": "<elementId>" } } ] } CRITICAL: In actions, the action type key is "name" NOT "type". Using "type" will break the form. CRITICAL: In conditions, always include "value" (set to null for operators like isEmpty/isNotEmpty that don't need a value). Condition operators: isEmpty, isNotEmpty, isEqual, isNotEqual, contains, doesNotContain, startsWith, endsWith, lessThan, lessThanOrEqual, greaterThan, greaterThanOrEqual For isEqual/isNotEqual/contains/etc., set "value" to the comparison string. Action names: hideElement, showElement, hidePage, skipToPage, setEnding Action data: { elementId: "..." } for element actions, { pageId: "..." } for page actions. logicalOperator: "all" (AND) or "any" (OR) for combining multiple conditions. Event trigger structure (FOLLOW THIS EXACTLY): { "id": "<uuid>", "name": "Human-readable trigger description", "trigger": { "name": "formSubmitted" }, "actions": [ { "id": "<uuid>", "name": "openUrl", "data": { "url": "https://example.com" } } ] } CRITICAL: "trigger" is an object with a "name" key, NOT a plain string. Trigger names: formSubmitted, formLoaded, formPageShown Action names: openUrl (requires data.url), restartForm (no data needed) All IDs (rule id, condition ids, action ids) must be UUIDs.
publish_form
Publish the form so the user can keep it, share it, and collect real responses. ONLY call this when the user EXPLICITLY asks to publish, save, or share their form. Do NOT call this automatically — the preview URL is sufficient during the building process. Creates a permanent copy of the form and returns an editor URL. The user can create a Weavely account there to claim full ownership. IMPORTANT: If this tool fails, tell the user there was an error publishing and they should try again. Do NOT suggest visiting the preview URL to claim or publish — that is NOT possible. The preview URL is a temporary link that cannot be claimed or converted into a permanent form.

Is this your server?

Create a free RNWY account to connect your on-chain identity to this server. MCP server claiming is coming; register now and you'll be first in line.

Create your account →
Similar servers
Press Release
press-release MCP — wraps StupidAPIs (requires X-API-Key)
Scream Void
scream-void MCP — wraps StupidAPIs (requires X-API-Key)
MCP Server for LimeSurvey
Enables interaction with LimeSurvey API to create and manage surveys, questions, question groups, activate surveys, and export responses through standardized MCP endpoints.
io.github.zenml-io/mcp-zenml
MCP server for ZenML - browse stacks, pipelines, runs, artifacts & trigger pipeline runs via API
Linear
Linear MCP — wraps the Linear GraphQL API (OAuth)
HAPI MCP Server
HAPI MCP server: Dynamically exposes OpenAPI REST APIs as MCP tools for AI assistants
Indexed from Smithery · Updates nightlyView on Smithery →