mcp
Let your AI assistant pay for web content in USDC (x402) within a budget you set.
Should I use this
Quality & Safety
Findings (1)
- LOWin check_price
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"mcp": {
"command": "npx",
"args": [
"@p2flux/mcp"
]
}
}
}Runnable packages
0.3.1stdioRemote endpoints
https://agent.p2flux.com/mcpstreamable-httpWhat it can do
Tool inventory
Tools (4)
🟢find_paid_content(query)
Search the P2Flux directory for websites that sell content to AI agents. Returns site names, what they offer and the price per page. Costs nothing.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"maxLength": 100,
"description": "Words to look for, e.g. \"soup recipes\". Empty lists the newest sites."
}
},
"required": [
"query"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢check_price(url, access_tokens)
See what a web page costs for an AI agent, without paying.
Input Schema
{
"type": "object",
"properties": {
"url": {
"type": "string",
"maxLength": 2048,
"description": "The page address (https)."
},
"access_tokens": {
"type": "array",
"items": {
"type": "string",
"maxLength": 200
},
"maxItems": 10,
"description": "Access tokens exactly as get_paid_page gave them (host|token|seal). Each is sent only to the site it was given for; others are ignored."
}
},
"required": [
"url"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢request_paid_page(url, max_price, access_tokens)
Ask to read a paid web page. Returns a link the USER must open to approve the payment in their own wallet - show the link and the price to the user and wait. Then call get_paid_page with the request_id. Nothing is paid without the user approving it.
Input Schema
{
"type": "object",
"properties": {
"url": {
"type": "string",
"maxLength": 2048,
"description": "The page address (https)."
},
"max_price": {
"type": "string",
"maxLength": 12,
"description": "The most to pay for this page, in USDC, e.g. \"0.10\". Required, after asking the user, for anything above a few USDC (a subscription)."
},
"access_tokens": {
"type": "array",
"items": {
"type": "string",
"maxLength": 200
},
"maxItems": 10,
"description": "Access tokens exactly as get_paid_page gave them (host|token|seal). Each is sent only to the site it was given for; others are ignored."
}
},
"required": [
"url"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_paid_page(request_id)
Get the text of a page after the user approved its payment (see request_paid_page).
Input Schema
{
"type": "object",
"properties": {
"request_id": {
"type": "string",
"maxLength": 64,
"description": "The request_id from request_paid_page."
}
},
"required": [
"request_id"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Community
Evidence