agent-exec
Server Details
Accountless pay-per-use sandbox execution, storage, locks, attestation and handoff; pay via x402.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 2 tools
The two tools have distinct purposes: one searches a directory of listings, the other provides payment details for agent-exec's own service. While both relate to services, the descriptions make the actions clear enough to avoid confusion.
The names use snake_case consistently, but the pattern is mixed: 'search_listings' follows a verb_noun convention, while 'service_card' is a noun phrase. This is a readable but inconsistent naming scheme.
With only two tools, the surface feels thin for a directory and sales platform. It may cover the minimum, but it's borderline for the apparent scope.
The tools allow searching listings and getting payment details for agent-exec's own service, but there is no way to retrieve payment or purchase information for other listings found via search. This is a significant gap for a directory of paid services.
Available Tools
2 toolssearch_listingsSearch the agent-exec directoryARead-onlyInspect
Free, unauthenticated search over agent-exec's directory of paid agent-facing services (same data as GET https://agent-exec.45.67.221.128.sslip.io/listings). Returns a page of listings and an opaque cursor for the next page.
| Name | Required | Description | Default |
|---|---|---|---|
| tag | No | Filter to listings carrying this tag. | |
| limit | No | Max listings to return (server-bounded regardless). | |
| cursor | No | Opaque pagination cursor from a previous call's nextCursor. |
Output Schema
| Name | Required | Description |
|---|---|---|
| error | No | |
| listings | No | |
| nextCursor | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds meaningful behavioral context: it is unauthenticated, returns a page of listings, and uses an opaque cursor for pagination. 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?
The description is two sentences with no filler. It front-loads the core purpose, then adds the endpoint equivalence and pagination behavior. 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 the presence of a full output schema, complete parameter descriptions, and annotations covering the safety profile, the description is sufficient. It adds the key facts an agent needs—unauthenticated access, endpoint equivalence, and pagination—without omitting anything critical.
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%, so the schema already documents all three parameters clearly. The description does not add parameter-level detail beyond what the schema provides, but it also does not need to; the baseline of 3 applies.
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'), a specific resource ('agent-exec's directory of paid agent-facing services'), and notes it returns the same data as a GET endpoint. It is clear and self-contained, though it does not explicitly differentiate itself from the sibling tool 'service_card'.
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 makes the tool's purpose obvious and notes that it is free and unauthenticated, which implies when it is appropriate. However, it does not mention when to prefer this over 'service_card' or any exclusions, so usage guidance is only implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
service_cardagent-exec service cardARead-onlyInspect
What agent-exec sells, what it costs, and exactly where to send a plain-HTTP x402 payment to buy it. This tool call itself is free and moves no money -- MCP cannot carry an x402 402, so buying happens over plain HTTP at the URLs this returns, not through this MCP connection.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| quote | Yes | |
| execute | Yes | |
| llmsTxt | Yes | |
| network | Yes | |
| openapi | Yes | |
| payment | Yes | |
| service | Yes | |
| directory | Yes | |
| resources | Yes | |
| description | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare a read-only, non-destructive, non-open-world operation, but the description adds decisive context the annotations cannot: the call is free, moves no money, and that MCP cannot carry an x402 402 so purchasing must occur out-of-band over HTTP. That directly preempts a costly misassumption for an agent.
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, fully front-loaded with the returned content before the behavioral caveat. Every clause carries weight: the offering, the cost, the payment URL, and the no-money-moves constraint.
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?
An output schema exists, so return shape need not be spelled out. Given zero parameters and covering annotations, the description supplies everything an agent needs: what it gets back and the fact that the actual purchase path lies outside MCP.
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 takes zero parameters, so there is nothing to document and the baseline is 4. The description correctly implies a parameterless, information-returning call rather than suggesting any inputs.
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 resource and contents: what agent-exec sells, its price, and the exact HTTP endpoint for payment. It is unambiguous about what a call returns. It does not, however, explicitly distinguish itself from the sibling search_listings, leaving that distinction to be inferred.
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 makes clear when to use it (discovering the offering, pricing, and payment endpoint) and, importantly, sets a boundary: buying does not happen through this MCP connection but over plain HTTP. It stops short of naming search_listings as the alternative for discovery-style queries, so exclusion guidance is only partial.
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.
1 tool update
- Changed
service_card2 fields changed- added
Output schema / properties / resourcesAdded value: +{ + "items": { + "additionalProperties": false, + "properties": { + "description": { + "type": "string" + }, + "free": { + "type": "boolean" + }, + "method": { + "type": "string" + }, + "pricing": {}, + "resource": { + "type": "string" + } + }, + "required": [ + "resource", + "method", + "free", + "description" + ], + "type": "object" + }, + "type": "array" +} - changed
Output schema / requiredPrevious value: -[ - "service", - "description", - "network", - "execute", - "quote", - "directory", - "payment", - "openapi", - "llmsTxt" -]New value: +[ + "service", + "description", + "network", + "execute", + "quote", + "directory", + "resources", + "payment", + "openapi", + "llmsTxt" +]
1 tool update
- Changed
search_listings1 field changed- changed
Output schema / properties / listings / items / requiredPrevious value: -[ - "url", - "name", - "description", - "tags", - "tier", - "lastSeenAlive", - "paidUntil", - "dead", - "lastProbeCode", - "operator", - "provenance", - "claimable", - "claim", - "consecutiveFailures", - "deadSince", - "evictsAt", - "remedy", - "promote" -]New value: +[ + "id", + "url", + "name", + "description", + "tags", + "tier", + "lastSeenAlive", + "paidUntil", + "dead", + "lastProbeCode", + "operator", + "provenance", + "claimable", + "claim", + "consecutiveFailures", + "deadSince", + "evictsAt", + "remedy", + "promote" +]
1 tool update
- Changed
search_listings2 fields changed- added
Output schema / properties / listings / items / properties / promoteAdded value: +{ + "additionalProperties": false, + "properties": { + "method": { + "const": "POST", + "type": "string" + }, + "plans": { + "items": { + "additionalProperties": false, + "properties": { + "days": { + "type": "number" + }, + "duration": { + "type": "string" + }, + "name": { + "type": "string" + }, + "price": { + "type": "string" + }, + "priceUsd": { + "type": "number" + } + }, + "required": [ + "duration", + "name", + "days", + "priceUsd", + "price" + ], + "type": "object" + }, + "type": "array" + }, + "url": { + "type": "string" + } + }, + "required": [ + "url", + "method", + "plans" + ], + "type": "object" +} - changed
Output schema / properties / listings / items / requiredPrevious value: -[ - "url", - "name", - "description", - "tags", - "tier", - "lastSeenAlive", - "paidUntil", - "dead", - "lastProbeCode", - "operator", - "provenance", - "claimable", - "claim", - "consecutiveFailures", - "deadSince", - "evictsAt", - "remedy" -]New value: +[ + "url", + "name", + "description", + "tags", + "tier", + "lastSeenAlive", + "paidUntil", + "dead", + "lastProbeCode", + "operator", + "provenance", + "claimable", + "claim", + "consecutiveFailures", + "deadSince", + "evictsAt", + "remedy", + "promote" +]
1 tool update
- Changed
search_listings1 field changed- changed
Output schema / properties / listings / items / additionalPropertiesPrevious value: -falseNew value: +true
1 tool update
- Changed
search_listings6 fields changed- added
Output schema / properties / listings / items / properties / claimAdded value: +{ + "type": [ + "string", + "null" + ] +} - added
Output schema / properties / listings / items / properties / claimableAdded value: +{ + "type": "boolean" +} - added
Output schema / properties / listings / items / properties / idAdded value: +{ + "type": "string" +} - added
Output schema / properties / listings / items / properties / ownerVerifiedAlternateAdded value: +{ + "additionalProperties": false, + "properties": { + "signedByOwner": { + "type": "boolean" + }, + "url": { + "type": "string" + }, + "verifiedVia": { + "type": "string" + } + }, + "required": [ + "url", + "verifiedVia", + "signedByOwner" + ], + "type": "object" +} - added
Output schema / properties / listings / items / properties / provenanceAdded value: +{ + "enum": [ + "owner", + "operator", + "curated" + ], + "type": "string" +} - changed
Output schema / properties / listings / items / requiredPrevious value: -[ - "url", - "name", - "description", - "tags", - "tier", - "lastSeenAlive", - "paidUntil", - "dead", - "lastProbeCode", - "operator", - "consecutiveFailures", - "deadSince", - "evictsAt", - "remedy" -]New value: +[ + "url", + "name", + "description", + "tags", + "tier", + "lastSeenAlive", + "paidUntil", + "dead", + "lastProbeCode", + "operator", + "provenance", + "claimable", + "claim", + "consecutiveFailures", + "deadSince", + "evictsAt", + "remedy" +]
1 tool update
- Changed
search_listings5 fields changed- added
Output schema / properties / listings / items / properties / consecutiveFailuresAdded value: +{ + "type": "number" +} - added
Output schema / properties / listings / items / properties / deadSinceAdded value: +{ + "type": [ + "number", + "null" + ] +} - added
Output schema / properties / listings / items / properties / evictsAtAdded value: +{ + "type": [ + "number", + "null" + ] +} - added
Output schema / properties / listings / items / properties / remedyAdded value: +{ + "type": [ + "string", + "null" + ] +} - changed
Output schema / properties / listings / items / requiredPrevious value: -[ - "url", - "name", - "description", - "tags", - "tier", - "lastSeenAlive", - "paidUntil", - "dead", - "lastProbeCode", - "operator" -]New value: +[ + "url", + "name", + "description", + "tags", + "tier", + "lastSeenAlive", + "paidUntil", + "dead", + "lastProbeCode", + "operator", + "consecutiveFailures", + "deadSince", + "evictsAt", + "remedy" +]
1 tool update
- Changed
search_listings2 fields changed- added
Output schema / properties / errorAdded value: +{ + "additionalProperties": false, + "properties": { + "code": { + "const": "LISTINGS_QUERY_INVALID", + "type": "string" + }, + "details": { + "additionalProperties": {}, + "type": "object" + }, + "message": { + "type": "string" + } + }, + "required": [ + "code", + "message", + "details" + ], + "type": "object" +} - removed
Output schema / requiredRemoved value: -[ - "listings", - "nextCursor" -]
2 tool updates
- Changed
search_listings1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": false, + "properties": { + "listings": { + "items": { + "additionalProperties": false, + "properties": { + "dead": { + "type": "boolean" + }, + "description": { + "type": "string" + }, + "lastProbeCode": { + "type": [ + "string", + "null" + ] + }, + "lastSeenAlive": { + "type": [ + "number", + "null" + ] + }, + "name": { + "type": "string" + }, + "operator": { + "type": "boolean" + }, + "paidUntil": { + "type": [ + "number", + "null" + ] + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array" + }, + "tier": { + "enum": [ + "free", + "paid" + ], + "type": "string" + }, + "url": { + "type": "string" + } + }, + "required": [ + "url", + "name", + "description", + "tags", + "tier", + "lastSeenAlive", + "paidUntil", + "dead", + "lastProbeCode", + "operator" + ], + "type": "object" + }, + "type": "array" + }, + "nextCursor": { + "type": [ + "string", + "null" + ] + } + }, + "required": [ + "listings", + "nextCursor" + ], + "type": "object" +}
- Changed
service_card1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": false, + "properties": { + "description": { + "type": "string" + }, + "directory": { + "additionalProperties": false, + "properties": { + "listEndpoint": { + "type": "string" + }, + "listingIsFree": { + "type": "boolean" + }, + "paidPlacement": { + "items": { + "additionalProperties": false, + "properties": { + "duration": { + "type": "string" + }, + "priceUsd": { + "type": "number" + } + }, + "required": [ + "duration", + "priceUsd" + ], + "type": "object" + }, + "type": "array" + }, + "promoteEndpoint": { + "type": "string" + } + }, + "required": [ + "listEndpoint", + "listingIsFree", + "paidPlacement", + "promoteEndpoint" + ], + "type": "object" + }, + "execute": { + "additionalProperties": false, + "properties": { + "endpoint": { + "type": "string" + }, + "method": { + "type": "string" + }, + "note": { + "type": "string" + }, + "priceUsd": { + "type": "number" + } + }, + "required": [ + "endpoint", + "method", + "priceUsd", + "note" + ], + "type": "object" + }, + "llmsTxt": { + "type": "string" + }, + "network": { + "type": "string" + }, + "openapi": { + "type": "string" + }, + "payment": { + "additionalProperties": false, + "properties": { + "howToPay": { + "type": "string" + }, + "identity": { + "type": "string" + }, + "manifest": { + "type": "string" + }, + "protocol": { + "type": "string" + }, + "transport": { + "type": "string" + } + }, + "required": [ + "protocol", + "transport", + "manifest", + "howToPay", + "identity" + ], + "type": "object" + }, + "quote": { + "additionalProperties": false, + "properties": { + "endpoint": { + "type": "string" + }, + "free": { + "type": "boolean" + }, + "method": { + "type": "string" + } + }, + "required": [ + "endpoint", + "method", + "free" + ], + "type": "object" + }, + "service": { + "type": "string" + } + }, + "required": [ + "service", + "description", + "network", + "execute", + "quote", + "directory", + "payment", + "openapi", + "llmsTxt" + ], + "type": "object" +}
2 tool updates
- First observed
search_listings - First observed
service_card
Related MCP Connectors
Agent infra: email, phone, social, domains, VPS, wallets. Paid per-action via x402, no API key.
Locks, budgeted sub-keys, storage, messaging, webhooks for agent swarms, billed via x402.
22 pay-per-call developer, security, network and data utilities using x402 on Base.
Pay-per-use AI and data tools via x402: image, video, music, voice, search, crypto. USDC.
Related MCP Servers
AlicenseCqualityCmaintenanceProvides AI agents with 200 deterministic micro-services covering code auditing, 3D/robotics, media processing, cryptography, blockchain settlement, AI safety, networking, and math, with automatic x402 USDC micropayments.200MIT- AlicenseAqualityBmaintenanceEnables AI agents to provision, manage, and renew cloud servers with USDC payments via x402, requiring no human signup.11101 npm2MIT
- AlicenseAqualityBmaintenanceEnables AI agents to pay per call for live package-safety and GitHub merge-readiness trust signals via the x402 protocol.3MIT
- AlicenseBqualityBmaintenanceEnables AI agents to create on-chain and web monitors, dead-man switches, cron triggers, and multi-agent coordination with pay-per-use x402 payments.1929 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.