Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,071Paid calls: 1,536Letters: 14Defects: 1,322counted 2 min ago
teppi

Server definition

Hash
sha256:f9b99b504071b55bab4cdc2fbce5980142bbc7b4bd9b6ab490b2f85b4b654da6
What it is
What a remote MCP server returned when asked what it offers: 3 tools

The blob, as servednamed by its sha256

{ "instructions": "Stateless visa/entry-requirements lookups. check_entry_requirements is rate limited on the free tier; for unlimited access pay per request via x402 on the HTTP API (see the llms.txt of this host). Advisory information for trip planning — not a boarding, immigration, or legal decision. Rules change frequently; verify with the destination country's official sources before travel.", "tools": [ { "description": "Whether a passport holder can enter a destination country: visa-free, visa on arrival, e-visa, eTA, or visa required — with allowed stay, official application portal, extended rules (passport validity, onward ticket, yellow fever, transit-without-visa) and source citations. Free tier: rate limited per caller (see /auth.md to register for a larger quota, or use the x402-paid HTTP API for unlimited access).", "inputSchema": { "properties": { "destination": { "description": "Destination country, ISO 3166-1 alpha-3 (e.g. JPN)", "type": "string" }, "passport": { "description": "Passport country, ISO 3166-1 alpha-3 (e.g. NLD)", "type": "string" }, "purpose": { "description": "Travel purpose (default: tourism)", "type": "string" }, "residence_permits_of": { "description": "Issuers of residence permits held (ISO3 or SCHENGEN/EU/GCC)", "items": { "type": "string" }, "type": "array" }, "transit": { "description": "Optional transit country, ISO 3166-1 alpha-3", "type": "string" }, "visas_of": { "description": "Issuers of visas held (ISO3 or SCHENGEN/EU/GCC)", "items": { "type": "string" }, "type": "array" } }, "required": [ "passport", "destination" ], "type": "object" }, "name": "check_entry_requirements", "outputSchema": { "additionalProperties": true, "description": "Visa verdict with entry rules and split provenance. Unknown or conflicting data is served as requirement 'unknown'/'needs_review' with action check_official_authority — never guessed.", "properties": { "allowed_stay_days": { "description": "Maximum stay in days when the verdict grants one", "type": [ "number", "null" ] }, "apply": { "additionalProperties": true, "description": "Official government application/information portal when action is required", "properties": { "kind": { "description": "evisa | eta | visa_info", "type": "string" }, "source": { "additionalProperties": true, "description": "Official-source citation for the field it accompanies", "properties": { "name": { "description": "Official authority name", "type": "string" }, "retrieved_at": { "description": "YYYY-MM-DD the source was last retrieved", "type": "string" }, "url": { "description": "Official page the rule was verified against", "type": "string" } }, "type": "object" }, "url": { "description": "Official portal URL", "type": "string" } }, "type": [ "object", "null" ] }, "dataset_version": { "description": "Base-matrix revision (YYYY-MM-DD)", "type": "string" }, "defaults_applied": { "description": "Assumptions applied to answer (e.g. purpose=tourism, ordinary passport)", "items": { "type": "string" }, "type": "array" }, "entry_rules": { "additionalProperties": true, "description": "Destination entry rules: passport_validity, blank_pages, onward_ticket, yellow_fever, other_health, twov (transit-without-visa), residence_permit_exemptions, official_links, purpose_scope — each non-null field cites its official source {name, url, retrieved_at}, plus last_verified and coverage (extended|basic).", "type": "object" }, "entry_rules_verification": { "additionalProperties": true, "description": "Provenance of the curated entry-rules layer: verified_official_sources | stale | not_curated | needs_review, with last_verified and staleness_days", "type": "object" }, "request_id": { "description": "Unique id for reproducibility", "type": "string" }, "requirement": { "description": "visa_free | visa_on_arrival | e_visa | eta | visa_required | no_admission | unknown | needs_review", "type": "string" }, "requirement_label": { "description": "Human-readable verdict", "type": "string" }, "verdict_verification": { "additionalProperties": true, "description": "Provenance of the visa verdict itself — always derives from an aggregated secondary matrix (status secondary_source_only or needs_review), never claimed officially verified", "type": "object" } }, "type": "object" } }, { "description": "Premium evaluation of a whole trip in one call: multiple passports (best passport per leg), documents held, multi-leg itineraries with transit legs, dates and purpose — with structured why[] explanations, conditions[], and verification states per decision. PAID endpoint: the call returns HTTP 402 x402 payment instructions unless the request carries an x402 payment header; any x402-capable client settles in USDC on Base and retries.", "inputSchema": { "properties": { "traveler": { "description": "The traveler's documents", "properties": { "passports": { "description": "ISO3, 1-4 passports", "items": { "type": "string" }, "type": "array" }, "residence_permits_of": { "description": "Issuers of residence permits held (ISO3 or SCHENGEN/EU/GCC)", "items": { "type": "string" }, "type": "array" }, "visas_of": { "description": "Issuers of valid visas held (ISO3 or SCHENGEN/EU/GCC)", "items": { "type": "string" }, "type": "array" } }, "required": [ "passports" ], "type": "object" }, "trip": { "description": "The itinerary to evaluate, in travel order", "properties": { "legs": { "description": "Trip legs in order, up to 10", "items": { "properties": { "arrival_date": { "description": "YYYY-MM-DD; enables stay-duration and validity-window checks", "type": "string" }, "country": { "description": "Leg country, ISO 3166-1 alpha-3", "type": "string" }, "departure_date": { "description": "YYYY-MM-DD; enables stay-duration and validity-window checks", "type": "string" }, "purpose": { "description": "Overrides the trip purpose for this leg", "type": "string" }, "role": { "description": "entry = enter the country; transit = pass through in transit", "enum": [ "entry", "transit" ], "type": "string" } }, "required": [ "country" ], "type": "object" }, "type": "array" }, "purpose": { "description": "Trip-wide travel purpose (default: tourism); per-leg purpose overrides", "type": "string" } }, "required": [ "legs" ], "type": "object" } }, "required": [ "traveler", "trip" ], "type": "object" }, "name": "evaluate_trip", "outputSchema": { "additionalProperties": true, "description": "Per-leg decisions with explanations, or — when the request carried no x402 payment — the machine-readable payment instructions to settle and retry.", "properties": { "error": { "description": "Present on the unpaid path: 'payment_required'", "type": "string" }, "legs": { "description": "One decision per leg: requirement, best_option (which held passport/document wins), why[] explanations with sources, conditions[] (validity, onward ticket, yellow fever, stay-duration fit), and a verification state", "items": { "additionalProperties": true, "type": "object" }, "type": "array" }, "trip_summary": { "additionalProperties": true, "description": "Aggregate outcome", "type": "object" }, "x402_requirements": { "additionalProperties": true, "description": "x402 v2 payment requirements (decoded from the PAYMENT-REQUIRED header): pay in USDC on Base and retry the same call", "type": [ "object", "null" ] } }, "type": "object" } }, { "description": "Coverage and freshness of the underlying visa-requirements dataset, plus endpoints and x402 pricing for the unlimited paid tier.", "inputSchema": { "properties": {}, "type": "object" }, "name": "get_dataset_info", "outputSchema": { "additionalProperties": true, "description": "Dataset revision plus the free and x402-paid endpoints with current prices", "properties": { "data": { "additionalProperties": true, "properties": { "retrieved_at": { "description": "Base-matrix revision (YYYY-MM-DD)", "type": "string" } }, "type": "object" }, "docs": { "description": "LLM-facing documentation URL", "type": "string" }, "free_endpoint": { "additionalProperties": true, "description": "The free rate-limited check endpoint", "properties": { "limit": { "description": "Free-tier quota", "type": "string" }, "price": { "type": "string" }, "url": { "type": "string" } }, "type": "object" }, "paid_endpoints": { "additionalProperties": true, "description": "x402 pay-per-request endpoints (USDC on Base, no account)", "properties": { "check": { "additionalProperties": true, "type": "object" }, "evaluate": { "additionalProperties": true, "type": "object" }, "matrix": { "additionalProperties": true, "type": "object" } }, "type": "object" }, "transparency": { "description": "Data-quality metrics URL", "type": "string" } }, "type": "object" } } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:f9b99b504071b55bab4cdc2fbce5980142bbc7b4bd9b6ab490b2f85b4b654da6 | sha256sum