Skip to main content
Glama

Server Details

Accountless pay-per-use sandbox execution, storage, locks, attestation and handoff; pay via x402.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A3.8/5.0

Scored across 2 tools

Disambiguation4/5

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.

Naming Consistency3/5

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.

Tool Count3/5

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.

Completeness2/5

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 tools
search_listingsSearch the agent-exec directoryA
Read-only
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagNoFilter to listings carrying this tag.
limitNoMax listings to return (server-bounded regardless).
cursorNoOpaque pagination cursor from a previous call's nextCursor.

Output Schema

ParametersJSON Schema
NameRequiredDescription
errorNo
listingsNo
nextCursorNo

TDQS

A3.9/5.0
Behavior4/5

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.

Conciseness5/5

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.

Completeness5/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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 cardA
Read-only
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
quoteYes
executeYes
llmsTxtYes
networkYes
openapiYes
paymentYes
serviceYes
directoryYes
resourcesYes
descriptionYes

TDQS

A4.4/5.0
Behavior5/5

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.

Conciseness5/5

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.

Completeness5/5

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.

Parameters4/5

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.

Purpose4/5

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.

Usage Guidelines4/5

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. 1 tool update
    • Changedservice_card2 fields changed
      • addedOutput schema / properties / resources
        Added 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"
        +}
      • changedOutput schema / required
        Previous value: -[
        -  "service",
        -  "description",
        -  "network",
        -  "execute",
        -  "quote",
        -  "directory",
        -  "payment",
        -  "openapi",
        -  "llmsTxt"
        -]New value: +[
        +  "service",
        +  "description",
        +  "network",
        +  "execute",
        +  "quote",
        +  "directory",
        +  "resources",
        +  "payment",
        +  "openapi",
        +  "llmsTxt"
        +]
  2. 1 tool update
    • Changedsearch_listings1 field changed
      • changedOutput schema / properties / listings / items / required
        Previous 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"
        +]
  3. 1 tool update
    • Changedsearch_listings2 fields changed
      • addedOutput schema / properties / listings / items / properties / promote
        Added 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"
        +}
      • changedOutput schema / properties / listings / items / required
        Previous 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"
        +]
  4. 1 tool update
    • Changedsearch_listings1 field changed
      • changedOutput schema / properties / listings / items / additionalProperties
        Previous value: -falseNew value: +true
  5. 1 tool update
    • Changedsearch_listings6 fields changed
      • addedOutput schema / properties / listings / items / properties / claim
        Added value: +{
        +  "type": [
        +    "string",
        +    "null"
        +  ]
        +}
      • addedOutput schema / properties / listings / items / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / listings / items / properties / id
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / listings / items / properties / ownerVerifiedAlternate
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "signedByOwner": {
        +      "type": "boolean"
        +    },
        +    "url": {
        +      "type": "string"
        +    },
        +    "verifiedVia": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "url",
        +    "verifiedVia",
        +    "signedByOwner"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / listings / items / properties / provenance
        Added value: +{
        +  "enum": [
        +    "owner",
        +    "operator",
        +    "curated"
        +  ],
        +  "type": "string"
        +}
      • changedOutput schema / properties / listings / items / required
        Previous 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"
        +]
  6. 1 tool update
    • Changedsearch_listings5 fields changed
      • addedOutput schema / properties / listings / items / properties / consecutiveFailures
        Added value: +{
        +  "type": "number"
        +}
      • addedOutput schema / properties / listings / items / properties / deadSince
        Added value: +{
        +  "type": [
        +    "number",
        +    "null"
        +  ]
        +}
      • addedOutput schema / properties / listings / items / properties / evictsAt
        Added value: +{
        +  "type": [
        +    "number",
        +    "null"
        +  ]
        +}
      • addedOutput schema / properties / listings / items / properties / remedy
        Added value: +{
        +  "type": [
        +    "string",
        +    "null"
        +  ]
        +}
      • changedOutput schema / properties / listings / items / required
        Previous 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"
        +]
  7. 1 tool update
    • Changedsearch_listings2 fields changed
      • addedOutput schema / properties / error
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "code": {
        +      "const": "LISTINGS_QUERY_INVALID",
        +      "type": "string"
        +    },
        +    "details": {
        +      "additionalProperties": {},
        +      "type": "object"
        +    },
        +    "message": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "code",
        +    "message",
        +    "details"
        +  ],
        +  "type": "object"
        +}
      • removedOutput schema / required
        Removed value: -[
        -  "listings",
        -  "nextCursor"
        -]
  8. 2 tool updates
    • Changedsearch_listings1 field changed
      • changedOutput 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"
        +}
    • Changedservice_card1 field changed
      • changedOutput 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"
        +}
  9. 2 tool updates
    • First observedsearch_listings
    • First observedservice_card

Related MCP Connectors

Related MCP Servers

  • A
    license
    C
    quality
    C
    maintenance
    Provides 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.
    200
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Enables AI agents to pay per call for live package-safety and GitHub merge-readiness trust signals via the x402 protocol.
    3
    MIT
  • A
    license
    B
    quality
    B
    maintenance
    Enables AI agents to create on-chain and web monitors, dead-man switches, cron triggers, and multi-agent coordination with pay-per-use x402 payments.
    19
    29 npm
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources