payfetch MCP
A non-custodial stdio MCP server that enables AI agents to automatically pay for web content via the x402 payment protocol. It enforces strict spending controls including per-call, per-day, and per-host caps, host allow/deny lists, and human-approval thresholds. The client uses the user's own wallet, ensuring keys never leave the machine, and maintains an append-only receipt log for all payment attempts.
Package and access
Local package with source-attributed installation metadata. Koskamo does not execute packages during review.
What you can do with it
- Automate payments for AI agent web fetches
- Enforce per-call and per-day spending caps
- Manage host allow and deny lists
- Generate append-only payment receipts
Source and maintenance
- Maintenance checked
Packages and installation
Source-provided package data. Koskamo has not executed or live-probed this package.
@forum-labs/payfetch 1.0.0
{
"version": "1.0.0",
"transport": "stdio",
"identifier": "@forum-labs/payfetch",
"registryType": "npm",
"environmentVariables": [
{
"name": "PAYFETCH_PRIVATE_KEY",
"format": "string",
"description": "0x-hex EVM private key for a DEDICATED low-balance wallet. Set exactly ONE signer source."
},
{
"name": "PAYFETCH_KEY_FILE",
"format": "string",
"description": "Path to a chmod-600 file holding a 0x-hex key (signer alt)."
},
{
"name": "PAYFETCH_CDP_API_KEY_ID",
"format": "string",
"description": "Coinbase CDP server-wallet key id (YOUR account)."
},
{
"name": "PAYFETCH_CDP_API_KEY_SECRET",
"format": "string",
"description": "Coinbase CDP API key secret."
},
{
"name": "PAYFETCH_CDP_WALLET_SECRET",
"format": "string",
"description": "Coinbase CDP wallet secret."
},
{
"name": "PAYFETCH_CDP_ACCOUNT_NAME",
"format": "string",
"description": "Optional named CDP EVM account."
},
{
"name": "PAYFETCH_DATA_DIR",
"format": "string",
"description": "Ledger/state/config root. Default ~/.payfetch."
},
{
"name": "PAYFETCH_TEST_MODE",
"format": "string",
"description": "Any value -> receipts test:true, Base mainnet refused (Sepolia only)."
},
{
"name": "PAYFETCH_APPROVER",
"format": "string",
"description": "Set to 1 to grant approval authority (never with a queue-capable mode)."
},
{
"name": "PAYFETCH_VIA",
"format": "string",
"description": "Optional via= attribution slug sent on guard calls only."
}
]
}Tools
Reported by the attributed source; not independently observed by Koskamo.
Connect from your client
Each snippet configures the same source-provided package; replace placeholders before use.
Cursor
{
"mcpServers": {
"payfetch-mcp": {
"command": "npx",
"args": [
"-y",
"@forum-labs/payfetch@1.0.0"
],
"env": {
"PAYFETCH_PRIVATE_KEY": "<YOUR_PAYFETCH_PRIVATE_KEY>",
"PAYFETCH_KEY_FILE": "<YOUR_PAYFETCH_KEY_FILE>",
"PAYFETCH_CDP_API_KEY_ID": "<YOUR_PAYFETCH_CDP_API_KEY_ID>",
"PAYFETCH_CDP_API_KEY_SECRET": "<YOUR_PAYFETCH_CDP_API_KEY_SECRET>",
"PAYFETCH_CDP_WALLET_SECRET": "<YOUR_PAYFETCH_CDP_WALLET_SECRET>",
"PAYFETCH_CDP_ACCOUNT_NAME": "<YOUR_PAYFETCH_CDP_ACCOUNT_NAME>",
"PAYFETCH_DATA_DIR": "<YOUR_PAYFETCH_DATA_DIR>",
"PAYFETCH_TEST_MODE": "<YOUR_PAYFETCH_TEST_MODE>",
"PAYFETCH_APPROVER": "<YOUR_PAYFETCH_APPROVER>",
"PAYFETCH_VIA": "<YOUR_PAYFETCH_VIA>"
}
}
}
}Cline
{
"mcpServers": {
"payfetch-mcp": {
"command": "npx",
"args": [
"-y",
"@forum-labs/payfetch@1.0.0"
],
"env": {
"PAYFETCH_PRIVATE_KEY": "<YOUR_PAYFETCH_PRIVATE_KEY>",
"PAYFETCH_KEY_FILE": "<YOUR_PAYFETCH_KEY_FILE>",
"PAYFETCH_CDP_API_KEY_ID": "<YOUR_PAYFETCH_CDP_API_KEY_ID>",
"PAYFETCH_CDP_API_KEY_SECRET": "<YOUR_PAYFETCH_CDP_API_KEY_SECRET>",
"PAYFETCH_CDP_WALLET_SECRET": "<YOUR_PAYFETCH_CDP_WALLET_SECRET>",
"PAYFETCH_CDP_ACCOUNT_NAME": "<YOUR_PAYFETCH_CDP_ACCOUNT_NAME>",
"PAYFETCH_DATA_DIR": "<YOUR_PAYFETCH_DATA_DIR>",
"PAYFETCH_TEST_MODE": "<YOUR_PAYFETCH_TEST_MODE>",
"PAYFETCH_APPROVER": "<YOUR_PAYFETCH_APPROVER>",
"PAYFETCH_VIA": "<YOUR_PAYFETCH_VIA>"
}
}
}
}VS Code
{
"servers": {
"payfetch-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@forum-labs/payfetch@1.0.0"
],
"env": {
"PAYFETCH_PRIVATE_KEY": "<YOUR_PAYFETCH_PRIVATE_KEY>",
"PAYFETCH_KEY_FILE": "<YOUR_PAYFETCH_KEY_FILE>",
"PAYFETCH_CDP_API_KEY_ID": "<YOUR_PAYFETCH_CDP_API_KEY_ID>",
"PAYFETCH_CDP_API_KEY_SECRET": "<YOUR_PAYFETCH_CDP_API_KEY_SECRET>",
"PAYFETCH_CDP_WALLET_SECRET": "<YOUR_PAYFETCH_CDP_WALLET_SECRET>",
"PAYFETCH_CDP_ACCOUNT_NAME": "<YOUR_PAYFETCH_CDP_ACCOUNT_NAME>",
"PAYFETCH_DATA_DIR": "<YOUR_PAYFETCH_DATA_DIR>",
"PAYFETCH_TEST_MODE": "<YOUR_PAYFETCH_TEST_MODE>",
"PAYFETCH_APPROVER": "<YOUR_PAYFETCH_APPROVER>",
"PAYFETCH_VIA": "<YOUR_PAYFETCH_VIA>"
}
}
}
}Claude Desktop
{
"mcpServers": {
"payfetch-mcp": {
"command": "npx",
"args": [
"-y",
"@forum-labs/payfetch@1.0.0"
],
"env": {
"PAYFETCH_PRIVATE_KEY": "<YOUR_PAYFETCH_PRIVATE_KEY>",
"PAYFETCH_KEY_FILE": "<YOUR_PAYFETCH_KEY_FILE>",
"PAYFETCH_CDP_API_KEY_ID": "<YOUR_PAYFETCH_CDP_API_KEY_ID>",
"PAYFETCH_CDP_API_KEY_SECRET": "<YOUR_PAYFETCH_CDP_API_KEY_SECRET>",
"PAYFETCH_CDP_WALLET_SECRET": "<YOUR_PAYFETCH_CDP_WALLET_SECRET>",
"PAYFETCH_CDP_ACCOUNT_NAME": "<YOUR_PAYFETCH_CDP_ACCOUNT_NAME>",
"PAYFETCH_DATA_DIR": "<YOUR_PAYFETCH_DATA_DIR>",
"PAYFETCH_TEST_MODE": "<YOUR_PAYFETCH_TEST_MODE>",
"PAYFETCH_APPROVER": "<YOUR_PAYFETCH_APPROVER>",
"PAYFETCH_VIA": "<YOUR_PAYFETCH_VIA>"
}
}
}
}Let your agent find its tools
Find servers like payfetch MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.