Skip to main content
Glama

Server Details

Pay-per-call dev utilities (hash, base64, uuid, URL, time, NIP-19, BOLT11) via x402 USDC on Base.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-06-18
URL
ChatGPT
–
Claude
–

TDQS

B3.4/5.0

Scored across 8 tools

Disambiguation4/5

Each tool maps to a clearly different function (encoding, hashing, invoice decoding, slugging, time conversion, URL parsing, UUID generation), so an agent can pick correctly from names alone. Minor overlap exists between base64 and hash since both take a string argument 's' and produce a transformed string, but the mode/alg parameters make the intent clear.

Naming Consistency4/5

All eight names follow the same terse, all-lowercase, single-token convention with no separators, which is predictable. The only deviation is abbreviated compounds like 'timeconv' and 'urlparse' versus plain nouns like 'uuid' and 'slug', but the style is uniformly applied.

Tool Count5/5

Eight tools, each a self-contained utility that earns its place with no redundancy. The count sits squarely in the well-scoped 3-15 range for a grab-bag utility server.

Completeness3/5

Several tools are one-directional: urlparse has no URL builder, nip19 and bolt11 only decode (no encode), and uuid only generates without validate/parse. The domain is inherently open-ended, but these gaps mean an agent needing the inverse operation hits a dead end.

Available Tools

8 tools
base64BInspect

Base64 encode/decode. args: s, mode (enc|dec), url (1 for urlsafe). Paid: 0.001 USDC on Base via x402 at https://pennyagent.pythonanywhere.com/paid/base64.

NameRequiredDescriptionDefault

No parameters

TDQS

B3.3/5.0
Behavior3/5

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

With no annotations, the description carries the full burden, and it does disclose real behavioral facts: the call is paid (0.001 USDC on Base via x402) and points at the paid endpoint. It omits what happens on invalid input during decode, error behavior, and any limits, so the disclosure is partial rather than thorough.

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

Conciseness4/5

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

The definition is short and front-loads the operation before the argument list and payment note. The payment and URL details are crammed into the final sentence, but nothing is redundant.

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?

For a simple encode/decode utility the description covers the operation, arguments, and payment model, which is most of what an agent needs. Without an output schema it leaves the return shape unstated, which is a minor but real gap for decode in particular.

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 is a free-form string object with no declared properties, so the description is the only source of parameter meaning. It names the arguments (s, mode, url) and even supplies the accepted values for mode (enc|dec) and url (1 for urlsafe), adding genuine semantics beyond the schema.

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?

"Base64 encode/decode" names a specific verb pair and resource, which is unambiguous enough to separate it from siblings like hash, nip19, slug, or uuid. It does not explicitly reference any sibling, but the operation is distinctive on its own.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description only states what the tool does, never when to reach for it versus alternatives such as hash or nip19. The mode argument implies how to call it, but there is no guidance on selection or preconditions.

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

bolt11AInspect

Decode a Lightning BOLT11 invoice. args: i. Paid: 0.001 USDC on Base via x402 at https://pennyagent.pythonanywhere.com/paid/bolt11.

NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full behavioral burden. It usefully discloses that the operation is paid, the price, the network, the x402 protocol, and the endpoint URL, but it does not describe return shape, error behavior, or validation characteristics.

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

Conciseness4/5

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

The description is short and front-loads the operation before payment details. The "args: i" fragment is terse and somewhat unclear, but overall there is little wasted text.

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?

For a simple decoder with no output schema, the description covers the operation and payment requirement but omits what the decoded result contains or how failures appear. That leaves a noticeable contextual gap for an agent invoking the tool.

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 indicates zero required parameters and 100% schema description coverage, so the baseline is 4. The description adds a cryptic "args: i" reference, which signals an input argument but does not clearly define its meaning or format.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: "Decode a Lightning BOLT11 invoice." This is clearly distinguishable from sibling utilities like base64, hash, nip19, slug, timeconv, urlparse, and uuid, which operate on different inputs.

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 implies the tool is used when decoding a BOLT11 invoice and discloses the payment prerequisite (0.001 USDC on Base via x402). However, it gives no explicit when-not-to-use guidance or alternatives, though none of the listed siblings are close substitutes.

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

hashAInspect

Hex digest of a string. args: s, alg (sha256|sha512|sha1|md5|sha3_256|sha3_512|blake2b|blake2s). Paid: 0.001 USDC on Base via x402 at https://pennyagent.pythonanywhere.com/paid/hash.

NameRequiredDescriptionDefault

No parameters

TDQS

A3.5/5.0
Behavior3/5

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

No annotations are provided, so the description must carry the behavioral burden. It usefully discloses that the tool is paid (0.001 USDC on Base via x402) and that the output is a hex digest, but it omits authentication details, rate limits, error behavior, and default algorithm behavior.

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 tight sentences: purpose first, then arguments and algorithms, then payment details. Every sentence carries relevant information with no wasted wording.

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

Completeness4/5

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

For a simple hashing utility, the description covers the purpose, argument names, algorithm choices, output format, and payment requirement. It lacks details such as default algorithm and error handling, but those gaps are minor for this tool complexity.

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 input schema is a generic object with only additionalProperties and no named properties, so the description adds substantial meaning by naming the arguments 's' and 'alg' and enumerating the allowed algorithm values. It does not state whether 'alg' is optional or what the default is, which keeps it from a 5.

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 operation and resource: 'Hex digest of a string.' It also lists supported algorithms, which helps distinguish it from encoding-oriented siblings like base64 and uuid, though it does not explicitly contrast with them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives such as base64, uuid, or the other utility siblings. The description only lists the arguments and payment requirement, leaving usage selection entirely to inference.

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

nip19AInspect

Decode Nostr NIP-19 (npub/note/nprofile/nevent/naddr). args: s. Paid: 0.001 USDC on Base via x402 at https://pennyagent.pythonanywhere.com/paid/nip19.

NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior3/5

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

With no annotations, the description carries the full disclosure burden, and it does add genuinely non-obvious context: the call is paid (0.001 USDC on Base via x402) and hits a specific endpoint URL. That is real behavioral information an agent needs before invoking. It stops short of describing the decoded payload shape or how invalid/malformed input is handled, which matters for a decoder with no output schema.

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

Conciseness4/5

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

Two short sentences, front-loaded with the decode purpose before the payment mechanics, and nothing is redundant. The "args: s" shorthand is terse to the point of being cryptic, but it does not waste words.

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?

There is no output schema and no annotations, so the description is the only source of truth, and it omits what a successful decode returns (hex key, relay hints, kind/author for nevent/naddr). Payment cost and endpoint are covered, which is the hardest part to guess, but the return contract is missing for a tool whose entire job is producing a decoded value.

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 is an open object with only additionalProperties:string and no named properties, so the description's "args: s" is the only place an agent learns the argument key is literally "s". That is meaningful added value beyond the schema. It does not, however, say that the value must be a bech32 NIP-19 string, leaving the type/content of "s" to inference from the purpose line.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ("Decode") and resource ("Nostr NIP-19") and enumerates the concrete identifier prefixes it handles (npub/note/nprofile/nevent/naddr). This immediately distinguishes it from every sibling (base64, bolt11, hash, slug, timeconv, urlparse, uuid), each of which decodes or transforms a different format.

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?

Usage is only implied: an agent can infer it should call this when it has a bech32 Nostr identifier rather than a base64 blob or bolt11 invoice. There is no explicit when-to-use statement, no exclusion (e.g. what to do with a raw hex pubkey instead of an npub), and no guidance on failure behavior for non-NIP-19 input.

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

slugBInspect

URL slug of a string. args: s. Paid: 0.001 USDC on Base via x402 at https://pennyagent.pythonanywhere.com/paid/slug.

NameRequiredDescriptionDefault

No parameters

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description carries the full burden, and it does disclose the genuine behavioral facts that the call is paid (0.001 USDC on Base via x402) and gives the endpoint. It does not say what the return value looks like, whether the input key 's' is mandatory, or how invalid inputs are handled.

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 short sentences, front-loaded with the function and followed by argument and payment facts. Nothing is padded and no sentence is wasted.

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?

For a single-purpose string utility, the description covers purpose, input key, and cost, which is most of what an agent needs. It leaves out the output form and any failure behavior, so it is adequate but not fully self-sufficient.

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 declares no named properties, only additionalProperties: string, so the argument key is invisible in the schema. The description's 'args: s' is the only place the required key name appears, which is real added meaning beyond the structured data.

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 the transformation concretely ('URL slug of a string'), which is clearly distinct from sibling utilities like base64, hash, and uuid. It is a terse noun phrase rather than a verb-led statement, but an agent can still tell what the tool does.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to choose this over siblings (e.g., urlparse for decomposition versus slug for normalization), and no prerequisites or exclusions. The only context offered is payment mechanics, not usage selection.

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

timeconvAInspect

Epoch <-> ISO 8601 UTC. args: t. Paid: 0.001 USDC on Base via x402 at https://pennyagent.pythonanywhere.com/paid/timeconv.

NameRequiredDescriptionDefault

No parameters

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden. It usefully discloses the paid nature, exact price of 0.001 USDC, Base network, x402 protocol, and payment endpoint, but does not clarify per-call charging, error behavior, or output behavior.

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 highly compact, front-loads the conversion purpose, and then supplies the argument name and exact payment details. Nothing is redundant; the ambiguity caused by its telegraphic wording is addressed under the other dimensions.

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

Completeness2/5

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

The free-form schema and absence of annotations or an output schema leave the description responsible for most invocation details, but it omits epoch units, conversion-direction rules, validation behavior, and return format. The payment disclosure is thorough, yet the core conversion contract remains under-specified.

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 declares no named properties, so `args: t` adds the essential expected argument name while the format statement indicates its general value domain. It still leaves epoch units, automatic direction detection, and accepted ISO 8601 representations unspecified.

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 clearly identifies bidirectional conversion between epoch timestamps and ISO 8601 UTC, distinguishing it from the sibling encoding and hashing utilities. It does not explain how conversion direction is determined or which epoch representations are supported.

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?

Usage is implied for agents needing to convert between the two named time formats, and `args: t` gives a basic invocation cue. There is no explicit guidance on input selection, unsupported values, or circumstances where another tool or approach should be used.

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

urlparseCInspect

URL components and query params. args: u. Paid: 0.001 USDC on Base via x402 at https://pennyagent.pythonanywhere.com/paid/urlparse.

NameRequiredDescriptionDefault

No parameters

TDQS

C2.7/5.0
Behavior3/5

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

No annotations are supplied, so the description carries the full behavioral burden. It does disclose something genuinely useful that structured fields do not: the tool is paid, costing 0.001 USDC on Base via x402 at a specific endpoint, which is important context before invocation. It says nothing about error behavior, whether input must be absolute, or what the response looks like, leaving notable gaps.

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?

It is short and front-loaded, with the purpose first and payment detail second. The 'args: u' fragment is terse to the point of being cryptic, reading as shorthand rather than a usable specification.

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

Completeness2/5

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

For a small utility with no annotations and no output schema, the description should at minimum clarify what the input must look like and what 'components and query params' returns. Neither is addressed, so an agent cannot predict the return structure or confirm input validity before paying for the call.

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?

The schema is an open object with additionalProperties:string and no named properties, so 'args: u' is the only clue about the expected argument key. The description names the argument but gives no meaning or format guidance (absolute vs relative URL, encoding expectations), so it only partially compensates for an effectively undocumented parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The phrase 'URL components and query params' signals the resource and roughly what is extracted, hinting at the output shape. However, there is no explicit verb such as 'parse' or 'split', so the purpose is largely a restatement of the name 'urlparse' rather than a standalone statement of what the tool does.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool, no prerequisites, and no mention of alternatives among the sibling utilities (base64, hash, nip19, etc.). The agent must infer from the name alone that this is the URL-related utility in the set.

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

uuidBInspect

List of UUID v4. args: n (1..100). Paid: 0.001 USDC on Base via x402 at https://pennyagent.pythonanywhere.com/paid/uuid.

NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden. It usefully discloses that the tool is paid (0.001 USDC on Base via x402) and gives the endpoint, which is important context for an agent, but it omits output shape, default behavior when n is omitted, and any rate or payment flow details.

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

Conciseness4/5

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

The description is very short and front-loads the resource and argument, with the payment details compactly appended. It avoids waste, though the shorthand 'args: n (1..100)' is slightly cryptic.

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?

For a simple generation tool this covers the core resource, argument range, and payment requirement. It still leaves gaps around output format and the optionality/default of n, which matter because there is no output schema and the input schema does not document n.

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?

The input schema declares no named properties, so the description is the only source for the n argument and its 1..100 range. However, it is terse and does not clarify whether n is optional, its default, or how the arguments map into the schema's free-form object.

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 the specific resource generated: a list of UUID v4 values. It is distinguishable from siblings like hash, base64, and slug, though 'List of UUID v4' uses a noun phrase rather than a clear verb, leaving generation versus retrieval slightly implicit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit guidance on when to use this tool versus alternatives such as hash or base64, nor any indication of prerequisites beyond the payment note. Usage is only implied by the resource name.

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. 8 tool updates
    • First observedbase64
    • First observedbolt11
    • First observedhash
    • First observednip19
    • First observedslug
    • First observedtimeconv
    • First observedurlparse
    • First observeduuid

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Cryptographic hash generator supporting MD5, SHA1, SHA256, SHA512, and bcrypt, with pay-per-call via x402 (USDC on Base L2) – no API key or signup required.
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides coding agents with 19 pay-per-call developer utilities, npm supply-chain security checks, and Base blockchain lookups, paid via USDC on Base using x402. No API key needed—payment acts as authentication.
    77 npm
    -
  • A
    license
    A
    quality
    D
    maintenance
    Provides AI agents with 10 pay-per-call utility tools (QR generation, DNS lookup, OCR, etc.) using USDC on Base via the x402 protocol, with agent's private key never leaving the agent.
    11
    55 npm
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to access 13 paid micro-tools over x402, paying per request in USDC on Base without API keys or signup. It covers email deliverability, grading, and templates, plus utilities like crypto prices, domain age, hashing, JSON conversion, JWT decoding, regex, slugs, UUIDs, and weather.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources