Skip to main content
Glama

Check if a free LLM tier fits your app

calc
Read-only

The aifree.dev rate-limit calculator: for req requests a day of about tok tokens, every free LLM API tier with a verdict (fits / short / not-published), its daily capacity, and a combo when no single tier fits. Same data as GET /api/v1/calc.

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": {
      "req": "<req>"
    },
    "name": "calc"
  }
}

Input Schema

NameRequiredDescriptionDefault
reqYesRequests per day
tokNoAverage tokens per request (default 800)
offerNoOnly return the row of this offer slug
familyNoModel family filter, e.g. "llama"
noCardNotrue = only tiers that never ask for a card
toolCallingNotrue = only models with tool calling

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare a read-only, closed-world operation, so the safety profile is covered. The description adds one real behavioral nuance — that a combined multi-tier recommendation is produced when no single tier fits — plus the three-shaped verdict vocabulary. It does not mention computational cost, caching, or whether unpublished-capacity tiers are omitted or flagged.

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?

Front-loaded with the core computation and its outputs in a single dense sentence, followed by a short provenance note. No filler, though the long clause chain around the verdict triple is a bit packed and could be split for scanability.

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 no output schema, the description carries the burden of explaining returns, and it does: verdict categories, daily capacity, and combo fallback. It also ties the tool to the equivalent REST endpoint for trust. Minor gap: it never says whether filters (offer, family, noCard, toolCalling) change the combo computation or merely prune rows.

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 six parameters (req, tok, offer, family, noCard, toolCalling) are already documented, including the 800-token default. The description restates the meaning of req and tok in prose without adding format, units, or interaction rules beyond the schema. 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+resource: computes the rate-limit viability of every free LLM API tier for a given requests/day and token size, returning a verdict, daily capacity, and combo. That is materially more specific than the bare name 'calc' or the marketing-style title. It stops short of naming a sibling it differs from (e.g. check_eligibility), so an agent must infer its niche from the phrasing.

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 rather than stated: the agent can infer it should call this when asking whether a free tier can absorb a given traffic profile. There is no explicit 'use this instead of X' routing, no prerequisites, and no note on when a plain listing tool (list_free_llm_apis) would suffice.

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.