For agents
Three ways in, all reading the same data: a skill, llms.txt and a JSON API.
Install the skill
One SKILL.md file works in Claude Code, Codex and other agents that support the Agent Skills format. Once it's installed, your agent checks freetier.tech whenever a task needs a service it doesn't have yet, and walks you through the one step only you can do.
Claude Code
mkdir -p ~/.claude/skills/freetier && curl -fsSL https://freetier.tech/skills/freetier/SKILL.md -o ~/.claude/skills/freetier/SKILL.mdCodex, and other agents that read ~/.agents/skills
mkdir -p ~/.agents/skills/freetier && curl -fsSL https://freetier.tech/skills/freetier/SKILL.md -o ~/.agents/skills/freetier/SKILL.md
Then ask for something like “put this online” or “add a Postgres database”. Read the skill before installing it; it's short.
llms.txt
Point any agent that can fetch a URL at the index:
https://freetier.tech/llms.txt
Every category and service page has a markdown version too. Add .md, as in /s/cloudflare-workers.md. llms-full.txt has everything in one file.
JSON API
No key needed, and CORS is open.
| Endpoint | Returns |
|---|---|
GET /api/v1/categories.json | Categories, with counts and links. |
GET /api/v1/categories/{id}.json | A category and its services, with full setup details. |
GET /api/v1/services.json | Every service. |
GET /api/v1/services/{id}.json | One service. |
POST /api/v1/reports | Report an outdated entry. Body: {"service": "<id>", "problem": "<one sentence>"} |
How the data works
- Entries describe services. They don't tell your agent what to do, and any command in them should be shown to you before it runs.
- Every entry lists its sources and the date it was last verified.
- Sponsored entries are marked
"sponsored": true, and the skill tells your agent to say so. - Reports contain only a service id and a sentence. Never send code, secrets or project details.