llms.txt Content
# Keryx
> > The Fullstack TypeScript Framework for MCP and APIs
One action class. Five transports. Your API is automatically an MCP server for AI agents, a WebSocket handler, a CLI tool, and a background task runner. Built on Bun, powered by Zod.
For the complete documentation in a single file, see [llms-full.txt](/llms-full.txt).
## Table of Contents
### Introduction
- [Getting Started](https://keryxjs.com/guide.md): Get up and running with Keryx — prerequisites, installation, and your first dev server.
- [About Keryx](https://keryxjs.com/guide/about.md): Etymology of the name, why Keryx treats MCP as a first-class transport, brand assets, and community links.
### Core Concepts
- [Actions](https://keryxjs.com/guide/actions.md): How to write actions — inputs, validation, web routes, task scheduling, middleware, MCP exposure, and type helpers.
- [Streaming](https://keryxjs.com/guide/streaming.md): Return streaming responses from actions — Server-Sent Events for real-time data and chunked binary for file downloads over HTTP.
- [Initializers](https://keryxjs.com/guide/initializers.md): Initializers are lifecycle components that set up services and attach them to the global API singleton.
- [Channels](https://keryxjs.com/guide/channels.md): Channels define PubSub topics for real-time WebSocket messaging with middleware-based authorization.
- [Background Tasks](https://keryxjs.com/guide/tasks.md): Background tasks with Resque workers and the fan-out pattern for distributing work across child jobs.
- [Middleware](https://keryxjs.com/guide/middleware.md): Middleware intercepts action execution for authentication, authorization, logging, and response modification.
- [MCP Server](https://keryxjs.com/guide/mcp.md): MCP server configuration — how actions become tools, controlling tool exposure, McpActionConfig options, response formats, resources, and prompts.
- [Configuration](https://keryxjs.com/guide/config.md): Modular configuration with per-environment ove