Collection13 tools
AI and LLM developer tools
Token budgets, prompt shaping, and the config files you end up writing when you build on top of a language model.
Building a product on top of a language model involves a surprising amount of clerical work that has nothing to do with the model itself. You need to know roughly how many tokens a document will cost before you send it. You need to know whether a prompt plus its retrieved context plus its expected output will actually fit in the window. You need to turn a rough idea of a function into a JSON Schema that a provider's tool-calling API will accept. You need to write a CLAUDE.md, a .cursorrules, and an MCP server config, all of which are just structured text files with conventions you half-remember.
None of that needs a server, and most of it does not even need an API key. This collection gathers the utilities on this site that handle those chores in a browser tab. They break into four groups: things that measure (tokens, windows, cost), things that shape a prompt, things that produce a config artefact, and one thing that compares two versions of an instruction file so you can see what a teammate changed.
The common thread is that you can use all of them while your actual work is still a scratchpad — before there is a repo, before there is a key in an environment variable, before you have decided which provider you are using.
Measuring before you spend
Three of these tools share a single question: what is this text going to cost me, in tokens and in money? Token Counter is the blunt instrument — paste text, pick a model, get a token count alongside character and word counts. Context Window Calculator takes the same count and puts it against a model's advertised window, so you can see that your 40-page contract is at 82% of a 128k window before you discover it by way of a truncation error. AI Cost Calculator is pure arithmetic on top of published per-million prices: input tokens, output tokens, number of requests, total.
It is worth being precise about how the counting works, because token counts are the kind of number people quietly trust. The counter uses gpt-tokenizer, an implementation of OpenAI's byte-pair encoding. For OpenAI models that is the real tokenizer. For Claude and Llama it applies a small fixed multiplier to the GPT count — a calibration, not a second tokenizer. That is accurate enough to plan a budget or catch a context overflow, and it is not accurate enough to reconcile an invoice. Use it as a forecast; use your provider's usage dashboard as the ledger.
Model Comparison is the reference table the other three read from: a sortable, filterable view of context window, input price, output price, tier and multimodal support across the models this site tracks. It is a hand-maintained table, not a live feed. Providers change prices and ship new models faster than any static table can follow, so treat it as a shortlist-builder and confirm the number on the provider's own pricing page before it goes into a spreadsheet someone will act on.
Shaping the prompt
Prompt work splits neatly into composition and serialisation, and there is a separate tool for each. System Prompt Builder is about composition: it gives you labelled fields for role, tone, constraints, output format and examples, and assembles them into a system prompt as plain text, as an XML-tagged block, or as a JSON message object. The value is not the string concatenation — it is that the fields remind you which parts of a system prompt you routinely forget to write down.
Prompt Formatter is about serialisation: you have a system, user and assistant turn, and you need them in ChatML, in Llama 3's header-token format, in Claude's XML convention, in an OpenAI-style message array, or as plain labelled text. This matters mostly when you are working against a raw completions endpoint or a local runtime, where getting a special token wrong produces a model that ignores your instructions rather than an error message.
Prompt Library is the place the good ones end up. It stores prompts with titles and tags in your browser's local storage, with search across title and body, and JSON export and import so a library can move between machines or into version control. Because it is local storage, it is per-browser and per-profile: clearing site data clears the library. Export is the backup.
Producing config that a machine has to parse
The second half of this collection generates files whose only reader is another program, where a small syntax error costs you twenty minutes. JSON Schema Builder turns a list of named, typed, described properties into a tool definition, and wraps it in OpenAI's function-calling envelope, Anthropic's input_schema envelope, or leaves it as bare JSON Schema. It handles one level: a flat object with typed properties and a required list. Nested objects and array item schemas are not modelled, so a genuinely recursive tool definition needs hand-finishing after export.
MCP Config Generator writes the mcpServers block that Model Context Protocol clients read, for both stdio servers (command, arguments, environment) and SSE servers (URL, environment). One caveat worth knowing before you paste: arguments are split on whitespace, so a single argument that contains a space needs editing by hand afterwards.
CLAUDE.md Generator and AI Rules Generator solve the same problem for two different ecosystems — a project instruction file that a coding agent reads on every session. The first produces a CLAUDE.md with sections for overview, stack, key commands, conventions, and explicit do/don't lists. The second targets Cursor, Windsurf and GitHub Copilot, emitting .cursorrules, .windsurfrules or copilot-instructions.md with the right heading conventions for each. Neither reads your repository; they are structured prompts for you, turning a blank file into a filled-in form.
Skill / Agent Builder covers the newer shape of the same idea: a named capability with trigger phrases, a description and an instruction body, emitted as Markdown with YAML frontmatter, as YAML, or as JSON. And AI Instruction Diff closes the loop — paste two versions of a system prompt or rules file and get a line-level diff, which is how you find the one sentence someone added that changed the model's behaviour.
How this fits with the rest of the site
This collection is about tooling for people who build with hosted models. It is deliberately separate from the on-device AI tools, which are the opposite arrangement: models that download into your browser and run there, no API key and no provider involved. The two overlap in exactly one place worth knowing about — PII Detector & Redactor runs a named-entity model locally, which makes it a reasonable pre-processing step before text goes to a hosted API.
If your interest in browser-based tooling is mainly that nothing gets uploaded, the privacy-first collection sets out what that claim does and does not mean on this site.
The thirteen tools
Grouped roughly in the order you would hit them: measure, then shape, then generate, then compare.
- Token CounterAI ToolsYou have a document and you want to know whether it is a 2,000-token problem or a 200,000-token problem.Open tool
- Context Window CalculatorAI ToolsYou know the token count and need to see it as a percentage of a specific model's window, with a warning before you hit the ceiling.Open tool
- AI Cost CalculatorAI ToolsYou are sizing a batch job and need input tokens × output tokens × requests turned into a number you can put in a proposal.Open tool
- Model ComparisonAI ToolsYou are choosing between providers and want context window and per-million pricing side by side, sortable.Open tool
- System Prompt BuilderAI ToolsYou are writing a system prompt from scratch and want a form that prompts you for role, tone, constraints, format and examples.Open tool
- Prompt FormatterAI ToolsYou have the turns and need them serialised into ChatML, Llama 3 header tokens, Claude XML, or an OpenAI message array.Open tool
- Prompt LibraryAI ToolsYou keep rewriting the same prompt from memory and want it saved, tagged, searchable and exportable.Open tool
- JSON Schema BuilderAI ToolsYou are defining a tool call and need a flat JSON Schema wrapped in OpenAI or Anthropic's expected envelope.Open tool
- MCP Config GeneratorAI ToolsYou are wiring up an MCP server and want valid `mcpServers` JSON for a stdio or SSE transport without hunting the docs.Open tool
- CLAUDE.md GeneratorAI ToolsYou are starting a project and want a CLAUDE.md with the sections filled in rather than a blank file.Open tool
- AI Rules GeneratorAI ToolsSame idea, but the agent is Cursor, Windsurf or Copilot and each wants a differently named file.Open tool
- Skill / Agent BuilderAI ToolsYou are packaging a reusable capability and need frontmatter, triggers and instructions in Markdown, YAML or JSON.Open tool
- AI Instruction DiffAI ToolsTwo versions of a prompt behave differently and you need to see exactly which lines changed.Open tool
What these tools do not do
None of them call a model. There is no inference here, no API key field, and no completion preview — these are calculators and text generators that produce input for a model you run elsewhere. If you want a model that actually runs, that is the on-device AI collection.
Token counts for non-OpenAI models are calibrated approximations, as described above. Pricing and context-window figures come from a static table that a human updates; they can lag a provider announcement. Neither number should be the last check before a commitment.
The generators produce well-formed starting points, not validated artefacts. JSON Schema Builder is single-level. MCP Config splits arguments on whitespace. Skill Builder assembles YAML frontmatter by string concatenation, so a description containing a colon or a line break needs quoting by hand. In every case the output is meant to be read and edited before it is committed, which is also true of anything else that writes config for you.