Skip to main content
Glama

MIME by extension (paid: 0.001 RLUSD / 0.001 USDC on Base / 0.001 RLUSD on Base via x402)

mime_ext
Read-only

Paid: 0.001 RLUSD per call via x402 on XRPL mainnet (xrpl:0), or 0.001 USDC on Base (eip155:8453). Pay per call, solves one question: Media type for a file extension from a bundled mime table. Without payment this returns isError with the x402 PaymentRequired object (fresh invoiceId); retry with the signed payload in _meta["x402/payment"] or the payment_signature argument. Unpaid calls cost nothing.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "ext": "<ext>"
    },
    "name": "mime_ext"
  }
}

Input Schema

NameRequiredDescriptionDefault
extYes
payment_signatureNoOptional. Base64 x402 PAYMENT-SIGNATURE value (signed RLUSD or USDC PaymentPayload) for hosts that cannot set _meta["x402/payment"]. Omit on the first call to receive the payment requirements.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations (readOnlyHint, destructiveHint=false, openWorldHint), the description discloses the payment precondition and the exact failure mode: isError returned with an x402 PaymentRequired object containing a fresh invoiceId. The idempotentHint=false is consistent with per-call billing rather than contradicting the read-only lookup nature. It does not state what is returned for an unrecognized extension, which is the remaining behavioral gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The sentences are dense and contain no filler, but the ordering is poor: pricing and network identifiers are repeated from the title ahead of the actual function, and the payment retry mechanics occupy more space than the tool's purpose. It would read better with the one-line purpose first, then payment terms.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description must carry return semantics, and it only implies a media-type string from a bundled table without saying what happens on an unknown extension or whether a case-insensitive/normalized lookup is performed. Payment mechanics are complete, but the actual result contract is underspecified for a tool an agent will call blind.

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 coverage is 50%: payment_signature is already documented in the schema, and ext is self-evident. The description adds real value by explaining that payment_signature is the alternative channel for hosts that cannot set _meta["x402/payment"] and that it should be omitted on the first call. With the schema carrying much of the load, the baseline 3 is appropriate.

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/resource: "solves one question: Media type for a file extension from a bundled mime table," which maps directly to the tool name mime_ext and is distinguishable from utility siblings like uuid_mint or unit_convert. The core purpose is clear but sits mid-sentence behind pricing boilerplate rather than being front-loaded.

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 gives an explicit usage flow: first call without payment returns a PaymentRequired object, then retry with the signed payload in _meta["x402/payment"] or payment_signature, and it notes unpaid calls cost nothing. It lacks any statement of when to prefer an alternative (e.g., resolving MIME by content rather than extension), which is the only gap.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources