Skip to main content
Glama

What this connection includes

my_access
Read-onlyIdempotent

What THIS connection can and cannot see: whether it is on the free plan (on_free_plan), how many credits are left and roughly how many more tool calls that buys, which tier it is on, the exact row cap and time window every tool applies to it right now, what is locked, and precisely what lifts each limit. Call it whenever the user asks what they get, how many credits they have, why a result came back capped (any payload carrying a capped field), or how and where to upgrade. Only an active paid plan lifts the caps here (one subscription works across the website, your AI and the REST API on a shared credit balance), and this settles the thing people get wrong most often: a free API key lifts no cap here either (it gives this connection its own rate limit instead of a shared one, and unlocks the metered REST endpoints, but changes nothing in here). Free to call and never metered.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
capsNoThe row cap and time window every capped tool applies right now, each with the free value and the paid-plan value beside it.
tierNoWhich state this connection is in: keyless, signed_in_free, or the plan key (starter, pro, alpha, scale).
plainNoOne sentence describing this tier in the user own words rather than ours.
creditsNoThe balance: credits_remaining, plan, plan_active, credits_per_call, calls_left_estimate and where to top up. A null credits_remaining always carries a note saying WHY, because could not read and spent to zero send a user to two different places.
meteredNoWhether calls cost credits on this connection, and how much.
free_pairsNoThe pairs this connection can read. A list when keyless, the words every streamed pair on a paid plan, or a short sentence when the market lane could not be read.
access_noteNoWhat this connection could not return and what lifts it. Always pass this on to the user: it is the only place that information appears.
how_to_liftNoWhat lifts the caps, where to get it, and (as not_this) the two things people buy by mistake that change nothing here.
locked_hereNoWhat this connection cannot reach right now. Empty on a paid plan.
on_free_planNoTrue when this connection reads free-shaped data. The single fact most users are asking for.
authenticatedNoTrue when any valid sign-in or key was presented.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / properties / tier / description
      Previous value: -"Which of four states this connection is in: keyless, signed_in_free, coinlobster_pro or developer_plan."New value: +"Which state this connection is in: keyless, signed_in_free, or the plan key (starter, pro, alpha, scale)."
  2. Changed3 schema fields changed
    • changedOutput schema / properties / caps / description
      Previous value: -"The row cap and time window every capped tool applies right now, each with the free value and the developer-plan value beside it."New value: +"The row cap and time window every capped tool applies right now, each with the free value and the paid-plan value beside it."
    • changedOutput schema / properties / free_pairs / description
      Previous value: -"The pairs this connection can read. A list when keyless, the words every streamed pair on a developer plan, or a short sentence when the market lane could not be read."New value: +"The pairs this connection can read. A list when keyless, the words every streamed pair on a paid plan, or a short sentence when the market lane could not be read."
    • changedOutput schema / properties / locked_here / description
      Previous value: -"What this connection cannot reach right now. Empty on a developer plan."New value: +"What this connection cannot reach right now. Empty on a paid plan."
  3. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": {},
      +  "properties": {
      +    "access_note": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "What this connection could not return and what lifts it. Always pass this on to the user: it is the only place that information appears."
      +    },
      +    "authenticated": {
      +      "anyOf": [
      +        {
      +          "type": "boolean"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "True when any valid sign-in or key was presented."
      +    },
      +    "caps": {
      +      "anyOf": [
      +        {
      +          "additionalProperties": {},
      +          "propertyNames": {
      +            "type": "string"
      +          },
      +          "type": "object"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "The row cap and time window every capped tool applies right now, each with the free value and the developer-plan value beside it."
      +    },
      +    "credits": {
      +      "anyOf": [
      +        {
      +          "additionalProperties": {},
      +          "propertyNames": {
      +            "type": "string"
      +          },
      +          "type": "object"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "The balance: credits_remaining, plan, plan_active, credits_per_call, calls_left_estimate and where to top up. A null credits_remaining always carries a note saying WHY, because could not read and spent to zero send a user to two different places."
      +    },
      +    "free_pairs": {
      +      "anyOf": [
      +        {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": "array"
      +            }
      +          ]
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "The pairs this connection can read. A list when keyless, the words every streamed pair on a developer plan, or a short sentence when the market lane could not be read."
      +    },
      +    "how_to_lift": {
      +      "anyOf": [
      +        {
      +          "additionalProperties": {},
      +          "propertyNames": {
      +            "type": "string"
      +          },
      +          "type": "object"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "What lifts the caps, where to get it, and (as not_this) the two things people buy by mistake that change nothing here."
      +    },
      +    "locked_here": {
      +      "anyOf": [
      +        {
      +          "items": {
      +            "type": "string"
      +          },
      +          "type": "array"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "What this connection cannot reach right now. Empty on a developer plan."
      +    },
      +    "metered": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "Whether calls cost credits on this connection, and how much."
      +    },
      +    "on_free_plan": {
      +      "anyOf": [
      +        {
      +          "type": "boolean"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "True when this connection reads free-shaped data. The single fact most users are asking for."
      +    },
      +    "plain": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "One sentence describing this tier in the user own words rather than ours."
      +    },
      +    "tier": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "Which of four states this connection is in: keyless, signed_in_free, coinlobster_pro or developer_plan."
      +    }
      +  },
      +  "type": "object"
      +}
  4. First observed

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already classify the call as read-only and idempotent; the description adds that it is free and never metered, and clarifies that plan status is shared across website, AI, and REST API. No contradiction with annotations; the description supplements them with account-specific context.

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 opening sentence front-loads the capability list, followed by trigger conditions and the nuanced free-API-key clarification. Although the description is lengthy, each clause conveys distinct decision-relevant information and no filler.

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?

With an output schema present, return values do not need to be described. The description covers what the tool reveals, when to call it, cost behavior, and the subscription/API-key model, leaving no gap for a zero-parameter introspection 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 input schema has zero parameters, so there is no parameter-level description required. Per rubric, zero-parameter tools get a baseline 4; the description sensibly omits parameter detail and instead discusses plan semantics.

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 names the resource ('this connection') and states exactly what the tool exposes: plan status, credits, tier, caps, locked features, and what lifts each limit. It reads distinctly from market-data siblings and the title reinforces the scope.

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

Usage Guidelines5/5

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

Provides explicit trigger scenarios: when a user asks what they get, how many credits remain, why a result was capped, or how/where to upgrade. It also clarifies a common misconception about free API keys, effectively giving when-not guidance.

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