Server definition
- Hash
- sha256:cc74e41060ae700daee8841b0ed5d4c0910384d29148f291c748a69b5ee4aaf6
- What it is
- What a remote MCP server returned when asked what it offers: 12 tools
The blob, as servednamed by its sha256
{
"instructions": "Russian Web Data Access for AI agents. Flagship tool fetch_ru(agent_id, url): give a URL of any Russian website or API, get its HTML/JSON fetched through a Russian IP — works on sites that block foreign traffic (Wildberries, Ozon, Yandex Market, hh.ru, Avito). Pay-per-use: on insufficient balance tools return payment_required → call topup_balance (x402/USDC or RUB) and retry. No human signup. Secondary: get_ru_proxy (raw RU IP), register_ru_domain (.ru/.рф).",
"tools": [
{
"description": "Get agent balance in minor units (kopecks).",
"inputSchema": {
"properties": {
"agent_id": {
"title": "Agent Id",
"type": "string"
}
},
"required": [
"agent_id"
],
"title": "check_balanceArguments",
"type": "object"
},
"name": "check_balance",
"outputSchema": null
},
{
"description": "Check if a domain is available (.com/.ru/.рф). Free, no balance needed.",
"inputSchema": {
"properties": {
"domain": {
"title": "Domain",
"type": "string"
}
},
"required": [
"domain"
],
"title": "check_domainArguments",
"type": "object"
},
"name": "check_domain",
"outputSchema": null
},
{
"description": "Russia specialization of fetch_web (country='ru'): content of any Russian site/API through a\n Russian IP (Wildberries, Ozon, Yandex Market, hh.ru, Avito). residential=true for hard antibot.",
"inputSchema": {
"properties": {
"agent_id": {
"title": "Agent Id",
"type": "string"
},
"residential": {
"default": false,
"title": "Residential",
"type": "boolean"
},
"url": {
"title": "Url",
"type": "string"
}
},
"required": [
"agent_id",
"url"
],
"title": "fetch_ruArguments",
"type": "object"
},
"name": "fetch_ru",
"outputSchema": null
},
{
"description": "Give a URL of ANY website or API — get its content (HTML/JSON) fetched through an IP of the\n chosen country (country='ru','us','de','gb',...). Flagship tool — URL in, content out, no proxy setup.\n Specialty: country='ru' unlocks Russia-only sites that block foreign IPs (Wildberries, Ozon, Yandex\n Market, hh.ru, Avito). Set residential=true for sites that block datacenter IPs.\n Set render=true to render JS in a real headless Chromium (SPA / JS-heavy / JS-challenge sites).\n Charged from agent balance; returns payment_required if insufficient (then topup_balance and retry).",
"inputSchema": {
"properties": {
"agent_id": {
"title": "Agent Id",
"type": "string"
},
"country": {
"default": "ru",
"title": "Country",
"type": "string"
},
"render": {
"default": false,
"title": "Render",
"type": "boolean"
},
"residential": {
"default": false,
"title": "Residential",
"type": "boolean"
},
"url": {
"title": "Url",
"type": "string"
}
},
"required": [
"agent_id",
"url"
],
"title": "fetch_webArguments",
"type": "object"
},
"name": "fetch_web",
"outputSchema": null
},
{
"description": "Get a Russian IP proxy to access RU-only sites (Wildberries, Ozon, Yandex, hh.ru, Avito)\n that block foreign IPs. Charged from agent balance; returns payment_required if insufficient\n (then call topup_balance and retry). Idempotent per agent.",
"inputSchema": {
"properties": {
"agent_id": {
"title": "Agent Id",
"type": "string"
},
"count": {
"default": 1,
"title": "Count",
"type": "integer"
},
"period_days": {
"default": 30,
"title": "Period Days",
"type": "integer"
}
},
"required": [
"agent_id"
],
"title": "get_ru_proxyArguments",
"type": "object"
},
"name": "get_ru_proxy",
"outputSchema": null
},
{
"description": "Register a .ru/.рф domain (secondary service). Charged from balance.",
"inputSchema": {
"properties": {
"agent_id": {
"title": "Agent Id",
"type": "string"
},
"domain": {
"title": "Domain",
"type": "string"
},
"idempotency_key": {
"title": "Idempotency Key",
"type": "string"
}
},
"required": [
"agent_id",
"domain",
"idempotency_key"
],
"title": "register_ru_domainArguments",
"type": "object"
},
"name": "register_ru_domain",
"outputSchema": null
},
{
"description": "Run agent code (python / javascript / bash) in an isolated sandbox (no network, CPU/RAM/time\n limits) and get stdout/stderr/exit_code back. Charged from agent balance; returns payment_required\n if insufficient (then topup_balance and retry).",
"inputSchema": {
"properties": {
"agent_id": {
"title": "Agent Id",
"type": "string"
},
"code": {
"default": "",
"title": "Code",
"type": "string"
},
"language": {
"default": "python",
"title": "Language",
"type": "string"
},
"timeout": {
"default": 10,
"title": "Timeout",
"type": "integer"
}
},
"required": [
"agent_id"
],
"title": "run_codeArguments",
"type": "object"
},
"name": "run_code",
"outputSchema": null
},
{
"description": "Help improve this service: tell us what you need. question is one of:\n need_data (which Russian data sources you need), why_no_pay (if you didn't pay: price/payment_friction/\n just_exploring/not_now), missing_service (what's missing), country_need (which country IP). Short answer.",
"inputSchema": {
"properties": {
"agent_id": {
"title": "Agent Id",
"type": "string"
},
"answer": {
"title": "Answer",
"type": "string"
},
"question": {
"title": "Question",
"type": "string"
}
},
"required": [
"agent_id",
"question",
"answer"
],
"title": "submit_surveyArguments",
"type": "object"
},
"name": "submit_survey",
"outputSchema": null
},
{
"description": "Top up agent balance. rail: usdc (x402) or rub (YooKassa). Returns pay_url to complete payment.",
"inputSchema": {
"properties": {
"agent_id": {
"title": "Agent Id",
"type": "string"
},
"amount_minor": {
"title": "Amount Minor",
"type": "integer"
},
"email": {
"default": "[email protected]",
"title": "Email",
"type": "string"
},
"rail": {
"default": "usdc",
"title": "Rail",
"type": "string"
}
},
"required": [
"agent_id",
"amount_minor"
],
"title": "topup_balanceArguments",
"type": "object"
},
"name": "topup_balance",
"outputSchema": null
},
{
"description": "Find an x402 service by task and price across the whole catalog (27k+ listings). The x402\n ecosystem has no unified search across facilitators — this is that discovery layer.",
"inputSchema": {
"properties": {
"agent_id": {
"title": "Agent Id",
"type": "string"
},
"limit": {
"default": 20,
"title": "Limit",
"type": "integer"
},
"max_price_usd": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Max Price Usd"
},
"q": {
"default": "",
"title": "Q",
"type": "string"
}
},
"required": [
"agent_id"
],
"title": "x402_discoveryArguments",
"type": "object"
},
"name": "x402_discovery",
"outputSchema": null
},
{
"description": "Reputation of an x402 payment recipient: weekly revenue, unique buyers, average ticket, what\n they sell, and our organic-vs-farm verdict. Few unique buyers against sizeable revenue is the\n signature of volume washing — six addresses with exactly 5 buyers each accounted for 45% of the\n top-100 revenue in our last measurement.",
"inputSchema": {
"properties": {
"address": {
"title": "Address",
"type": "string"
},
"agent_id": {
"title": "Agent Id",
"type": "string"
}
},
"required": [
"agent_id",
"address"
],
"title": "x402_seller_reputationArguments",
"type": "object"
},
"name": "x402_seller_reputation",
"outputSchema": null
},
{
"description": "Check ANY x402 endpoint BEFORE paying it. Payments in x402 are irreversible — there is no\n dispute button — and by our measurement 1 in 6 listed services is dead while 76% of Base volume\n comes from wash-trading farms. Returns: liveness verdict from our probes, current and historical\n price, the receiving address, and an organic-vs-farm verdict on that seller. Built on our own\n daily snapshots since 2026-06-16; no public source has this history.",
"inputSchema": {
"properties": {
"agent_id": {
"title": "Agent Id",
"type": "string"
},
"resource": {
"title": "Resource",
"type": "string"
}
},
"required": [
"agent_id",
"resource"
],
"title": "x402_service_checkArguments",
"type": "object"
},
"name": "x402_service_check",
"outputSchema": null
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:cc74e41060ae700daee8841b0ed5d4c0910384d29148f291c748a69b5ee4aaf6 | sha256sum