legal-doc-intelligence
Enables pay-per-call USDC payments on the Base network.
Sends alerts for payments, errors, and conversions.
Legal Doc Intelligence — Pay-Per-Call MCP Server
An MCP server that exposes 8 AI-powered legal document analysis tools, each billed per call in USDC on Base via the x402 payment protocol. No accounts, no subscriptions — agents pay only for what they use.
Live endpoint: https://income-machine-production.up.railway.app/mcp
Health check: https://income-machine-production.up.railway.app/health
Transport: HTTP (Streamable HTTP / MCP 2025-11-25)
Tools & Pricing
Tool | Description | Price |
| Extract and categorize all clauses from a contract | $0.02 USDC |
| Identify legal risks, red flags, and unfavorable terms | $0.05 USDC |
| Compare two contracts and highlight differences | $0.05 USDC |
| Extract all parties, roles, and contact info | $0.01 USDC |
| Generate an executive summary for non-lawyers | $0.02 USDC |
| Check compliance with GDPR, CCPA, SOX, and others | $0.05 USDC |
| Extract all obligations, deadlines, and deliverables | $0.02 USDC |
| Calculate maximum financial penalty exposure | $0.05 USDC |
Prices auto-adjust downward if call volume drops below the 7-day average.
Related MCP server: Legal Contract Review Agent
Payment Protocol (x402)
Payments use the x402 HTTP payment standard:
Call any tool without a
payment_header→ server returns a402 Payment Requiredresponse withPaymentRequirementsClient constructs a USDC payment on Base to
0xF4641f6AF6cc32c588Fa948ff64dBC0974F7D290Client encodes the signed payment as a base64
payment_headerand retries the callServer verifies and settles on-chain, then returns the result
Network: Base (Coinbase L2)
Token: USDC (0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913)
Receiver: 0xF4641f6AF6cc32c588Fa948ff64dBC0974F7D290
Quick Start — Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"legal-doc-intelligence": {
"url": "https://income-machine-production.up.railway.app/mcp",
"transport": "http"
}
}
}You will need a Base wallet with USDC to pay for tool calls. Compatible wallets: Coinbase Wallet, MetaMask with Base network.
Quick Start — Programmatic (Node.js)
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js";
const client = new Client({ name: "my-agent", version: "1.0.0" });
await client.connect(
new StreamableHTTPClientTransport(
new URL("https://income-machine-production.up.railway.app/mcp")
)
);
// First call returns payment requirements
const result = await client.callTool("identify_risks", {
contract_text: "...",
jurisdiction: "EU",
});
// If result contains x402: true, construct payment and retry with payment_headerSelf-Hosting
Requirements
Node.js 20+
A Base wallet with ETH (gas) and USDC
Railway / Fly.io / any Node.js host
Environment Variables
ANTHROPIC_API_KEY= # Claude API key for AI processing
CDP_PRIVATE_KEY= # Private key of the Base wallet (0x...)
WALLET_ADDRESS= # Public address of the same wallet
KRAKEN_API_KEY= # Optional: auto-convert USDC → EUR via Kraken
KRAKEN_API_SECRET= # Optional
KRAKEN_DEPOSIT_ADDRESS= # Optional: your Kraken USDC deposit address on Base
TELEGRAM_BOT_TOKEN= # Optional: alerts
TELEGRAM_CHAT_ID= # Optional
DASHBOARD_PASSWORD= # Password for the private /dashboard endpoint
PORT=3000
BASE_URL= # Your public URL, e.g. https://your-app.railway.appRun
npm install
npm run build
npm startArchitecture
MCP server — Express +
@modelcontextprotocol/sdk, HTTP transportPayment layer —
x402npm package for verify + settle on BaseAuto-conversion — Kraken API polls USDC balance and converts to EUR when threshold is met
Autopilot — cron job scans HN for new MCP marketplaces weekly and adjusts prices nightly
Alerts — Telegram bot notifies on payments, errors, and conversions
License
MIT
This server cannot be installed
Maintenance
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/MichalisKampouridis/income-machine'
If you have feedback or need assistance with the MCP directory API, please join our Discord server