protogrid

Search / io.github.minhtc/aifree

aifree

R0· no sign-in

Verified free AI offers, API free tiers, credits and student/startup programs from aifree.dev.

v1.0.1 · active · repository · website · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality77good
Trust92of 100
Uptime, 30 days96%
Latency p501145 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "aifree": {
      "type": "http",
      "url": "https://aifree.dev/mcp"
    }
  }
}
claude mcp add --transport http aifree https://aifree.dev/mcp
[mcp_servers.aifree]
url = "https://aifree.dev/mcp"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "aifree": {
      "type": "remote",
      "url": "https://aifree.dev/mcp",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "aifree": {
      "type": "http",
      "url": "https://aifree.dev/mcp"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=aifree&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vYWlmcmVlLmRldi9tY3AifQ%3D%3D"
}
{
  "servers": {
    "aifree": {
      "type": "http",
      "url": "https://aifree.dev/mcp"
    }
  }
}
{
  "mcpServers": {
    "aifree": {
      "httpUrl": "https://aifree.dev/mcp"
    }
  }
}
extensions:
  "aifree":
    enabled: true
    name: "aifree"
    type: streamable_http
    uri: "https://aifree.dev/mcp"
    timeout: 300

Quality 77 / 100good

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene81 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • warn
    tools.description_length1 tools have descriptions over 1,024 characters, which crowds the context
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations19 of 19 tools declare readOnlyHint or destructiveHint
  • fail
    tools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: search_free_ai_offers (destructiveHint, idempotentHint); best_lists (destructiveHint, idempotentHint); ask_aifree (destructiveHint, idempotentHint); …
  • pass
    tools.token_costabout 3,619 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
  • pass
    tools.hidden_textno hidden text in tool names, descriptions, schemas or annotations
stability83 · weight 15
  • warn
    stability.changes16 tool changes in 30 days
  • pass
    stability.rug_pullno tool changed its meaning under the same name
  • pass
    stability.new_linksno tool change named a new site
dependencies67 · weight 15
  • fail
    deps.known_vulns1 advisory to act on (malicious, or rated high or critical with a fix available): GHSA-27r3-jxmh-p828 in [email protected] (indirect, fixed in 2.4.0); 7 more of lower severity or without a fix
  • pass
    deps.mcp_sdk_version@modelcontextprotocol/sdk 1.32.1, no known advisory
  • pass
    deps.resolvable@aifree/[email protected] resolved: 99 packages

19 tools, about 3,619 tokens to load them all · tool set 2a3b31a3c86f · tools last changed 2026-11-12 · checked 2026-11-14 07:03 UTC

Tool changes

  • is_freeadded

    Answers "is <brand, model or product> free?" from the verified catalog: free (true, false, or null when the name is unknown), a one-paragraph answer with the check date, the best verified offer (main limit, card rule, who qualifies, verified date) and the aifree.dev pages to cite. Unknown names return a search URL. Same record as GET /api/v1/is-free?q=.

  • calcadded

    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.

  • best_listadded

    One published top list by slug (see best_lists): the picks with links, FAQ, sources and the Markdown body. Same data as GET /api/v1/best/{slug}.

  • best_listsadded

    The published "best free X" top lists of aifree.dev/best: title, description, dates and the picks in order. Same data as GET /api/v1/best; call best_list for one list with links, FAQ and sources.

  • upcoming_deadlinesadded

    Offers whose free deal ends within N days (default 30), soonest first: slug, name, provider, expiryDate (last day, UTC), endsAt, daysLeft and the offer url. The data behind aifree.dev/calendar; same filters and paging as GET /api/v1/deadlines. "listed" rows are not yet verified by a person.

  • offer_historyadded

    What changed on one offer, newest first: its changelog events (listed, verified, terms_updated, expired, incidents, …) and edits to its public facts (what is free, limits, card rule, expiry, vendor URL), each with a { from, to } diff when fields changed. Same data and paging as GET /api/v1/offers/{slug}/history.

  • search_free_ai_offerschangedinput schema
  • get_statusadded

    aifree.dev own status: overall verdict, 30-day uptime, per-path checks and background job health. Same report as GET /api/v1/status.

  • build_stackadded

    The aifree.dev/stack builder: for a template (chat, rag, image, voice, agent, finetune) one free pick per slot (llm, emb, vec, host, gpu, tts, stt, image) with alternatives, the tightest published LLM requests per day, cards and programs to watch, and a shareable URL. Optionally pin a slot to an offer slug, require no card, or limit to a country.

  • list_providersadded

    Every provider with public offers: slug, offer count, categories, free types and its offers with status and URL. Same data as GET /api/v1/providers.

Showing the latest 10. Full history: list_changes · trend: quality JSON.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 92 / 100

provenance75
liveness98
freshness100
hygiene100

+repository +website +reachable +uptime-96% +updated-23d-ago

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Dependencies

@aifree/[email protected] npm98 dependencies, resolved · MCP SDK @modelcontextprotocol/sdk 1.32.1 · advisories checked 2026-11-13

advisoryseveritypackagefixed in
GHSA-27r3-jxmh-p828body-parser vulnerable to Denial of Service via trailing bytes after a compressed request bodyhigh[email protected]indirectfixed in 2.4.0
GHSA-jpvv-r467-5p4w@hono/node-server: Backslash in the request path is parsed as a path separator, bypassing path-based access control at a reverse proxymoderate@hono/[email protected]indirectfixed in 2.1.6
GHSA-qv5m-9pm6-hqp3@hono/node-server: Unhandled `ECONNRESET` on the socket during an asynchronous WebSocket upgrade crashes the processmoderate@hono/[email protected]indirectfixed in 2.1.6
GHSA-46wx-v44x-9hh2Hono: `csrf()` does not check requests sent by hyperlink auditing (`text/ping`)moderate[email protected]indirectfixed in 4.13.16
GHSA-4h7h-rv7c-7m2vHono: `validator('form')` skips validation for `multipart/form-data` requests with extra parametersmoderate[email protected]indirectfixed in 4.13.16
GHSA-4m76-xfj5-7975Hono: `mount()` and `app.mount()` can forward a path that bypasses middleware scoped inside the mount prefixmoderate[email protected]indirectfixed in 4.13.16
GHSA-h7mg-cq63-vhpqHono: RegExpRouter skips wildcard middleware for some route sets and for paths with an encoded line terminatormoderate[email protected]indirectfixed in 4.13.16
GHSA-3gg2-335m-rxc6Hono: `css` helper does not escape a closing tag split between the template and an interpolated value, allowing HTML injectionlow[email protected]indirectfixed in 4.13.16

Dependency graphs from deps.dev; advisories from OSV.dev, including the GitHub Advisory Database and the PyPI Advisory Database; all CC BY 4.0. The graph is what a clean install of this version resolves today; nothing was installed or run. How it is checked.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://aifree.dev/mcp streamable-httpnoneyes96%1145 ms2025-11-252026-11-14
packageregistryversionruntimesecrets
@aifree/mcpnpm1.0.1npx

Tools (19)

ask_aifreeread-onlyA short answer about free AI offers grounded in the verified catalog, citing only offer slugs it was shown. Declines questions outside the catalog. Cached per question for 24 h; subject to a daily budget.
best_listread-onlyOne published top list by slug (see best_lists): the picks with links, FAQ, sources and the Markdown body. Same data as GET /api/v1/best/{slug}.
best_listsread-onlyThe published "best free X" top lists of aifree.dev/best: title, description, dates and the picks in order. Same data as GET /api/v1/best; call best_list for one list with links, FAQ and sources.
build_stackread-onlyThe aifree.dev/stack builder: for a template (chat, rag, image, voice, agent, finetune) one free pick per slot (llm, emb, vec, host, gpu, tts, stt, image) with alternatives, the tightest published LLM requests per day, cards and programs to watch, and a shareable URL. Optionally pin a slot to an offer slug, require no card, or limit to a country.
calcread-onlyThe 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.
check_eligibilityread-onlyUse when someone asks what free AI they qualify for given who they are, e.g. "I am a student in Vietnam with no credit card, what free AI can I get?". Same rules as the aifree.dev/unlock quiz: student and startup programs only when the profile says so, no-card drops offers that ask for a card, country drops offers recorded as other-countries-only (offers with no recorded region stay in and are counted in unrecordedRegionCount), building narrows by category. All parameters are optional; omitted ones mean not a student, no startup, anywhere, card OK, any category. Unknown values are ignored the same way. Returns verified rows first, then by USD value. totalUsd sums USD headline values of verified rows only (tokens, requests, images or minutes count as $0, no exchange rates); listed rows are public but not yet checked by a person. limit (default 20, max 50) only trims the returned list: total, verifiedCount and totalUsd cover every match. Each provider decides who qualifies; cite the offer url and the unlockUrl (the same result as a page).
compare_offersread-onlyA markdown comparison table (provider, what is free, limits, card rules, catch, expiry, status) for 2-8 offer slugs.
find_modelsread-onlyWhich free API tiers serve an LLM model, with the published free-tier rate limits (RPM, RPD, TPM, TPD, requests/month), context window, tool calling and JSON mode (structured output). Same rows and ranking (most requests per day first) as the free LLM API picker. Search by model or provider name, optionally by family.
get_modelread-onlyOne model by slug (an alias slug resolves to the canonical one) with every live free source: offer, provider, verified or listed, card rule, context and the published rate limits (rpm, rpd, tpm, tpd, rpmo; null = not published). Same record as GET /api/v1/models/{model}.
get_offerread-onlyFull details for one offer by slug (the last path segment of an aifree.dev/offer/... URL), including the write-up and, for API free tiers, the models served with their published rate limits (rateLimit: rpm, rpd, tpm, optional tpd and rpmo; null = not published), the API id of each model when recorded (apiId), whether its vendor documents JSON mode / structured output (structuredOutput, omitted when unknown), and the API base URL with its request shape (apiBaseUrl, apiCompat: openai, anthropic, google or custom).
get_statusread-onlyaifree.dev own status: overall verdict, 30-day uptime, per-path checks and background job health. Same report as GET /api/v1/status.
is_freeread-onlyAnswers "is <brand, model or product> free?" from the verified catalog: free (true, false, or null when the name is unknown), a one-paragraph answer with the check date, the best verified offer (main limit, card rule, who qualifies, verified date) and the aifree.dev pages to cite. Unknown names return a search URL. Same record as GET /api/v1/is-free?q=.
list_free_llm_apisread-onlyFree LLM / inference API tiers and credits (Gemini, Groq, OpenRouter, Mistral, Cohere, NVIDIA, …) with their limits and card rules.
list_modelsread-onlyEvery model some live free offer serves (the data behind aifree.dev/model and GET /api/v1/models), most free sources first: slug, family, vendor, context window, tool calling, vision, JSON mode, open weights and how many free sources serve it. Filter by name, family, provider, capability or minimum context; then call get_model for the sources and rate limits.
list_providersread-onlyEvery provider with public offers: slug, offer count, categories, free types and its offers with status and URL. Same data as GET /api/v1/providers.
offer_historyread-onlyWhat changed on one offer, newest first: its changelog events (listed, verified, terms_updated, expired, incidents, …) and edits to its public facts (what is free, limits, card rule, expiry, vendor URL), each with a { from, to } diff when fields changed. Same data and paging as GET /api/v1/offers/{slug}/history.
recent_changesread-onlyWhat was listed, verified, changed or expired recently, newest first.
search_free_ai_offersread-onlyFind free AI tools, API free tiers, credits and programs. Free text plus optional filters; returns the best matches with limits, card rules and the page URL to cite.
upcoming_deadlinesread-onlyOffers whose free deal ends within N days (default 30), soonest first: slug, name, provider, expiryDate (last day, UTC), endsAt, daysLeft and the offer url. The data behind aifree.dev/calendar; same filters and paging as GET /api/v1/deadlines. "listed" rows are not yet verified by a person.

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "io.github.minhtc/aifree",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-09-29/server.schema.json",
  "remotes": [
    {
      "url": "https://aifree.dev/mcp",
      "type": "streamable-http"
    }
  ],
  "version": "1.0.1",
  "packages": [
    {
      "version": "1.0.1",
      "transport": {
        "type": "stdio"
      },
      "identifier": "@aifree/mcp",
      "runtimeHint": "npx",
      "registryType": "npm",
      "environmentVariables": [
        {
          "name": "AIFREE_MCP_URL",
          "description": "Override the hosted endpoint (default https://aifree.dev/mcp)."
        }
      ]
    }
  ],
  "repository": {
    "url": "https://github.com/aifree4dev/aifree.dev",
    "source": "github"
  },
  "websiteUrl": "https://aifree.dev/developers#mcp",
  "description": "Verified free AI offers, API free tiers, credits and student/startup programs from aifree.dev."
}