mcp-identity
README.md
# @powforge/mcp-identity
[](https://glama.ai/mcp/servers/zekebuilds-lab/mcp-identity)
> MCP server that scores any Nostr pubkey's depth-of-identity before your handler runs. Chaintip-anchored Schnorr cert, L402 priced, drop-in for AI agents that need Sybil resistance on top of paid APIs.
**npm:** `npm i @powforge/mcp-identity`
**Homepage:** https://powforge.dev/explorer
**Whitepaper:** https://powforge.dev/whitepaper
## What It Does
Three MCP tools that wrap the PowForge Depth-of-Identity Oracle:
- **`doi_score_lookup`** — given a Nostr pubkey (hex or npub), returns multi-dimensional identity score (network, longevity, kinetic-filter cost). L402-priced via the upstream oracle.
- **`doi_sign_vouch`** — builds an unsigned Nostr event for vouching depth-of-identity for another pubkey. Caller signs; oracle counts toward score on observation.
- **`doi_score_verify`** — offline Schnorr verification of a signed DoI cert returned from the oracle. No network.
## Why Identity-Anchored Pricing
Most paid-API services charge per-request flat. That fails on agent-to-agent surfaces where:
1. New agents look identical to scrapers — no signal on intent or risk.
2. Long-tail abusers extract value cheaper than they impose cost.
3. Whitelist gating doesn't scale to open agent ecosystems.
DoI gives your server a quantitative number for "how much would it cost to fake this caller's identity at this depth" — anchored to a specific Bitcoin chaintip cert that's non-repudiable. Use it as a multiplier on your L402 macaroon price, a rate-limit input, or a routing key.
## Quick Start
```bash
npm i @powforge/mcp-identity
```
Add to your MCP config (Claude Desktop, Cursor, etc):
```json
{
"mcpServers": {
"powforge-identity": {
"command": "npx",
"args": ["-y", "@powforge/mcp-identity"]
}
}
}
```
Restart the client. Three new tools appear under `powforge-identity`.
## Why Chaintip-Anchored
The score includes a Schnorr signature over `(score, dimensions, score_chaintip_height, score_chaintip_blockhash)`. That binds the claim to Bitcoin's kinetic filter — recomputable PageRank scores can be silently rewritten, but a chaintip-anchored cert is a fixed claim against a known time. Verification is offline.
The oracle's falsifiable claim window is documented in the whitepaper.
## L402 Pricing
The MCP server transparently handles the L402 macaroon dance with `oracle.powforge.dev`. First call returns a 402 with a Lightning invoice; the wrapper pays from a wallet you configure (env: `LNBITS_INVOICE_KEY`) and retries. No keys, no accounts.
## Status
- v0.7.0 published to npm 2026-04-28.
- Three tools exposed.
- Cert format documented in the whitepaper.
- Oracle availability monitored at https://powforge.dev/oracle/freshness.
## License
MIT.
## Source
Source lives in a private development repo. Issues, questions, and bug reports welcome here.
TDQS
A4.2/5.0
Scored across 3 tools
Disambiguation5/5
Each tool has a distinct purpose: fetching a score, verifying a signature, and creating a vouch template. No overlap in functionality.
Naming Consistency4/5
Tools follow a snake_case pattern with a 'doi_' prefix, but the structure varies slightly: 'doi_score_lookup' and 'doi_score_verify' share a consistent pattern, while 'doi_sign_vouch' uses a different verb-object order.
Tool Count5/5
With three tools, the server provides a focused, minimal set covering the core operations needed for identity scoring on Nostr. The count is well-scoped for its domain.
Completeness4/5
The tools cover the essential workflow: fetch, verify, and prepare a vouch. Minor gaps include lack of oracle configuration or retrieval of existing vouches, but the core use case is addressed.
Maintenance
ActivityInactive
ResponsivenessNo issues