Hudson Corpus — MCP endpoint
The corpus behind Hudson research, exposed as a production MCP endpoint at https://app.hudsonlegal.tech/mcp. Ten grounded, read-only tools — citation lookup, hybrid search, version history, brief auditing — for Claude Desktop, Claude Code, and any MCP-capable agent.
01 — Connect
Two ways in. Clients that speak OAuth 2.0 discover the endpoint, register themselves, and send you through a consent screen — no key to copy. Everything else sends a key you create in your account. Either way the whole corpus shows up in your assistant's tool list.
{
"mcpServers": {
"hudson-corpus": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://app.hudsonlegal.tech/mcp",
"--header", "X-API-Key:${HUDSON_CORPUS_KEY}"],
"env": { "HUDSON_CORPUS_KEY": "<your key>" }
}
}
}claude mcp add --transport http hudson-corpus \
https://app.hudsonlegal.tech/mcp --header "X-API-Key: <your key>"Every request carries either an OAuth Bearer token or an X-API-Key — stateless JSON over HTTPS, so it works the same from a laptop, a CI job, or an agent fleet.
02 — The tools
Every response carries an official-source URL and an as-of-date stamp, so an agent can't accidentally cite stale text — the same discipline the human-facing product holds itself to.
A precise citation — '714.16', '§ 714.16(2)(a)', 'Chapter 232' — returns the current text. Ambiguous cites return candidates, never a silent substitute.
Hybrid semantic search across the Code, court rules, and caselaw — full-text + fuzzy + vector, reranked. Case hits carry good-law treatment flags.
Every version of a section with effective dates and the session law that enacted each change.
The text of a section as it stood on a given date — for the facts as they were, not as they are.
Every provision that cites a section, so a change's blast radius is one call away.
Defined terms in scope for a chapter or across the Code — the statutory meaning, not the dictionary's.
Everything that changed since a date — the current-awareness sweep, as a tool call.
Every citation in a block of text, checked against the corpus and flagged valid, repealed, or unresolvable.
A quoted passage checked verbatim against the cited source — the anti-hallucination primitive.
The full pass over a brief: citations validated, quotes verified, currency checked — one call.
03 — Under the hood
official_url, as_of_date, and effective dates on every response — the provenance travels with the data.
Case hits carry good-law flags — overruled and superseded decisions are marked before your agent relies on them.
When a citation doesn't resolve unambiguously, the tool returns the candidate list. A silent substitution is a bug class we refuse by design.
Plain JSON over HTTPS, no sessions to manage — every call independently authenticated and safe to retry.
A full OAuth 2.0 authorization server — dynamic client registration, PKCE, a consent screen, refresh and revocation — or a static key you create and revoke in your account.
Every tool is a read-only query over the corpus. There is no write path — nothing an agent can break.
Create a key, paste the config, and your assistant is doing grounded Iowa research in minutes. Building something bigger on it? We should talk.
04 — More from Hudson
Flagship
Grounded legal research in the browser — Iowa Code, court rules, and caselaw with every citation verified against the effective text.
Explore Hudson CorpusFor your inbox
Email a question, get a verified answer back — linked citations, official PDFs on request, no new app to learn.
Explore the assistant