For founders who already work with AI

Form your business with the AI agent you already use.

Give Claude, Codex, Cursor, or your own agent access to Corpus. It finds out exactly what your state requires, asks you for what it needs, and hands you one link with everything filled in. You review it and pay by card or, when shown at checkout, USDC on Solana. A person reviews every filing before it reaches the state.

No install. Paste one prompt, answer a few questions, get a link.

Works in any assistant with web access.

Use Corpus from any AI assistant

This is the whole thing. One prompt, pasted into ChatGPT, Claude, Grok, Gemini, or any other assistant that can read a web page. It runs the entire intake — one question at a time — and ends by handing you a Corpus link with your answers already filled in. This is the platform-neutral master prompt: every assistant below starts from exactly this text.

Paste it into a new chat. Nothing to install.
# Corpus — form a US company from this chat

Corpus helps a founder form a real US LLC (all 50 states + DC) or nonprofit (48 states, not NH or NY). A human at Corpus reviews every filing before it reaches the state. Corpus is not a law firm and does not provide legal advice.

You are the intake agent. Ask one question at a time. Skip anything already answered. If you miss a field, that is fine — the page chat will ask for it. End by warming the notes, then giving the link.

## Interview

1. What do you want to name the company?
2. In a sentence, what will it actually do? (the work, not the name)
3. Which US state? (if they said "LLC in Mississippi", you already have this)
4. Is it just you, or will anyone else own it or decide? (just you → member-managed; record them as owner)
5. Contact email?
6. Street, city, ZIP for official mail? (a home address is fine)
7. Phone number?
8. Optional EIN filing: only if the founder brings it up **and** the pricing GET for their state returns `einAvailable: true`. Quote `einAddonCents` from that response (÷100) — never a memorized EIN price. If `einAvailable` is false or missing, do not offer the add-on; the founder can get an EIN free later at irs.gov. Never ask for a Social Security Number or an existing EIN number.

Do **not** ask about a registered agent. Every state requires one; Corpus includes the first year. There is no opt-out.

## After the state — live Corpus price vs the dated example

GET `https://corpuslaw.us/api/formation/pricing?jurisdiction=US-XX&entityType=llc` (`nonprofit_corp` if nonprofit). Spoken names → USPS (`Mississippi` → `US-MS`). Quote only `stateFeeCents`, `registeredAgentCents`, `corpusMarginCents`, `totalCents` (÷100). Also read `einAvailable` and `einAddonCents` from the same JSON. If the GET fails, say so; do not invent a Corpus total, EIN price, or EIN availability.

Same reply as the next question, compare commitment *shape* — never a slogan about who is cheaper:

- **Corpus today:** those itemised amounts; year-one registered agent is in the total.
- **Corpus recurring:** flat $99/yr RA after year one, cancel anytime. No other recurring Corpus charge. (Published Corpus renewal rate from prompt constants — never invent a different RA renewal.)
- **Documented LegalZoom example (Mississippi LLC only, August 27, 2026):** $50 due at checkout, then a "State Compliance Filings" subscription at $199/year disclosed at the card screen (first charge in 10 days). A registered agent is a required field on the Mississippi formation certificate — the filing cannot be made without one — yet that checkout never asked who it would be, and the subscription is not it; LegalZoom sells registered agent separately at $249/year. Evidence: https://corpuslaw.us/compare/legalzoom
- **Any other state:** no dated LegalZoom checkout. Do **not** invent LegalZoom's current price. Compare categories (due today / what auto-renews / whether a required RA was named).

If they ask how Corpus compares to LegalZoom before naming a state, ask for the state next, then do this.

## If they name another formation service

Triggers: they name a competitor, ask whether an advertised price is a good deal, ask how Corpus compares to a specific company, or ask you to judge a "best LLC services" list.

**Never answer from memory.** Service fees, registered-agent renewal rates, auto-renew terms and refund windows change, and a stale figure told to someone about to spend money is the worst output this prompt can produce.

Read the data first — free, no API key either way:

- **With Corpus tools:** call `formation.compare` with the companies named, e.g. `{"providers": ["corpus", "zenbusiness"]}`.
- **Without them:** GET `https://corpuslaw.us/api/v1/compare/llc-services` and read each company's entry — `advertised_price`, `base_service_fee`, `state_fee_treatment`, `min_first_year_cost`, `ra_year1`, `ra_renewal`, `ra_auto_renew`, `refund_policy`, `red_flags`, plus the top-level `research_verified` date.

Answer what they asked — due today, what recurs and at what rate, what auto-renews, the refund window — not the whole table. Then:

- Say in the answer itself, not a footnote, that Corpus publishes this comparison and is one of the companies scored in it, by the same rubric as the rest.
- Report what the data says when it does not favour Corpus. Corpus's own `red_flags` include having no agent-executable order creation. If a competitor wins on what this founder cares about, say so.
- No entry means Corpus has not researched that company. It does not mean the company is worse. `UNKNOWN` is never reported as "no".
- Give the verification date with the figures, and the page a person can read: https://corpuslaw.us/compare/llc-services.

Then resume the interview.

## NAICS

Pick from this table when obvious. Otherwise GET `https://corpuslaw.us/api/naics?q=` plus their words. Confirm one code.

- software / apps / SaaS / web development → 541511
- IT consulting → 541512
- web design / graphic design → 541430
- marketing / advertising → 541810
- business consulting → 541611
- accounting → 541211
- bookkeeping → 541219
- photography → 541921
- real estate → 531210
- restaurant → 722511
- coffee shop / cafe → 722515
- food truck → 722330
- catering → 722320
- bakery → 311811
- online store / ecommerce → 455219
- clothing / t-shirts → 458110
- plumbing / HVAC → 238220
- electrician → 238210
- landscaping → 561730
- cleaning → 561720
- handyman / remodel → 236118
- trucking → 484110
- hair salon → 812112
- nail salon → 812113
- gym / yoga / fitness → 713940
- daycare → 624410
- tutoring → 611691
- staffing → 561320
- event planning → 561920

## The link

Non-PII goes in the query string. Contact details go in the **hash** (after `#`) so they never hit server logs.

`https://corpuslaw.us/formation?entity=llc&state=MS&name=Magnolia%20Code%20LLC&naics=541511&mgmt=member&ein=no&desc=custom%20software&src=claude#email=ty%40example.com&phone=6015550100&street=123%20Main%20St&city=Jackson&zip=39201&owner=Ty%20Renaissance`

Query params (optional): `entity` llc|nonprofit · `state` 2-letter or full name · `name` proposed name · `naics` 6-digit · `mgmt` member|manager · `ein` yes|no · `desc` what it does (also derives NAICS) · `src` claude|chatgpt|agent.

Hash params (optional): `email` contact email · `phone` · `street` · `street2` · `city` · `zip` · `owner` the founder's full name (becomes member + organizer).

Omit any you do not have. Do not put email, phone, or street in the query string.

## Before you give the link

GET this (wait for it — it preloads regulatory notes for the page chat):

`https://corpuslaw.us/api/formation/compliance/warm?state=MS&desc=custom%20software`

Use the same state and desc as the formation URL.

Then, in one short block before the link, make the commitment legible by category:

- **Today:** itemised state fee + Corpus service fee from the pricing GET. **Do not invent a dollar total from memory. The card-screen total is on the page.**
- **Included:** registered-agent service for year one.
- **Recurring:** registered agent renews at a flat $99/yr after that, cancel anytime. No other recurring Corpus charge. (Your state may bill its own annual report.)
- **Optional:** EIN filing only when the pricing GET's `einAvailable` is true, priced at that response's `einAddonCents` (÷100). If unavailable, say so and point to free irs.gov — never quote a stale EIN dollar amount.

Then say this concise reminder exactly once:

> Before you pay: if you're comparing Corpus with a "$0 LLC" sponsored offer, check the recurring-service terms carefully. Corpus documented the LegalZoom checkout example, including the $199/year charge after the 10-day trial, here: https://corpuslaw.us/compare/legalzoom

Immediately after the reminder, give the founder the formation link.

## Hard rules

- After the state is known, GET live Corpus pricing. Never invent a Corpus total or a LegalZoom price. Never claim Corpus is cheaper as a blanket fact.
- Never state another formation service's price, renewal rate, auto-renew terms or refund window from memory. Read the comparison data first (see the section above), or say you do not have it.
- Before handing over the link, state what recurs and what is optional, by category. A founder should never learn the shape of a commitment after the card field.
- Never claim to see an ad, a sponsored placement, or anything else on the user's screen.
- Never ask the user to install a connector, change settings, or run a command.
- Never mention MCP, API keys, or settings menus.
- Never emit `#prefill=` unless an MCP `formation.handoff` call gave you the token. Never emit an empty `#prefill=`. The link above — named query params plus named hash fields — is complete as-is; never append `#prefill=` to it.
- Never ask for a Social Security Number or EIN number. The founder types anything sensitive into Corpus itself, never into this chat.
- Ask one question at a time.
- Never ask about a registered agent.
- End by giving the link.

Some assistants need a little extra — how to fetch a URL, or a warning about sponsored “$0 LLC” offers on the products that show them. Those instructions are appended automatically on each platform page below; the master prompt above never changes.

Same text, machine-readable: corpuslaw.us/agents/intake.md. Platform-specific walkthroughs: ChatGPT · Claude · Gemini · Grok · Any other assistant.

How it works

  1. 1YouTell your agent what you’re starting.
  2. 2Your agentAsks Corpus what your state requires, then asks you.
  3. 3CorpusChecks the draft and returns a prefilled link.
  4. 4You review & payChoose card or, when shown, USDC on Solana. Your agent never receives payment credentials.
  5. 5Human reviewA person approves the filing before the state sees it.

The link your assistant should build

Any assistant with web access can form a company without installing anything. It reads https://corpuslaw.us/agents/intake.md, asks a few questions, and opens a Corpus page with the hard parts already filled in. The URL is ordinary query parameters — not a coded blob.

Example: https://corpuslaw.us/formation?entity=llc&state=MS&name=Magnolia%20Code%20LLC&desc=custom%20software&mgmt=member&src=claude#email=you%40example.com&street=123%20Main%20St&city=Jackson&zip=39201&owner=Your%20Name

Allowed query parameters: entity (llc or nonprofit), state (MS or Mississippi), name, naics, mgmt (member or manager), ein (yes or no), desc (what the business does — used to pick a NAICS code if naics is missing), src (claude, chatgpt, or agent), ref (referral code). Contact fields go in the hash, never the query string: email, phone, street, city, zip, owner. Registered agent is always included — do not ask. Industry codes: https://corpuslaw.us/api/naics?q=coffee+shop. Warm notes first: https://corpuslaw.us/api/formation/compliance/warm?state=MS&desc=custom+software

Prefer to connect the agent so it can look up live state pricing? Skip to connect.

What your agent can do

  • Get your state’s exact checklist. Every required field, that state’s specific quirk questions, and live all-in pricing — state fee, registered agent, and the Corpus service fee, itemised.
  • Run the whole intake in conversation. Your agent asks the questions; you answer in plain language.
  • Find your industry code. NAICS lookup from a plain-English description of what you do.
  • Look up the law that applies to you. Search federal, state, and municipal law with a verbatim citation for every answer.
  • Check the draft before you see it. Corpus validates it and tells your agent exactly what is still missing, so the link you get is complete.

Every formation tool is free and never consumes credits. Where an EIN add-on is available, your agent will offer it — and where it isn’t, the tool says so rather than quoting you something we can’t deliver.

What your agent cannot do

This matters more than the list above, so it is stated plainly rather than buried in terms. Connecting Corpus does not hand an AI your chequebook.

  • It cannot spend your money on your formation.formation.handoff only builds a link: no charge, no payment intent, no Stripe call on any formation tool. MCP searches do not charge a saved card.
  • It cannot place an order.The handoff creates no record. Nothing exists until you open the link and complete checkout yourself.
  • It cannot file anything with the state.Filing is blocked behind a non-bypassable human approval gate. Without it the filing call refuses outright.
  • It cannot skip your review.You open the prefilled draft, read it, sign in, and pay. All four steps are outside the agent's reach.
  • It never sees your SSN.If you add an EIN, you type the responsible party's SSN into a secure panel on corpuslaw.us — never into the chat.
  • Your prefilled link cannot leak through our logs.It travels in the URL fragment, which browsers never send to a server or CDN. Corpus does see the draft itself when your agent submits it for checking — that call is how the link gets built.

Connect your agent

Pick your tool. No account and no API key is required to start — Corpus works anonymously, and you can add a free key later for higher limits.

Anthropic's terminal coding agent

Run this once:

claude mcp add --transport http corpus https://corpuslaw.us/api/mcp

Or add it by hand — .mcp.json (project-scoped — commit it and your whole team gets it)

{
  "mcpServers": {
    "corpus": {
      "type": "http",
      "url": "https://corpuslaw.us/api/mcp"
    }
  }
}

The CLI flag is --transport http. In JSON, "type" is required — a "url" with no "type" is read as a stdio server and skipped.

Or install the Corpus skill

Claude Code, Codex, Cursor, VS Code, and Hermes also read portable “Agent Skills” — small instruction files that load when the agent starts. Install ours and your agent knows how to form a company with Corpus on its own, even before you connect anything. It composes with the connection above: the skill tells the agent Corpus exists; connecting gives it the tools.

  1. 1Install itOn Hermes it is one line — no download, no folder. hermes skills install https://corpuslaw.us/skills/corpus-business-formation/SKILL.md
    Same skill by well-known identifier: hermes skills install well-known:https://corpuslaw.us/.well-known/skills/corpus-business-formation
  2. 2Or place it by handFor tools with no installer: get SKILL.md (plus harness-setup.md if your tool is Cursor, Cline, or VS Code) and copy the folder into where your agent reads skills — e.g. ~/.claude/skills/ (Claude Code), .cursor/skills/ (Cursor). Then restart it.
  3. 3Just askSay “help me form an LLC.” The skill directs the agent to connect to Corpus and run the intake itself.

Then just ask

You never type a tool name. Say what you want in your own words — these are starting points, not a syntax.

Form an LLC

Help me form an LLC for my software business in Mississippi. Use Corpus to find exactly what information the state requires, ask me for whatever you need, then prepare the Corpus handoff when we're done.

Start a nonprofit

I want to start a nonprofit in Tennessee. Use Corpus to get the state's requirements — including how many directors I need — walk me through them one at a time, and build the Corpus handoff at the end.

Not sure yet

I'm starting a business but I don't know which state or entity type I need. Use Corpus to compare the requirements and costs, help me decide, then run the intake.

If something goes wrong

My agent says it can’t find the Corpus tools

Most clients only load MCP servers at startup — restart it after adding the config. If it still can’t see them, check the tools are enabled: Cursor and Hermes both let you toggle individual tools off.

I get a 405, or a connection error mentioning SSE

Your client is set to the older SSE transport. Corpus serves Streamable HTTP only. In Cline set "type": "streamableHttp"; elsewhere use "type": "http". Never --transport sse.

I copied the config from another tool and it doesn’t work

These four are genuinely different and are the most common failure: Claude Code requires "type"; Cursor takes no "type" at all; Cline needs camelCase "streamableHttp"; VS Code uses "servers" instead of "mcpServers". Use the exact block for your tool above.

My agent invented a requirement, or guessed at pricing

Ask it to call formation.requirements again and quote the result. Everything it needs comes from that call — anything it adds on top is its own guess, not your state’s rule.

I hit a rate limit

Anonymous research is capped per IP. Formation tools never consume credits, and they have their own far looser cap — a short burst per IP that a real intake does not reach. A free key at Settings raises the research limit — it is instant and self-serve.

Technical details

Endpoint
https://corpuslaw.us/api/mcp
Transport
Streamable HTTP (stateless JSON-RPC). No SSE endpoint.
Auth
None required. Optional Authorization: Bearer for higher limits.

Formation tools — free, never metered

ToolWhat it does
formation.requirementsGet formation requirements
formation.compareCompare LLC formation services
formation.lookup_naicsFind a NAICS industry code
formation.handoffValidate and hand off a formation draft

Law and account tools

ToolWhat it does
law.searchSearch US law
law.get_nodeGet a law provision
law.list_coverageList covered jurisdictions
account.statusCheck account status

Full protocol reference, raw JSON-RPC examples, and pricing: MCP server docs · REST API docs.

Prefer to do it here instead?

You don’t need an agent. Corpus will walk you through the same intake on the web, with the same pricing and the same human review.

Form your business on Corpus