Turn your API into tools AI agents can call.

One command reads your OpenAPI spec or validation schemas and writes them: typed, checked for safety, ready to test in the local playground.

$npx @webmcp-stack/codegen generate
read the docs →
generated from Immich's OpenAPI spec
$npx @webmcp-stack/codegen dev

What every generated tool ships with.

An agent never sees your API. It sees each tool's name, description, and schema, and nothing else. So each one meets every line of the same standard:

/ CODEGEN

NO. 001

The tool standard.

every generated tool, checked against all eight on every run

01

A name that says what it does

post-trips-trip-id-story-generategenerate-story

02

A description an agent can act on

What it does, when to use it, what it returns.

03

Inputs spelled out in words

Required, optional, limits: written in, never guessed.

04

Unreviewed tools never reach agents

Auth, admin, and destructive ones stay unregistered until you turn them on.

05

Failures that say what to try next

A readable reason, never a stack trace.

06

A human keeps the final click

Payments and deletes stop at a confirmation.

07

Re-runs never touch your code

The spec moves, the tools update, your edits survive.

08

No account, no telemetry, no runtime

Plain TypeScript in your repo, nothing imported back.

Point it at your API.

The first run writes nothing. It only shows you the tools hiding in your API.

$npx @webmcp-stack/codegen generate --dry-run