Teppi
Server Details
Check what a paid x402 endpoint or MCP server delivered, from probes anyone can repeat.
- Status
- Healthy
- Uptime
- 100.0% over 38 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
TDQS
Scored across 5 tools
Each tool targets a distinct concern: exposure/auditing, endpoint verification, capability detail, route planning, and search. check_exposure and check_grade both involve verification but one is about spend/accounting while the other is about endpoint health/pricing, so they are separable.
All tool names use a consistent verb_noun pattern: check_exposure, check_grade, get_capability, plan_route, search_capabilities. The verbs are clear and the pattern is uniform, though 'check_grade' is slightly less descriptive than the others.
Five tools is a well-scoped set for a paid-endpoint discovery and verification server. Each tool covers a distinct phase of the workflow: search, inspect, verify, plan, and audit.
The surface covers the core lifecycle of discovering, evaluating, and planning around paid endpoints. A minor gap is the lack of a tool to directly invoke/pay an endpoint or manage payment records, but the server's stated purpose is planning and verification, not execution.
Available Tools
5 toolscheck_exposureWhat your paid dependencies deliverARead-onlyInspect
Look up every paid endpoint your agents call in one go, added up by the address each one pays: which are unknown to the record, which took money and returned nothing, which list what they do not serve, and how much monthly spend sits on each. Unknown is reported as unknown, never as bad.
| Name | Required | Description | Default |
|---|---|---|---|
| dependencies | Yes | the paid endpoints your agents call, each a url or an object naming one |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, covering safety and open-world assumptions. The description adds value by explicitly stating the reporting philosophy: 'Unknown is reported as unknown, never as bad.' It also hints at the categories of results (which returned nothing, which list exclusions), which gives the agent a preview of the output semantics. This goes beyond the annotations without contradicting them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences total with zero filler. The first sentence front-loads the primary action and the breakdown categories, and the second adds a critical nuance ('Unknown is reported as unknown'). Every part earns its place; no redundancy or vague phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only lookup with no output schema, the description covers the key output categories (unknown, paid-but-empty, non-serving, monthly spend). It does not describe the exact return format or pagination, but given the moderate complexity and the strong parameter schema, the description is sufficient for an agent to call it correctly. The openWorldHint annotation also sets expectations about unknown items.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% — the 'dependencies' array and its item properties (url, method, pay_to, calls_per_month) all carry descriptions. The tool description does not add any parameter-level detail beyond what the schema provides, so it rides on the schema. This meets the baseline for full schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('look up'), a clear resource ('every paid endpoint your agents call'), and the aggregation dimension ('added up by the address each one pays'). It also lists the specific outcomes (unknown, paid-but-no-response, non-serving, monthly spend). This clearly differentiates it from sibling tools like check_grade or plan_route, which are unrelated to paid endpoint exposure.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The purpose is so specific that the usage context is obvious: use it when you need a consolidated view of paid endpoints across a fleet. However, there is no explicit statement of when not to use it or mention of alternatives, though siblings are clearly different. The description implies a batch/aggregation scenario without explicitly saying so.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_gradeWhat has been verifiedARead-onlyInspect
Return what has been verified about an x402 endpoint or its url: whether it answers, what it charges, and whether that price has moved. Answers unrated rather than guessing when the evidence is thin. Works for endpoints Teppi does not operate, and a url never seen is put in line for a free handshake, so ask again in an hour.
| Name | Required | Description | Default |
|---|---|---|---|
| method | No | ||
| pay_to | No | the payTo address from the 402, to learn what the record knows about who gets paid | |
| id_or_url | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnly/openWorld hints, it discloses meaningful behavior: 'Answers unrated rather than guessing when the evidence is thin' and 'a url never seen is put in line for a free handshake' reveal non-immediate and abstention semantics. This is exactly the kind of context an agent needs and annotations do not provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the return purpose, followed by edge-case behavior and retry guidance. Every sentence adds information; no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only check with no output schema, it covers the main return content, unknown-URL handling, and coverage scope. The remaining gap is that the method parameter is left semantically unexplained, and no sibling is named as an alternative, though the description is otherwise sufficient for invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 33%, so the description must compensate. It clarifies id_or_url ('x402 endpoint or its url') and indirectly relates pay_to via the payTo/charges semantics, but it never explains what the optional method GET/POST means or when to supply pay_to beyond the schema's own description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Return what has been verified about an x402 endpoint or its url...' and enumerates concrete facts (whether it answers, what it charges, whether the price moved), which clearly distinguishes this from planning/capability siblings. The 'Works for endpoints Teppi does not operate' sentence adds a meaningful coverage distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides clear usage context: works even for endpoints Teppi does not operate, and unseen URLs are queued for a free handshake, so 'ask again in an hour' is explicit retry guidance. It does not name sibling tools or give when-not-to-use exclusions, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_capabilityOne capability in fullARead-onlyInspect
Full detail for one capability: schemas, pricing, networks, the seller behind it, and every observation recorded against it.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only and open-world behavior. The description adds useful behavioral context by specifying exactly what will be returned: schemas, pricing, networks, seller details, and all recorded observations. This is consistent with the annotations and adds value beyond them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that immediately states the scope ('Full detail for one capability') followed by a compact, informative list. There is no filler, repetition, or unnecessary prose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only get-by-id tool, the description explains the return content well enough, and the annotations cover safety. It could be more complete by explicitly linking the id parameter to the capability being fetched, but the overall definition is sufficient for an agent to select and invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has one required parameter, id, with 0% description coverage, yet the description never mentions the id parameter or how to supply it. The pattern in the schema provides format information, but the description itself adds no parameter semantics; the connection to 'one capability' is only indirect.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action: retrieve full detail for one capability, and enumerates the included content areas (schemas, pricing, networks, seller, observations). It implicitly distinguishes itself from search_capabilities by emphasizing a single entity, but it does not explicitly contrast with any sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intended usage is implied: use this tool when you need comprehensive information about a specific capability, presumably after identifying it through a search. No explicit when-to-use or when-not-to-use guidance is given, and no alternatives are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
plan_routePlan a routeARead-onlyInspect
Turn a goal and a budget into an ordered list of paid endpoints that could reach it, with a cost estimate and what has been verified about each step. Moves no money and buys nothing: it returns the plan for you to run yourself.
| Name | Required | Description | Default |
|---|---|---|---|
| goal | Yes | ||
| min_grade | No | ||
| budget_usd | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description reinforces this by saying it 'Moves no money and buys nothing.' It adds meaningful behavioral context about what the tool returns: ordered list, cost estimate, and verification state per step. This goes beyond the annotations and helps the agent set expectations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only two sentences, front-loaded with the core function and output, followed by a necessary clarification about non-execution. There is no filler or redundancy; every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given there is no output schema, the description does a good job enumerating what the return value contains: ordered paid endpoints, cost estimate, and verified-step details. It also clarifies side-effect behavior. Minor gaps remain around parameter meaning, but the overall tool behavior is sufficiently described for an agent to use it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, but it only mentions 'goal' and 'budget' at a high level. It does not explain the min_grade parameter at all, nor the budget_usd decimal-string format, nor how goal language or grade filtering affects the plan. This leaves a required and an optional parameter underspecified.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Turn') and resource ('a goal and a budget' into a route), and clearly defines the result as an ordered list of paid endpoints with cost estimate and verification details. It also explicitly distinguishes planning from executing by saying 'returns the plan for you to run yourself.' This is clear and differentiates from the sibling tools around capabilities and grades.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: use this when you have a goal and budget and need an ordered plan of paid endpoints. It also implicitly excludes execution by stating 'Moves no money and buys nothing: it returns the plan for you to run yourself.' However, it does not explicitly name alternatives or state when not to use it versus siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_capabilitiesSearch paid capabilitiesARead-onlyInspect
Search paid agent capabilities by task description. Returns the price, the input and output schemas, the networks each one settles on, and what has been verified about it. Sort by verified to put the ones with the most evidence behind them first. Use before paying an x402 endpoint you have not used.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | ||
| limit | No | ||
| query | Yes | ||
| max_usd | No | ||
| network | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, lowering the burden on the description. The description adds valuable behavioral context by specifying the returned fields (price, schemas, networks, verification) and the verified-first sort behavior. It does not contradict the annotations, though it omits details like pagination or open-world result semantics.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four sentences with no filler: purpose, return payload, sort guidance, and usage trigger each occupy one sentence. It is front-loaded and every clause adds information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only search tool with no output schema, the description covers the primary use case and return behavior well. However, with five parameters and zero schema-level documentation, the missing explanations for max_usd, network, and limit leave notable gaps for an agent trying to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With schema description coverage at 0%, the description must compensate for parameter meaning. It hints at query through 'by task description' and at sort through 'Sort by verified', but leaves limit, max_usd, and network unexplained, including their format constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Search') with a concrete resource ('paid agent capabilities') and a clear search criterion ('by task description'). It also lists what is returned and the scenario where it should be used, making its purpose unambiguous and distinguishable from siblings like get_capability.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides an explicit trigger: 'Use before paying an x402 endpoint you have not used.' However, it does not name alternatives or state when not to use it, so it stops short of a perfect 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
- Added
check_exposure - Changed
check_grade1 field changed- added
Input schema / properties / pay_toAdded value: +{ + "description": "the payTo address from the 402, to learn what the record knows about who gets paid", + "pattern": "^0x[0-9a-fA-F]{40}$|^[1-9A-HJ-NP-Za-km-z]{32,44}$", + "type": "string" +}
1 tool update
- Changed
check_grade1 field changed- added
Input schema / properties / methodAdded value: +{ + "enum": [ + "GET", + "POST" + ], + "type": "string" +}
4 tool updates
- First observed
check_grade - First observed
get_capability - First observed
plan_route - First observed
search_capabilities
Related MCP Connectors
Check an A2A agent before you delegate, or an MCP server's measured conduct. Free, no key.
Live x402 endpoint trust/diligence check before you pay it. $0.02/call via x402.
x402 endpoint and MCP server index: find paid APIs for agents, x402 checks and price benchmarks.
Independent health, price and history for x402/MPP endpoints. Metered over x402; free grade on web.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceMCP server that checks an x402 paid endpoint before an agent pays it, and checks afterwards that the receipt opens to exactly one real on-chain settlement. Two tools, no account, no API key.Apache 2.0
- FlicenseNot gradedqualityBmaintenanceFree x402 endpoint checker plus paid report and metadata tools. Remote MCP server for agents. Written by AI named Nock, not a human.-

ScrapeCheck MCPofficial
AlicenseAqualityBmaintenanceMCP server that verifies scraped web data by re-fetching source pages and returning ed25519-signed pass, fail, or unverifiable verdicts, with x402 in-band payment.3MIT- AlicenseAqualityAmaintenanceMCP server for on-demand network diagnostics, providing DNS lookups with DNSSEC checks, ping, traceroute, TCP port checks, HTTP checks, TLS certificate inspection, WHOIS, and ASN lookups.12171 PyPIMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.