Metadata-Version: 2.4
Name: dossier-mcp
Version: 0.1.0
Summary: Dossier MCP server — onchain risk scoring for Base (token / deployer / wallet), callable by AI agents.
Author: Dossier
License: MIT
License-File: LICENSE
Keywords: base,crypto,defi,ethereum,honeypot,mcp,model-context-protocol,risk,security
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Security
Requires-Python: >=3.10
Requires-Dist: httpx>=0.27
Requires-Dist: mcp>=1.9.0
Description-Content-Type: text/markdown

# Dossier MCP server

Onchain risk scoring for **Base**, callable by AI agents (Claude, Cursor, …) over the
[Model Context Protocol](https://modelcontextprotocol.io). A thin client over the Dossier REST API.

## Tools

| Tool | What it answers | Score direction |
|---|---|---|
| `dossier_scan_token` | Is this token a honeypot / rug / high-risk? | **risk** — higher = worse |
| `dossier_scan_deployer` | Can I trust the dev who shipped it? | **trust** — higher = better |
| `dossier_scan_portfolio` | How exposed is this wallet (holdings + approvals)? | **risk** — higher = worse |

Risk and trust are kept as **separate scores with explicit direction** — never collapsed into one number.

## Configuration (env)

| Var | Default | Purpose |
|---|---|---|
| `DOSSIER_API_BASE` | `http://localhost:8000` | Base URL of the Dossier REST API |
| `DOSSIER_MCP_TRANSPORT` | `stdio` | `stdio` (local) or `http` (streamable-HTTP, remote) |
| `DOSSIER_MCP_HOST` / `DOSSIER_MCP_PORT` | `127.0.0.1` / `8765` | bind address for HTTP transport |

## Use it from Claude Desktop / Cursor (stdio)

```json
{
  "mcpServers": {
    "dossier": {
      "command": "uvx",
      "args": ["dossier-mcp"],
      "env": { "DOSSIER_API_BASE": "https://your-dossier-host" }
    }
  }
}
```

Or from a local checkout: `uv run dossier-mcp` (with `DOSSIER_API_BASE` pointing at your backend).

## Run as a hosted HTTP server (multi-client)

```bash
DOSSIER_MCP_TRANSPORT=http DOSSIER_MCP_PORT=8765 DOSSIER_API_BASE=http://localhost:8000 uv run dossier-mcp
```

Agents then connect to the streamable-HTTP endpoint at `http://host:8765/mcp`.

## Example

> "Is `0x833589fcd6edb6e08f4c7c32d4f71b54bda02913` safe to buy on Base?"

The agent calls `dossier_scan_token` → *"USDC — risk: low (29/100, higher = worse; 60% confidence)…"*,
then can follow up with `dossier_scan_deployer` on the attributed creator.

Dossier provides risk intelligence, not financial advice; false positives and negatives are possible.
