paycrow
Escrow protection for agent payments on Base — USDC held in smart contract until job completion.
사용해야 할까요
품질 및 안전성
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"paycrow": {
"command": "npx",
"args": [
"paycrow"
]
}
}
}실행 가능한 패키지
1.0.0stdio원격 엔드포인트
https://paycrow-app.fly.dev/mcpstreamable-http할 수 있는 일
도구 목록
도구 (10)
🟡trust_gate(address, intended_amount_usdc)
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",
"properties": {
"address": {
"type": "string",
"description": "Ethereum address of the agent you're about to pay"
},
"intended_amount_usdc": {
"type": "number",
"minimum": 0.01,
"maximum": 100,
"description": "How much you plan to pay (helps calibrate the recommendation)"
}
},
"required": [
"address"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢trust_score_query(address)
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",
"properties": {
"address": {
"type": "string",
"description": "Ethereum address of the agent to look up"
}
},
"required": [
"address"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢trust_onchain_quick(address)
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",
"properties": {
"address": {
"type": "string",
"description": "Ethereum address of the agent to look up"
}
},
"required": [
"address"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡escrow_create(seller, amount_usdc, timelock_minutes, service_url)
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",
"properties": {
"seller": {
"type": "string",
"description": "Ethereum address of the seller/service provider"
},
"amount_usdc": {
"type": "number",
"minimum": 0.1,
"maximum": 100,
"description": "Amount in USDC (e.g., 5.00 for $5)"
},
"timelock_minutes": {
"type": "number",
"minimum": 5,
"maximum": 43200,
"default": 30,
"description": "Minutes until escrow expires and auto-refunds (default: 30)"
},
"service_url": {
"type": "string",
"description": "URL or identifier of the service being purchased (used for tracking)"
}
},
"required": [
"seller",
"amount_usdc",
"service_url"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪escrow_release(escrow_id)
Confirm delivery and release escrowed USDC to the seller. Only call this when you've verified the service/product was delivered correctly.
입력 스키마
{
"type": "object",
"properties": {
"escrow_id": {
"type": "string",
"description": "The escrow ID to release"
}
},
"required": [
"escrow_id"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪escrow_dispute(escrow_id, reason)
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",
"properties": {
"escrow_id": {
"type": "string",
"description": "The escrow ID to dispute"
},
"reason": {
"type": "string",
"description": "Brief description of the problem for the arbiter"
}
},
"required": [
"escrow_id",
"reason"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢escrow_status(escrow_id)
Check the current state of an escrow (funded, released, disputed, expired, etc.)
입력 스키마
{
"type": "object",
"properties": {
"escrow_id": {
"type": "string",
"description": "The escrow ID to check"
}
},
"required": [
"escrow_id"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪rate_service(escrow_id, stars)
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",
"properties": {
"escrow_id": {
"type": "string",
"description": "The escrow ID to rate (must be in Released state)"
},
"stars": {
"type": "integer",
"minimum": 1,
"maximum": 5,
"description": "Rating 1-5 stars (1=terrible, 5=excellent)"
}
},
"required": [
"escrow_id",
"stars"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡safe_pay(url, seller_address, amount_usdc, method, headers, ...)
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",
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "The API endpoint URL to call"
},
"seller_address": {
"type": "string",
"description": "Ethereum address of the agent you're paying"
},
"amount_usdc": {
"type": "number",
"minimum": 0.1,
"maximum": 100,
"description": "Amount to pay in USDC"
},
"method": {
"type": "string",
"enum": [
"GET",
"POST",
"PUT",
"DELETE"
],
"default": "GET",
"description": "HTTP method (default: GET)"
},
"headers": {
"type": "object",
"additionalProperties": {
"type": "string"
},
"description": "HTTP headers to include"
},
"body": {
"type": "string",
"description": "Request body (for POST/PUT)"
}
},
"required": [
"url",
"seller_address",
"amount_usdc"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪x402_protected_call(url, method, headers, body, seller_address, ...)
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",
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "The API endpoint URL to call"
},
"method": {
"type": "string",
"enum": [
"GET",
"POST",
"PUT",
"DELETE"
],
"default": "GET",
"description": "HTTP method"
},
"headers": {
"type": "object",
"additionalProperties": {
"type": "string"
},
"description": "HTTP headers to include"
},
"body": {
"type": "string",
"description": "Request body (for POST/PUT)"
},
"seller_address": {
"type": "string",
"description": "Ethereum address of the API provider (seller) who will receive payment"
},
"amount_usdc": {
"type": "number",
"minimum": 0.1,
"maximum": 100,
"description": "Amount to pay in USDC"
},
"timelock_minutes": {
"type": "number",
"minimum": 5,
"maximum": 43200,
"default": 30,
"description": "Minutes until escrow expires"
},
"verification_strategy": {
"type": "string",
"enum": [
"schema",
"hash-lock"
],
"default": "schema",
"description": "How to verify the response: 'schema' (JSON Schema) or 'hash-lock' (exact hash match)"
},
"verification_data": {
"type": "string",
"description": "Verification data: JSON Schema string (for schema strategy) or expected hash (for hash-lock)"
}
},
"required": [
"url",
"seller_address",
"amount_usdc",
"verification_data"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}커뮤니티
증거