CLAUDE.md; in claude.ai it goes in the chat and the answer is an artifact, which cannot post to the endpoint.
Connect over MCP
Connect over MCP
Formcarry’s MCP does everything you would do in the dashboard for your forms and submissions: create a form, set its recipients, spam blocker and webhooks, list and search submissions, mark spam, and read where each submission was delivered. Claude connects to it with one command in Claude Code, or as a custom connector in claude.ai, so it manages the form it built instead of only writing the front end.
Prerequisites
Before you start, you need:- A formcarry account. Sign up is free.
- A form in the dashboard. Its endpoint is on the form’s Setup page. The examples use
https://formcarry.com/s/AbC123xyz; put yours in its place. - The form’s name and id from its page in the dashboard, for the prompt.
1. Provide the instructions
In Claude Code, runclaude in your project. To connect the form, paste this prompt into the session with your form’s name and id in place of the placeholders:
CLAUDE.md in the project root; /init creates one:
2. Check what it changed
In Manual mode Claude Code shows each change and asks before editing; in VS Code the change is a side by side diff. In Auto mode it edits without asking, so review withgit diff. In claude.ai, the artifact’s lower right corner opens its code for the same checks.
To check a plain form, look for the endpoint in action, method="POST", a name on every field and email on the address field:
fetch URL and Accept: application/json in the headers:
3. Send a test submission
Run the project on your machine and submit the form from your browser. The submission is on the form’s page in the dashboard, and the notification email arrives at your account’s address. If Claude Code sent a test from your terminal, wait 15 seconds before yours rather than submitting at once, otherwise the endpoint answers429: your terminal and your browser share one IP address against that limit.
What an artifact cannot do
The claude.ai viewer runs each artifact on a sandboxed origin under a content security policy.fetch and XHR reach only the page’s own origin and the Google Fonts hosts, so a form inside an artifact cannot post to the endpoint, and publishing does not move it out of that viewer. Copy or download its code and run it in your project rather than testing in the viewer, otherwise nothing arrives in the dashboard. Or give the prompt to Claude Code.
What’s next
- What every form needs: field names, hidden inputs, limits and the answers.
- Spam protection: add a challenge once the form is live.
- Connect over MCP: let the tool manage the form, not only write it.