MCPサーバー

paycrow

io.github.michu5696/paycrow

このMCPでできること

Creates and manages USDC escrow payments on Base with delivery confirmation, disputes, trust scoring, protected calls, and service ratings.

escrow_create
Create a USDC escrow with built-in dispute resolution. Funds are locked on-chain until delivery is confirmed (release) or a problem is flagged (dispute). If disputed, an arbiter reviews and rules — the only escrow service with real dispute resolution on Base.
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['seller', 'amount_usdc', 'service_url'], 'properties': {'seller': {'type': 'string', 'description': 'Ethereum address of the seller/service provider'}, 'amount_usdc': {'type': 'number', 'maximum': 100, 'minimum': 0.1, 'description': 'Amount in USDC (e.g., 5.00 for $5)'}, 'service_url': {'type': 'string', 'description': 'URL or identifier of the service being purchased (used for tracking)'}, 'timelock_minutes': {'type': 'number', 'default': 30, 'maximum': 43200, 'minimum': 5, 'description': 'Minutes until escrow expires and auto-refunds (default: 30)'}}, 'additionalProperties': False}
escrow_dispute
Flag a problem with delivery — PayCrow's key differentiator. Locks escrowed funds and triggers arbiter review. Unlike other escrow services that say 'no disputes, no chargebacks', PayCrow has real on-chain dispute resolution. Use when service was not delivered or quality was unacceptable.
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['escrow_id', 'reason'], 'properties': {'reason': {'type': 'string', 'description': 'Brief description of the problem for the arbiter'}, 'escrow_id': {'type': 'string', 'description': 'The escrow ID to dispute'}}, 'additionalProperties': False}
escrow_release
Confirm delivery and release escrowed USDC to the seller. Only call this when you've verified the service/product was delivered correctly.
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['escrow_id'], 'properties': {'escrow_id': {'type': 'string', 'description': 'The escrow ID to release'}}, 'additionalProperties': False}
escrow_status
Check the current state of an escrow (funded, released, disputed, expired, etc.)
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['escrow_id'], 'properties': {'escrow_id': {'type': 'string', 'description': 'The escrow ID to check'}}, 'additionalProperties': False}
rate_service
Rate a completed escrow. After escrow_release, rate the seller's service quality (1-5 stars). This builds the reputation data that makes PayCrow's trust scores meaningful over time. Both sides can rate: buyer rates seller's service quality, seller rates buyer's conduct. Ratings are on-chain and permanent — they feed directly into trust scoring.
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['escrow_id', 'stars'], 'properties': {'stars': {'type': 'integer', 'maximum': 5, 'minimum': 1, 'description': 'Rating 1-5 stars (1=terrible, 5=excellent)'}, 'escrow_id': {'type': 'string', 'description': 'The escrow ID to rate (must be in Released state)'}}, 'additionalProperties': False}
safe_pay
The smart way to pay an agent. Checks their trust score first, then auto-configures escrow protection based on risk. Flow: Check trust → Set protection level → Create escrow → Call API → Verify → Auto-release or auto-dispute. Protection levels (automatic): - High trust agent → 15min timelock, proceed normally - Moderate trust → 60min timelock, payment capped at $25 - Low trust → 4hr timelock, payment capped at $5 - Unknown/caution → BLOCKED — will not send funds This is the recommended tool for paying any agent. If you need manual control, use x402_protected_call instead.
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['url', 'seller_address', 'amount_usdc'], 'properties': {'url': {'type': 'string', 'format': 'uri', 'description': 'The API endpoint URL to call'}, 'body': {'type': 'string', 'description': 'Request body (for POST/PUT)'}, 'method': {'enum': ['GET', 'POST', 'PUT', 'DELETE'], 'type': 'string', 'default': 'GET', 'description': 'HTTP method (default: GET)'}, 'headers': {'type': 'object', 'description': 'HTTP headers to include', 'additionalProperties': {'type': 'string'}}, 'amount_usdc': {'type': 'number', 'maximum': 100, 'minimum': 0.1, 'description': 'Amount to pay in USDC'}, 'seller_address': {'type': 'string', 'description': "Ethereum address of the agent you're paying"}}, 'additionalProperties': False}
trust_gate
Should you pay this agent? Check before sending money. Returns a go/no-go decision with recommended escrow protection parameters. Unlike other trust services, PayCrow ties trust directly to escrow protection: - High trust → shorter timelock, proceed with confidence - Low trust → longer timelock, smaller amounts recommended - Caution → don't proceed, or use maximum protection This is the tool to call BEFORE escrow_create or safe_pay.
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['address'], 'properties': {'address': {'type': 'string', 'description': "Ethereum address of the agent you're about to pay"}, 'intended_amount_usdc': {'type': 'number', 'maximum': 100, 'minimum': 0.01, 'description': 'How much you plan to pay (helps calibrate the recommendation)'}}, 'additionalProperties': False}
trust_onchain_quick
Quick on-chain reputation check using only the PayCrow Reputation contract. Free, no API keys needed. Use trust_score_query for the full composite score.
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['address'], 'properties': {'address': {'type': 'string', 'description': 'Ethereum address of the agent to look up'}}, 'additionalProperties': False}
trust_score_query
Full trust score breakdown for an agent address. Aggregates 4 on-chain sources: PayCrow escrow history, ERC-8004 agent identity, Moltbook social karma, and Base chain activity. Returns 0-100 score with per-source details. For a quick go/no-go decision, use trust_gate instead.
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['address'], 'properties': {'address': {'type': 'string', 'description': 'Ethereum address of the agent to look up'}}, 'additionalProperties': False}
x402_protected_call
Make an HTTP API call with manual escrow protection. Full control over verification and timelock parameters. For most payments, use safe_pay instead — it auto-configures protection based on seller trust. Use x402_protected_call when you need: - Custom JSON Schema verification (not just "valid JSON + 2xx") - Hash-lock verification (exact response match) - Specific timelock durations - To override safe_pay's trust-based amount limits
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['url', 'seller_address', 'amount_usdc', 'verification_data'], 'properties': {'url': {'type': 'string', 'format': 'uri', 'description': 'The API endpoint URL to call'}, 'body': {'type': 'string', 'description': 'Request body (for POST/PUT)'}, 'method': {'enum': ['GET', 'POST', 'PUT', 'DELETE'], 'type': 'string', 'default': 'GET', 'description': 'HTTP method'}, 'headers': {'type': 'object', 'description': 'HTTP headers to include', 'additionalProperties': {'type': 'string'}}, 'amount_usdc': {'type': 'number', 'maximum': 100, 'minimum': 0.1, 'description': 'Amount to pay in USDC'}, 'seller_address': {'type': 'string', 'description': 'Ethereum address of the API provider (seller) who will receive payment'}, 'timelock_minutes': {'type': 'number', 'default': 30, 'maximum': 43200, 'minimum': 5, 'description': 'Minutes until escrow expires'}, 'verification_data': {'type': 'string', 'description': 'Verification data: JSON Schema string (for schema strategy) or expected hash (for hash-lock)'}, 'verification_strategy': {'enum': ['schema', 'hash-lock'], 'type': 'string', 'default': 'schema', 'description': "How to verify the response: 'schema' (JSON Schema) or 'hash-lock' (exact hash match)"}}, 'additionalProperties': False}
追加
x402_protected_call
2026年9月17日12:45
追加
safe_pay
2026年9月17日12:45
追加
rate_service
2026年9月17日12:45
追加
escrow_status
2026年9月17日12:45
追加
escrow_dispute
2026年9月17日12:45
追加
escrow_release
2026年9月17日12:45
追加
escrow_create
2026年9月17日12:45
追加
trust_onchain_quick
2026年9月17日12:45
追加
trust_score_query
2026年9月17日12:45
追加
trust_gate
2026年9月17日12:45