Skip to main content
Glama

Server Details

Did Codex, Claude Code or Cursor reset usage limits today? Live status and news, official sources.

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
Uptime
100.0% over 19 days
Last Tested
Transport
Streamable HTTP · MCP 2025-06-18
URL
ChatGPT
–
Claude
–

TDQS

A3.9/5.0

Scored across 3 tools

Disambiguation4/5

Each tool targets a distinct granularity: get_reset_status answers about one tool, list_tools gives a directory with per-tool status, and list_events covers a broader event feed. The overlap between list_tools' status column and get_reset_status could occasionally be confused, but descriptions make the boundaries clear.

Naming Consistency5/5

All three tools follow a consistent verb_noun pattern (get_reset_status, list_events, list_tools). No style deviations or mixed conventions.

Tool Count4/5

Three tools is on the thin side but appropriate for a read-only monitoring server with a narrow scope. Each tool earns its place, though there is little room for additional query options.

Completeness4/5

For a read-only status/event service, the surface covers single-tool lookup, tool directory, and an event feed with filtering. Minor gaps exist, such as date-range event filtering or richer per-event detail, but core needs are met.

Available Tools

3 tools
get_reset_statusDid this tool reset today?A
Read-only
Inspect

Answer "did reset its usage limits today?" for one AI coding tool: whether a reset happened in the last 24 hours, the last reset time (UTC), hours since, the estimated probability of a reset in the next 24 hours, and a link to the live page with the official source.

NameRequiredDescriptionDefault
toolYesSlug of the AI coding tool to check, e.g. codex. One of: codex, claude-code, cursor, gemini-cli, copilot, kiro, windsurf, antigravity.

Output Schema

NameRequiredDescription
urlYesLive page with the history and official sources
nameYes
slugYesTool slug, e.g. codex
statusYes
vendorNo
rss_urlNo
badge_urlNo
alerts_urlYesWhere to get an alert when the tool (or any tool) resets next: free, no account
resets_30dNo
resets_90dNo
hours_sinceYes
calendar_urlNo
last_reset_atYesLast usage-limit reset (ISO 8601, UTC)
probability_7dNo
discontinued_atNo
forecast_statusYesok, or why there is no estimate (e.g. no_history, paused)
probability_24hNoEstimated chance of a reset within 24 h (0–1)
probability_72hNo
reset_in_last_24hYestrue when the last usage-limit reset was less than 24 hours ago
avg_interval_hoursNo
median_interval_hoursNo

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and openWorldHint, and the description adds genuinely useful context: a 24-hour freshness window, UTC timestamps, a probabilistic ('estimated probability') rather than deterministic value, and attribution to a live official source page. It does not mention rate limits or caching, so it stops short of full disclosure.

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?

A single front-loaded sentence that opens with the question the tool answers and then lists the payload. Every clause carries information, though the output enumeration is somewhat list-heavy for a one-parameter query tool.

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?

An output schema exists and annotations cover the safety profile, so the description does not need to explain return values in depth. It is complete enough for a simple enum-parameter status lookup, with only minor omissions around data sourcing or latency.

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% and the single 'tool' parameter is fully enumerated in the schema, so the schema carries the semantics. The description only echoes the '<tool>' placeholder without adding format or selection guidance, which is the baseline 3 case.

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 names a specific query ('did <tool> reset its usage limits today?') and enumerates the exact outputs, so the agent knows precisely what it returns. It does not explicitly contrast with the generic siblings list_events/list_tools, but the purpose is distinct enough that confusion is unlikely.

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 by the framing — call it when you need a reset-status answer for one tool — but there is no explicit when-to-use, when-not-to-use, or pointer to an alternative such as list_events for historical reset data.

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

list_eventsRecent resets, promotions and limit changesA
Read-only
Inspect

List recent events for AI coding tools, newest first, each with its official source link: usage-limit resets, promotions and free credits, limit increases or decreases, and discontinued plans. Optionally filter by tool and by group.

NameRequiredDescriptionDefault
toolNoOnly events of this AI coding tool. Omit for all tools. One of: codex, claude-code, cursor, gemini-cli, copilot, kiro, windsurf, antigravity.
groupNoOnly events of this group: resets (usage-limit resets), deals (promotions and free credits), limits (limit increases or decreases), discontinued (discontinued tools or plans). Omit for all groups.
limitNoMaximum number of events to return, 1 to 50. Default 10.

Output Schema

NameRequiredDescription
eventsYes
alerts_urlYesWhere to get an alert when the tool (or any tool) resets next: free, no account

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so safety is covered. The description adds genuinely useful behavior beyond that: results are ordered 'newest first' and each item carries its official source link, which tells the agent what to expect in the payload.

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, no filler. The event categories (resets, promotions, limit changes, discontinued plans) are front-loaded, and the optional filtering is stated last where it belongs.

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?

With an output schema present and annotations covering read-only/open-world access, the description need not explain return values, and it covers the enumerable event categories and default ordering well. Only the result cap behavior is left entirely to the schema, a minor gap.

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 all three parameters including enums and the 1-50 range are fully documented in the schema. The description echoes the tool/group filters but adds no syntax or semantics beyond it, so the baseline 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?

States a specific verb and resource ('list recent events for AI coding tools') and enumerates the exact event categories covered, so the agent knows what content to expect. It does not explicitly contrast itself with get_reset_status or list_tools, leaving the sibling distinction to inference.

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 single clause 'Optionally filter by tool and by group' implies when to pass filters and when to omit them (schema reinforces with 'omit for all'), but there is no guidance on when to call this over get_reset_status or list_tools. Minimal viable context only.

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

list_toolsList tracked AI coding toolsA
Read-only
Inspect

List every AI coding tool QuotaTick tracks (Codex, Claude Code, Cursor, GitHub Copilot …) with its current usage-limit reset status: last reset time (UTC), hours since, number of resets in the last 30 days, and the statistical chance of a reset in the next 24 hours. Takes no arguments. Use it to find a tool's slug or to compare tools.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
toolsYes
sourceYesWhere the data comes from and how to cite it
alerts_urlYesWhere to get an alert when the tool (or any tool) resets next: free, no account

TDQS

A4.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds useful content context (the specific metrics returned, UTC timestamps, that it is argument-free), but since an output schema exists, the field enumeration largely duplicates structured data rather than adding new behavioral disclosure.

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?

Front-loaded with the verb and resource, followed by the returned fields and the intended use. Three sentences, each carrying information, with 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?

For a no-argument, read-only listing tool with an output schema already documenting return structure, nothing further is needed. Purpose, invocation, and use case are all covered.

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?

Zero parameters, so the baseline is 4. The description explicitly confirms 'Takes no arguments', which is consistent with the empty schema and removes any doubt about invocation.

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 (list) and resource (AI coding tools tracked by QuotaTick) and enumerates the exact payload fields: reset time, hours since, 30-day reset count, and 24h reset probability. This is distinguishable from get_reset_status, which an agent can infer is the single-tool counterpart.

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?

Gives clear positive guidance ('Use it to find a tool's slug or to compare tools') plus the constraint that it takes no arguments. It does not explicitly name get_reset_status or list_events as alternatives or state when not to use it, so it falls short of a 5.

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. 3 tool updates
    • Changedget_reset_status2 fields changed
      • addedOutput schema / properties / alerts_url
        Added value: +{
        +  "description": "Where to get an alert when the tool (or any tool) resets next: free, no account",
        +  "type": "string"
        +}
      • changedOutput schema / required
        Previous value: -[
        -  "reset_in_last_24h",
        -  "slug",
        -  "name",
        -  "status",
        -  "last_reset_at",
        -  "hours_since",
        -  "forecast_status",
        -  "url"
        -]New value: +[
        +  "reset_in_last_24h",
        +  "slug",
        +  "name",
        +  "status",
        +  "last_reset_at",
        +  "hours_since",
        +  "forecast_status",
        +  "url",
        +  "alerts_url"
        +]
    • Changedlist_events2 fields changed
      • addedOutput schema / properties / alerts_url
        Added value: +{
        +  "description": "Where to get an alert when the tool (or any tool) resets next: free, no account",
        +  "type": "string"
        +}
      • changedOutput schema / required
        Previous value: -[
        -  "events"
        -]New value: +[
        +  "events",
        +  "alerts_url"
        +]
    • Changedlist_tools2 fields changed
      • addedOutput schema / properties / alerts_url
        Added value: +{
        +  "description": "Where to get an alert when the tool (or any tool) resets next: free, no account",
        +  "type": "string"
        +}
      • changedOutput schema / required
        Previous value: -[
        -  "source",
        -  "tools"
        -]New value: +[
        +  "source",
        +  "tools",
        +  "alerts_url"
        +]
  2. 3 tool updates
    • Changedget_reset_status1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "properties": {
        +    "avg_interval_hours": {
        +      "type": [
        +        "number",
        +        "null"
        +      ]
        +    },
        +    "badge_url": {
        +      "type": "string"
        +    },
        +    "calendar_url": {
        +      "type": "string"
        +    },
        +    "discontinued_at": {
        +      "type": [
        +        "string",
        +        "null"
        +      ]
        +    },
        +    "forecast_status": {
        +      "description": "ok, or why there is no estimate (e.g. no_history, paused)",
        +      "type": "string"
        +    },
        +    "hours_since": {
        +      "type": [
        +        "number",
        +        "null"
        +      ]
        +    },
        +    "last_reset_at": {
        +      "description": "Last usage-limit reset (ISO 8601, UTC)",
        +      "type": [
        +        "string",
        +        "null"
        +      ]
        +    },
        +    "median_interval_hours": {
        +      "type": [
        +        "number",
        +        "null"
        +      ]
        +    },
        +    "name": {
        +      "type": "string"
        +    },
        +    "probability_24h": {
        +      "description": "Estimated chance of a reset within 24 h (0–1)",
        +      "type": [
        +        "number",
        +        "null"
        +      ]
        +    },
        +    "probability_72h": {
        +      "type": [
        +        "number",
        +        "null"
        +      ]
        +    },
        +    "probability_7d": {
        +      "type": [
        +        "number",
        +        "null"
        +      ]
        +    },
        +    "reset_in_last_24h": {
        +      "description": "true when the last usage-limit reset was less than 24 hours ago",
        +      "type": "boolean"
        +    },
        +    "resets_30d": {
        +      "type": "integer"
        +    },
        +    "resets_90d": {
        +      "type": "integer"
        +    },
        +    "rss_url": {
        +      "type": "string"
        +    },
        +    "slug": {
        +      "description": "Tool slug, e.g. codex",
        +      "type": "string"
        +    },
        +    "status": {
        +      "enum": [
        +        "active",
        +        "discontinued"
        +      ],
        +      "type": "string"
        +    },
        +    "url": {
        +      "description": "Live page with the history and official sources",
        +      "type": "string"
        +    },
        +    "vendor": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "reset_in_last_24h",
        +    "slug",
        +    "name",
        +    "status",
        +    "last_reset_at",
        +    "hours_since",
        +    "forecast_status",
        +    "url"
        +  ],
        +  "type": "object"
        +}
    • Changedlist_events1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "properties": {
        +    "events": {
        +      "items": {
        +        "properties": {
        +          "group": {
        +            "enum": [
        +              "resets",
        +              "deals",
        +              "limits",
        +              "models",
        +              "discontinued"
        +            ],
        +            "type": "string"
        +          },
        +          "id": {
        +            "type": "string"
        +          },
        +          "kind": {
        +            "description": "e.g. full_reset, partial_reset, promotion, limit_increase",
        +            "type": "string"
        +          },
        +          "occurred_at": {
        +            "description": "ISO 8601, UTC",
        +            "type": "string"
        +          },
        +          "retracted": {
        +            "type": "boolean"
        +          },
        +          "scope": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "source_type": {
        +            "type": "string"
        +          },
        +          "source_url": {
        +            "description": "The official source",
        +            "type": "string"
        +          },
        +          "summary_i18n": {
        +            "additionalProperties": {
        +              "type": "string"
        +            },
        +            "type": "object"
        +          },
        +          "title": {
        +            "description": "English title",
        +            "type": "string"
        +          },
        +          "title_i18n": {
        +            "additionalProperties": {
        +              "type": "string"
        +            },
        +            "type": "object"
        +          },
        +          "tool": {
        +            "description": "Tool slug",
        +            "type": "string"
        +          },
        +          "url": {
        +            "description": "The event's page on QuotaTick",
        +            "type": "string"
        +          },
        +          "verified": {
        +            "type": "boolean"
        +          }
        +        },
        +        "required": [
        +          "id",
        +          "tool",
        +          "occurred_at",
        +          "kind",
        +          "title",
        +          "source_url",
        +          "url"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "events"
        +  ],
        +  "type": "object"
        +}
    • Changedlist_tools1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "properties": {
        +    "source": {
        +      "description": "Where the data comes from and how to cite it",
        +      "type": "string"
        +    },
        +    "tools": {
        +      "items": {
        +        "properties": {
        +          "avg_interval_hours": {
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          },
        +          "badge_url": {
        +            "type": "string"
        +          },
        +          "calendar_url": {
        +            "type": "string"
        +          },
        +          "discontinued_at": {
        +            "type": [
        +              "string",
        +              "null"
        +            ]
        +          },
        +          "forecast_status": {
        +            "description": "ok, or why there is no estimate (e.g. no_history, paused)",
        +            "type": "string"
        +          },
        +          "hours_since": {
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          },
        +          "last_reset_at": {
        +            "description": "Last usage-limit reset (ISO 8601, UTC)",
        +            "type": [
        +              "string",
        +              "null"
        +            ]
        +          },
        +          "median_interval_hours": {
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          },
        +          "name": {
        +            "type": "string"
        +          },
        +          "probability_24h": {
        +            "description": "Estimated chance of a reset within 24 h (0–1)",
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          },
        +          "probability_72h": {
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          },
        +          "probability_7d": {
        +            "type": [
        +              "number",
        +              "null"
        +            ]
        +          },
        +          "resets_30d": {
        +            "type": "integer"
        +          },
        +          "resets_90d": {
        +            "type": "integer"
        +          },
        +          "rss_url": {
        +            "type": "string"
        +          },
        +          "slug": {
        +            "description": "Tool slug, e.g. codex",
        +            "type": "string"
        +          },
        +          "status": {
        +            "enum": [
        +              "active",
        +              "discontinued"
        +            ],
        +            "type": "string"
        +          },
        +          "url": {
        +            "description": "Live page with the history and official sources",
        +            "type": "string"
        +          },
        +          "vendor": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "slug",
        +          "name",
        +          "status",
        +          "last_reset_at",
        +          "hours_since",
        +          "forecast_status",
        +          "url"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "source",
        +    "tools"
        +  ],
        +  "type": "object"
        +}
  3. 3 tool updates
    • First observedget_reset_status
    • First observedlist_events
    • First observedlist_tools

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables querying forecasts of OpenAI Codex usage-limit resets, verified reset timelines, and current Codex service status through natural language, with no API key required.
    1
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Lets an AI agent check its own Claude and Codex usage limits — used percentages and exact reset times for session and weekly windows — so it can plan long-running work around resets instead of dying mid-task. It reads local, credential-free sources by default, always reports which source answered, and ships a hook that pushes quota state into context automatically.
    1
    MIT
  • A
    license
    B
    quality
    D
    maintenance
    Enables real-time monitoring of Cursor Pro usage limits and API quotas across different AI services. Tracks Sonnet 4.5, Gemini, and GPT-5 request usage with alerts when approaching subscription limits.
    6
    2 npm
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources