Skip to main content

NSR MCP Server

Exposes a running NSR API to any MCP host β€” Claude Code, Claude Desktop, the Agent SDK β€” as agent-native tools and prompts.

Why this exists

An LLM agent is a fallible neural reasoner. NSR turns a consequential call β€” issue this refund, grant this access, cancel this subscription β€” from β€œtrust the model” into β€œthe model proposes, NSR proves.” The intended pattern is NSR as a verification oracle: before acting, the agent routes the decision through nsr_decide and proceeds only on an approved verdict backed by cited rules.
A refused verdict is the correct, safe result β€” not an error. The agent should ask for the missing facts or escalate, rather than guessing. The verify_before_acting prompt hands your host exactly this guardrail.

Configure

No npm dependencies. Node 18+ (for global fetch) and a hand-rolled JSON-RPC loop β€” nothing to install.

Run

NSR_NEURAL_BACKEND=mock is required offline. The default backend calls an external embeddings API, so entity creation returns a 500 without it.

Connect

Tools

Decisions β€” the flagship surface: Teaching it rules and facts: Reasoning and inspection:

Which NSR MCP server?

There are two, and they are not equivalent. The in-process Rust binary (nsr_mcp) embeds an engine and stubs the reasoning tools. Use the Node server documented here for the full, live reasoning surface.

Client-side validation

The server validates input before calling the API and names the exact malformed rule or field, rather than surfacing a cryptic 422 deserialize error β€” worth knowing when an agent is authoring rules and getting them wrong.