Metadata-Version: 2.4
Name: neruva-mcp
Version: 0.60.2
Summary: Neruva MCP -- proprietary memory + grounding substrate for AI assistants (Claude Desktop / Claude Code / any MCP client). Typed Records store, document knowledge graph with exact multi-hop traversal (ownership/relationship tracing), semantic + structural recall, deterministic corrections, provenance/citations, GDPR/Law-25 atomic forget, snapshot/replay audit. Thin client: all algorithms run server-side. For Neruva integration clients only -- NOT open source. Bring your own LLM.
Author-email: Clouthier Simulation Labs <info@neruva.io>
License: Proprietary -- (c) Clouthier Simulation Labs. For Neruva integration clients only.
Project-URL: Homepage, https://neruva.io/integrations/
Project-URL: Documentation, https://neruva.io/docs/
Keywords: mcp,model-context-protocol,neruva,agent-memory,agent-context,agentic-ai,knowledge-graph,graph-rag,rag,vector-database,claude-code,claude-agent-sdk,ai,llm
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: Other/Proprietary License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: mcp<2,>=1.0.0
Requires-Dist: httpx>=0.27
Dynamic: license-file

# neruva-mcp

**Verified skills for AI agents.** Do not replace your model. Give it proven capabilities.

The Python MCP server for [Neruva](https://neruva.io).

## What this is for

Your model gets some jobs wrong in the same way every time. A page that has to be landscape. A
form field named by a tax agency rather than by its label. A chart the spreadsheet quietly
discards. Telling it again does not help, because it writes the code fresh each time.

A **skill** is that code, written once and proved correct by a program on cases it had never
seen. Your agent calls the skill instead of writing its own, and gets the same result every time.

Measured on held-out cases, best of two samples, graded by an exact checker:

| job | the model alone | with the skill |
| --- | --- | --- |
| Word document, portrait then landscape with a header and table | 25% | 100% |
| PowerPoint combo chart on a secondary axis | 13% | 100% |
| Fillable PDF form | 44% | 100% |
| The real Canadian TD1 tax form | 19% | 94% |

Every number on [neruva.io/evidence](https://neruva.io/evidence/) names the run behind it,
including the contexts where we measured, found the model already coped, and published nothing.

## Install

```bash
pip install neruva-mcp
```

Point your MCP host at it. Reading and installing skills need no key:

```json
{
  "mcpServers": {
    "neruva": { "command": "neruva-mcp" }
  }
}
```

Add a key only to publish a skill, claim a name or post paid work:

```json
{
  "mcpServers": {
    "neruva": { "command": "neruva-mcp", "env": { "NERUVA_API_KEY": "nv_..." } }
  }
}
```

## Tools

| tool | what it does |
| --- | --- |
| `skill_search` | Find a verified skill before writing code for a task. No key needed. |
| `skill_get` | One skill in full: code, usage guide, evidence, certificate. |
| `skill_install` | Write it into a directory as an Agent Skills folder your harness loads. |
| `skill_tasks` | The controlled list of kinds of job, for filtering a search. |
| `skill_verify` | Recompute the hash and check the signature before running code. |
| `skill_publish` | Publish your own. Free, and it is re-checked before it is listed. |

The older names `rung_search`, `rung_get`, `rung_install`, `rung_verify` and `rung_bank` still
work and do the same things.

## Using it

Ask your agent for something it usually fumbles. A harness with this server installed will find
the skill first:

```
skill_search(q="fillable pdf form")
skill_install(id="rec_0b825e...", dir="~/.claude/skills")
```

`skill_install` writes `SKILL.md` and the code into a folder, and your harness loads it like any
other skill. Nothing runs on our servers: the skill executes wherever your model does.

Or without this package at all, since the API is public:

```bash
curl "https://api.neruva.io/v1/commons/skills?q=combo%20chart"
curl "https://api.neruva.io/v1/commons"          # every endpoint, described
```

## Publishing

Publishing is free and always will be. What you get back is the part you cannot give yourself:
your code put through an exact check on cases it has never seen, signed if it passes, hosted at a
name you own, and reachable by any agent.

```
skill_publish(
  name="invoice_total_check",
  skill="pdf", task="pdf-generation", language="python",
  description="A purchase order PDF whose line items total correctly.",
  code=open("rung.py").read(), doc=open("SKILL.md").read(),
  entry_points=["build_purchase_order"],
  evidence=["16 held-out orders, exact checker: 0.31 alone, 1.00 with this"],
)
```

## Also in this package

An account on Neruva carries a private memory and replay surface used by existing deployments:
records, recall, snapshots and audit. Those tools ship here too and need a key. They are separate
from the commons, which is public and free.

## Licence

Apache 2.0. Built by Clouthier Simulation Labs, Ontario, Canada.
