Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
Proof-of-spend and reserve checks for AI agents: receipts, spend audit, NAV, reconciliation.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Works in Claude on the web, desktop and mobile:
https://rta.lat/nidhipati/mcpOpen Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"nidhipati": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/mrpkk/nidhipati:0.6.0"
]
}
}
}Run this in your terminal
claude mcp add --transport http nidhipati https://rta.lat/nidhipati/mcpclaude mcp add nidhipati -- docker run -i --rm ghcr.io/mrpkk/nidhipati:0.6.0Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"nidhipati": {
"url": "https://rta.lat/nidhipati/mcp"
}
}
}Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"nidhipati": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/mrpkk/nidhipati:0.6.0"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"nidhipati": {
"type": "http",
"url": "https://rta.lat/nidhipati/mcp"
}
}
}Paste into .vscode/mcp.json in your project
{
"servers": {
"nidhipati": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/mrpkk/nidhipati:0.6.0"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
ChatGPT connects only to servers on the internet:
https://rta.lat/nidhipati/mcpMenu names can differ slightly by plan and over time.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Tool names and descriptions exactly as the server reported them on Nov 6, 2026. The maker wrote them, not us; we show them as plain text.
verify_receiptCheck a signed proof-of-spend receipt offline: schema, Ed25519 signature, mandate expiry, positive amount, quantity*unit_price == amount, refund not above payment. Use when an agent or provider returns a receipt and you need to know whether it actually proves the charge was allow
audit_spendFind duplicates, price escalation, failed-but-billed calls, runaway loops, missing refunds, model overpay, unknown asset/network and budget breaches in a list of settled agent calls. Returns three separate amounts (money without a basis, estimate above the agent's own median, bud
reserve_reportTurn an issuer's reserve lines into a NAV with explicit formulas and a sha256 evidence hash per line. Verdict is backed, underbacked, or incomplete - and the backing ratio is refused (null) when any line has no price, because a ratio over half a reserve is not a number. Do NOT tr
resolve_reportWeigh the sources a resolver says it read against the declared outcome. Verdicts: supported, disputed, single_source, insufficient. A conflict is reported as a conflict, never averaged. Do NOT use to trade or to place a position.
reconcile_booksMatch invoices to stablecoin transfers by memo first, then exact amount and asset inside the invoice window. Names what is left over in both directions: invoices nobody paid, money nobody invoiced, invoices paid twice. A duplicate is counted once, never twice. Do NOT use as proof
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 9, 2026
The registry name was verified with the GitHub account mrpkk, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
Responded in 623 ms (HTTP 200)
No sign-in needed
Read 5 tool descriptions and found no hidden instructions to the AI
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 3 of 3 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
Either way works: install it on your computer or connect to the cloud version.
The GitHub repo last changed –, and the latest version (0.7.1) reached the registry 5 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.
In the same category: Spec Driven Development, Remote Desktop Commander, CLIO Paraview
Servers in the same category from other makers, sorted by stars.
Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Visualize simulation results in ParaView: load fields, then slice, contour, color and render them.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Proof of Spend for AI agents. A signed receipt that proves what an agent was authorized to pay, what it actually paid, what it used and what was refunded. Not a token, not custody, not another payment rail.
Рельсы двигают деньги. Nidhipati доказывает, что движение было правильным.
Status: v0.6 — five CLIs, an MCP server, 94 tests, official MCP Registry and Glama listing.
Site: https://mrpkk.github.io/nidhipati/ Free browser audit (no signup): https://mrpkk.github.io/nidhipati/free-spend-audit.html BusinessMCP directory: https://businessmcp.com/mcp-servers/nidhipati Private scan request: https://github.com/mrpkk/nidhipati/issues/new?template=free-spend-audit.yml
For tokenised assets: the issuer's own numbers turned into a NAV with explicit formulas and an evidence hash per line. The verdict is backed, underbacked, or incomplete — and the ratio is refused when any line has no price, because a number computed over half a reserve is not a number.
nidhipati-reserve report examples/reserve.example.json --key keys/private.pem --markdown report.md
NAV = Σ quantity × price × (1 − haircut) − liabilities
ratio = NAV / supply
The statement hash is compared with the file if you provide it. The disclaimer travels inside the signed document. Details and the partner/legal checklist: docs/RESERVE-REPORT.md.
When a market resolves and someone disagrees, the question is whether the resolver's sources say what the resolver claims and whether they agree with each other. The report answers with four verdicts — supported, disputed, single_source, insufficient — and never picks a winner.
nidhipati-resolve report examples/resolve.example.json --key keys/private.pem --markdown report.md
Details: docs/RESOLUTION-EVIDENCE.md.
Invoices on one side, transfers on the other. The report names what is closed, what nobody paid, and what arrived without an invoice — a transfer that duplicates a payment is counted once, never twice.
nidhipati-reconcile run examples/invoices.example.csv examples/transactions.example.csv --csv matches.csv
Details: docs/RECONCILIATION.md.
The same five checks over the Model Context Protocol: verify_receipt, audit_spend, reserve_report, resolve_report, reconcile_books. Input is data, never a file path and never a network call; the answers are the same reports the CLIs produce, including the refusal to print a backing ratio when a line has no price.
{"jsonrpc":"2.0","id":1,"method":"tools/call",
"params":{"name":"reserve_report","arguments":{"reserve":{...}}}}
python3 -m nidhipati_proof.mcp_stdio # stdio transport
docker build -t nidhipati-mcp . && docker run -i --rm nidhipati-mcp
Five tools, all read-only: no custody, no keys, no chain read.
Official MCP Registry: https://registry.modelcontextprotocol.io/v0/servers?search=nidhipati (io.github.mrpkk/nidhipati, OCI ghcr.io/mrpkk/nidhipati:0.6.0). Glama listing: https://glama.ai/mcp/servers/mrpkk/nidhipati.
Send records of what your agents spent and get the audit back — no card. The browser audit needs no account; a human review can go by email or Telegram, no GitHub needed: email or Telegram with the downloaded report (not raw rows). GitHub is optional: open a private scan request; the issue is public, so ask the question only and never paste records or keys. Paid: first 3 audits $1,250; then $2,500 fixed, $1,500/mo retainer, or 20% of verified savings. $5,000 finding guarantee (identified overcharges, not recovery). Full terms, including what is *not* included: docs/OFFER.md.
In CI, on every run:
- uses: mrpkk/nidhipati@v0.2.0
with: records: billing/agent-spend.csv policy: billing/policy.json
python3 -m pip install -e .[dev]
python3 -m pytest -q python3 -m nidhipati_proof.cli verify examples/proof-of-spend.example.json --pubkey
usage.quantity × usage.unit_price vs payment;allow for a settled payment;A signed receipt proves one charge. A bill proves a month. The audit reads the records you already have (CSV or JSON) and names the rows where money left without a reason:
| Finding | What it means |
|---|---|
duplicate_charge | the same receipt twice, or an equal charge within 120s with no receipt at all |
price_escalation | settled above the authorised quote by more than 1% |
failed_but_billed | status failed/error and still charged |
missing_refund | authorised 10, used 4, nothing returned |
runaway_loop | more than 30 calls a minute from one agent |
model_overpay | far above *this agent's own* median for the same tool and model (an estimate) |
unknown_asset / unknown_network / missing_payee | the record does not say where the money went |
budget_bypass / budget_exceeded | no policy file: the limit lives in a prompt; with a policy, the agent is over it |
python3 -m pip install -e .
nidhipati-spend audit examples/spend-sample.csv --policy examples/spend-policy.example.json nidhipati-spend audit records.csv --json > report.json
Exit code 1 when there is an error — a pipeline can fail on it. The report keeps three amounts apart on purpose: spent without a reason (duplicates, escalation, failed calls, refunds not returned), above the usual price (an estimate, not proof), and over the limit (the money may have been spent on real work).
The sample is synthetic and labelled: it contains every finding once, so you can see what a report looks like before trusting it with real invoices.
onchain_verified=false is explicit.SPEC.md — product, architecture, modules, SEO, monetization, 30/60/90.PROGRESS.md — slices, acceptance, metrics.docs/PROMPT-AND-IDEAS.md — prompt and decisions for RAG.docs/SEO-MONETIZATION.md — keywords, pages, funnel, pricing.docs/LAUNCH-KIT.md — Show HN, Reddit, Product Hunt, X/LinkedIn copy.docs/DEMO.md — real commands and sample output.docs/AGENT-SPEND-AUDIT.md, docs/RESERVE-REPORT.md, docs/RESOLUTION-EVIDENCE.md, docs/RECONCILIATION.md — module rules.schemas/proof-of-spend.schema.json — v0.1 schema.examples/proof-of-spend.example.json — example.Apache-2.0.