dpay-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| RPC_URL | Yes | EVM RPC endpoint | |
| CHAIN_ID | Yes | Chain ID (e.g., '1' for Ethereum mainnet) | |
| PRIVATE_KEY | No | Wallet private key (optional, omit for a disposable wallet) | |
| ALLOWED_TOKENS | Yes | Spending limits in format 'address:session_budget:max_per_tx' (e.g., 'ETH:0.1:0.01') |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| whoamiA | Discover the current wallet, chain, factory address, and spending limits. Call exactly as: {"tool":"whoami","args":{}} |
| eth_create_paymentA | Creates an ETH payment contract. ONLY for ETH — do NOT use for USDC or other ERC20 tokens. Call exactly as: {"tool":"eth_create_payment","args":{"payeeAddress":"0x...","etherAmount":"0.01","settlementWindowSec":"86400"}} |
| payment_infoA | Read the on-chain state for a payment. Call exactly as: {"tool":"payment_info","args":{"paymentAddress":"0x..."}} |
| raise_disputeA | Raise a Kleros dispute for a PAID payment before the settlement time passes. Call exactly as: {"tool":"raise_dispute","args":{"paymentAddress":"0x..."}} |
| submit_evidenceA | Publish evidence for an existing dispute. Call exactly as: {"tool":"submit_evidence","args":{"paymentAddress":"0x...","argument":"short factual explanation"}} |
| settleA | Claim payment funds after the settlement window has passed. Only the payee should call this. Call exactly as: {"tool":"settle","args":{"paymentAddress":"0x..."}} |
| refundA | Voluntarily send the funds back to the payer. Only the payee should call this. Call exactly as: {"tool":"refund","args":{"paymentAddress":"0x..."}} |
| erc20_create_paymentA | Creates an ERC20 payment contract.ONLY for ERC20 tokens — do NOT use for ETH. Call exactly as: {"tool":"erc20_create_payment","args":{"tokenAddress":"0x...","payeeAddress":"0x...","tokenAmount":"1","settlementWindowSec":"86400"}} |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| payment-list | List of all tracked payments |
TDQS
Scored across 8 tools
Each tool has a distinct purpose: separating ERC20 and ETH payment creation, plus dedicated tools for info, dispute, refund, settle, evidence, and wallet info. No two tools overlap in function.
All names use snake_case and follow a verb_noun pattern (e.g., create_payment, raise_dispute), though the token type prefix on erc20_create_payment and eth_create_payment introduces a minor inconsistency. Still predictable.
8 tools provide a focused yet complete set for the decentralized payment domain. Each tool is justified and the count is well-scoped for the server's purpose.
Covers the essential lifecycle: create, settle, dispute, evidence, refund, and wallet info. Missing a cancel tool for the payer, but the core workflows are covered adequately.