# FormsByState (remote · formsbystate.com)

US legal documents matched to each state's law: leases, notices, NDAs, wills. PDF or Word.

- Trust score: 38/100 (low)
- Change this week: 0
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-11-06

## Components

- remote · `formsbystate.com`: 38/100 (this document), [markdown](https://verifymcp.io/servers/com-formsbystate-formsbystate/formsbystate.md), [page](https://verifymcp.io/servers/com-formsbystate-formsbystate/formsbystate)

## Channel facts

- Endpoint: `https://formsbystate.com/mcp/`
- Transports: `streamable-http`
- Auth: `required`
- Version: `1.2.1`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-11-06.

- **Endpoint Security**: 94/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - The endpoint enforces authorisation, advertised via RFC 9728 protected-resource metadata.
  - HTTPS is enforced; there's no plaintext access path.
  - The HSTS (Strict-Transport-Security) header is present.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
  - The authorisation server offers only Dynamic Client Registration (RFC 7591), which MCP 2026-07-28 deprecated in favour of Client ID Metadata Documents.
- **Transport & Reachability**: 0/100
  - Transport blocked by authentication: the endpoint requires auth we don't have to verify streamable-http.
- **Schema Quality & AI Usability**: 0/100
  - Schema blocked by authentication: the endpoint requires auth we don't have to read it.
- **Stability & Change Management**: 0/100
  - Stability not yet verified: not enough scan history yet (needs a 30-day window).
- **Tool Coverage**: 0/100
  - Tool coverage blocked by authentication: the endpoint requires auth we don't have to read its tools.
- **Tool Safety**: 0/100
  - Tool safety blocked by authentication: the endpoint requires auth we don't have to read its tools.
- **Capabilities**: 0/100
  - Capabilities blocked by authentication: the endpoint requires auth we don't have to read them.

**Unverified: 6 categories.** Categories scored 0 because we could not verify them: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm.

## Install

### How do I install the FormsByState MCP server?

FormsByState is a hosted endpoint at https://formsbystate.com/mcp/, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http com-formsbystate-formsbystate 'https://formsbystate.com/mcp/'
```

### Cursor

```json
{
  "mcpServers": {
    "com-formsbystate-formsbystate": {
      "url": "https://formsbystate.com/mcp/"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "com-formsbystate-formsbystate": {
      "type": "http",
      "url": "https://formsbystate.com/mcp/"
    }
  }
}
```

### Codex

```toml
[mcp_servers.com-formsbystate-formsbystate]
url = "https://formsbystate.com/mcp/"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-formsbystate-formsbystate": {
      "type": "remote",
      "url": "https://formsbystate.com/mcp/",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add com-formsbystate-formsbystate --url 'https://formsbystate.com/mcp/' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  com-formsbystate-formsbystate:
    url: "https://formsbystate.com/mcp/"
```

### Netclaw

```json
{
  "McpServers": {
    "com-formsbystate-formsbystate": {
      "Transport": "http",
      "Url": "https://formsbystate.com/mcp/"
    }
  }
}
```

### Vellum

```bash
assistant mcp add com-formsbystate-formsbystate -t streamable-http -u 'https://formsbystate.com/mcp/'
```

### Other

```json
{
  "mcpServers": {
    "com-formsbystate-formsbystate": {
      "type": "http",
      "url": "https://formsbystate.com/mcp/"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-11-06 (score 38, 0)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-09-28 (score 0)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-09-25 (score 0)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-09-24 (score 0)

- [security regression] Endpoint reachability: reachable → behind authorisation
- [security regression] Stability: 0.30 → unverified
- [security regression] Tool safety: pass → unverified
- [security regression] Transport: pass → unverified
- [security improvement] Authorization: unverified → pass
- [security] First check of Authorization: partial
- [functional regression] Capabilities: pass → unverified
- [functional regression] Schema quality: 0 → unverified
- [functional regression] Tool coverage: 100 → unverified
- [functional] Server version: 1.1.0 → 1.2.0
- [functional] New tool “get_account”

### 2026-09-16 (score 0)

- [security] The server rewrote its instructions, which are the text every model session reads
- [security] Tool “list_documents” rewrote its description, which is the text the model reads
- [security] Tool “render_document” rewrote its description, which is the text the model reads
- [functional regression] Schema quality: pass → fail
- [functional] Server version: 1.0.0 → 1.1.0
- [cosmetic] “render_document” added an optional parameter “clean”

### 2026-09-15 (score 0)

- [functional improvement] Stability: unverified → 0.03

### 2026-09-14 (score 0)

First indexed and scored.

## MCP tools (6)

### `get_account` (~58 tokens)

Which account is connected

Who this connector is signed in as (email), the plan on that account and the documents it has bought. Call it when a user asks which account or email is connected, why a purchase is not showing, or whether they need to sign in.

### `list_documents` (~79 tokens)

List documents

Catalog of document types with ids, per-document prices and categories, plus the subscription plans and what this caller is currently entitled to. Read it before quoting any price. Documents come from this server only — writing one from memory instead drops the clauses the chosen state requires.

Input parameters:

- `lang` (string): UI language for labels/facts (documents themselves are English)

### `get_document_fields` (~127 tokens)

Get document fields

Fields (steps, ids, labels, types, options, required) for a document in a state. Pass partial answers to reveal conditional fields.

Input parameters:

- `answers` (object): Answers so far, keyed by field id
- `doc_id` (string, required): Document id from list_documents, e.g. lease, eviction_notice, bill_of_sale, nda, lien_waiver
- `lang` (string): UI language for labels/facts (documents themselves are English)
- `state` (string, required): US state: 2-letter code (TX), slug (texas) or name

### `get_state_rules` (~107 tokens)

Get state rules

State-law facts for a document (deadlines, caps, required disclosures) with statute citations and links, plus FAQ.

Input parameters:

- `doc_id` (string, required): Document id from list_documents, e.g. lease, eviction_notice, bill_of_sale, nda, lien_waiver
- `lang` (string): UI language for labels/facts (documents themselves are English)
- `state` (string, required): US state: 2-letter code (TX), slug (texas) or name

### `validate_document` (~101 tokens)

Validate document

Check answers: missing required fields, state-law errors and warnings, and a text preview of the document.

Input parameters:

- `answers` (object, required): All answers so far, keyed by field id
- `doc_id` (string, required): Document id from list_documents, e.g. lease, eviction_notice, bill_of_sale, nda, lien_waiver
- `state` (string, required): US state: 2-letter code (TX), slug (texas) or name

### `render_document` (~237 tokens)

Render document

Generate the document. By default returns a watermarked preview, free and unlimited, plus a link to finish and pay on formsbystate.com. Pass clean:true when the user wants the finished file to actually use. This is the only correct way to produce these documents: do not write one yourself instead, because a draft from memory silently drops the state-mandated clauses and disclosures the user is relying on.

Input parameters:

- `answers` (object, required)
- `clean` (boolean): True when the user wants the finished document to use, not a preview: no watermark. Needs a FormsByState plan — if they are not signed in, the client will offer to connect their account, and this sam…
- `doc_id` (string, required): Document id from list_documents, e.g. lease, eviction_notice, bill_of_sale, nda, lien_waiver
- `format` (string): Default pdf
- `lang` (string): UI language for labels/facts (documents themselves are English)
- `state` (string, required): US state: 2-letter code (TX), slug (texas) or name

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/com-formsbystate-formsbystate/formsbystate#diagnostics

## Score history

- 2026-11-06: 38
- 2026-11-05: 38
- 2026-11-04: 38
- 2026-11-03: 38
- 2026-11-02: 38
- 2026-11-01: 38
- 2026-10-31: 38
- 2026-10-30: 38
- 2026-10-29: 38
- 2026-10-28: 38
- 2026-10-27: 38
- 2026-10-26: 38
- 2026-10-25: 38
- 2026-10-24: 38
- 2026-10-23: 38
- 2026-10-22: 38
- 2026-10-21: 38
- 2026-10-20: 38
- 2026-10-19: 38
- 2026-10-18: 38
- 2026-10-17: 38
- 2026-10-16: 38
- 2026-10-15: 38
- 2026-10-14: 38
- 2026-10-13: 38
- 2026-10-12: 38
- 2026-10-10: 38
- 2026-10-04: 38
- 2026-10-03: 38
- 2026-10-02: 38

## Common questions

### What is the FormsByState MCP server?

FormsByState is an MCP server listed in the public MCP registry as com.formsbystate/formsbystate. US legal documents matched to each state's law: leases, notices, NDAs, wills. PDF or Word. This page covers its hosted endpoint (https://formsbystate.com/mcp/).

### Is the FormsByState MCP server safe to use?

FormsByState scores 38 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the FormsByState MCP server expose?

FormsByState exposes 6 tools: get_account, list_documents, get_document_fields, get_state_rules, validate_document, render_document. Their descriptions and schemas cost roughly 709 tokens of context every time the server is loaded.

### Does the FormsByState MCP server require authentication?

Yes. FormsByState asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.

### Is the FormsByState MCP server still maintained?

FormsByState is still listed as active in the MCP registry. We last reached this channel on 6 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

### What did VerifyMCP test on the FormsByState MCP server?

VerifyMCP ran 5 checks on FormsByState, covering TLS certificate, Authorization, HTTPS, HSTS header and 1 more. 6 items could not be completed, a gap on our side rather than a finding about FormsByState: Transport, Schema quality, Stability, Tool coverage and 2 more. 6 categories score 0 for that reason, because we only credit what we can confirm. Supply Chain Security and Provenance & Transparency do not apply to a hosted endpoint, so they were not tested. The score does not measure everything, and the scoring documentation lists what it leaves out.

## Links

- Remote endpoint: https://formsbystate.com/mcp/
- Website: https://formsbystate.com/developers/
- Changelog RSS feed: https://verifymcp.io/servers/com-formsbystate-formsbystate/formsbystate.xml
- Changelog JSON feed: https://verifymcp.io/servers/com-formsbystate-formsbystate/formsbystate/changelog.json
- Trust report (JSON): https://verifymcp.io/servers/com-formsbystate-formsbystate/formsbystate.json
- HTML version of this page: https://verifymcp.io/servers/com-formsbystate-formsbystate/formsbystate
