Metadata-Version: 2.4
Name: inferra-mcp
Version: 0.1.0
Summary: MCP server for Inferra — deterministic rule-based decisions with RAG-powered explanations
Project-URL: Homepage, https://ai-rete-rag.com
Project-URL: Documentation, https://ai-rete-rag.com/docs-site
Author: Zahara Jabeen
License: MIT
Keywords: decision-intelligence,mcp,model-context-protocol,rag,rete,rules-engine
Requires-Python: >=3.10
Requires-Dist: httpx>=0.27
Requires-Dist: mcp>=1.2.0
Description-Content-Type: text/markdown

# Inferra MCP Server

Use [Inferra](https://ai-rete-rag.com) — deterministic rule-based decisions with
RAG-powered explanations — from Claude Code, Claude Desktop, or any MCP client.

The verdict always comes from the Rete rule engine (auditable, reproducible);
the LLM only explains *why*, grounded in your ingested policy documents.

## Tools

| Tool | What it does |
|---|---|
| `decide` | Make a decision in a domain (structured facts and/or free text) |
| `list_rules` | Inspect a domain's rules — conditions, verdicts, salience, overlaps |
| `ingest_text` | Add policy text to a domain's knowledge base |
| `list_documents` | Browse a domain's ingested documents |
| `get_usage` | Check your plan and remaining monthly decision quota |

## Install

No install needed with [uv](https://docs.astral.sh/uv/) — `uvx inferra-mcp`
fetches and runs the server on demand (see the config snippets below).

Alternatively, install it as a package:

```bash
pip install inferra-mcp         # from PyPI
pip install ./mcp-server        # or from source, in this repo
```

## Configure

First create an API key: sign in at [ai-rete-rag.com](https://ai-rete-rag.com),
open **Settings → API Keys**, and create a key (`ik_...` — shown once).

### Claude Code

```bash
claude mcp add inferra -e INFERRA_API_KEY=ik_your-key-here -- uvx inferra-mcp
```

(If you installed via pip, use `-- inferra-mcp` instead of `-- uvx inferra-mcp`.)

### Claude Desktop / other clients (JSON)

```json
{
  "mcpServers": {
    "inferra": {
      "command": "uvx",
      "args": ["inferra-mcp"],
      "env": {
        "INFERRA_API_KEY": "ik_your-key-here"
      }
    }
  }
}
```

(With a pip install, set `"command": "inferra-mcp"` and drop `"args"`.)

Environment variables:

| Variable | Default | Purpose |
|---|---|---|
| `INFERRA_API_KEY` | *(none)* | Your API key — authenticates calls and ties them to your plan quota |
| `INFERRA_API_URL` | `https://ai-rete-rag.com` | API base URL — point at `http://localhost:8000` for local dev |

Without a key you can still explore the shared demo domains (`loan`, `fraud`,
`clinical`, …) subject to free-tier limits.

## Example

> "Use inferra to decide whether this loan application should be approved:
> credit score 645, annual income $52k, requested amount $30k."

Claude calls `decide(domain="loan", facts={...})` and returns the rule-derived
verdict plus a plain-English explanation citing the underwriting policy.

<!-- mcp-name: io.github.zaharajabeen13-create/inferra-mcp -->
