v0.1.0-alpha.10 — now on npm

The AI Layer for Next.js

Make your site readable by AI search engines and callable by AI agents. One config file, zero changes to your UI.

Get Started
pnpm add next-ai-ready

Everything AI needs from your site

Your existing Next.js app gains a complete AI interface — discovery, retrieval, and tool execution.

AI Search Discovery

Your content appears in ChatGPT, Perplexity, Google AI Overviews. Structured llms.txt and per-page Markdown make you citable.

Agent Tool Calling

Define actions with type-safe schemas. They become OpenAPI endpoints and MCP tools that any agent can invoke.

Semantic Graph

Your MDX pages compile into a rich knowledge graph. AI systems get summaries, topics, Q&A pairs, and relationships.

MCP Protocol

First-class MCP server support. Claude Desktop, Cursor, and any MCP client can connect to your site directly.

Zero Lock-in

Open standards only — OpenAPI, JSON-LD, llms.txt, MCP. Works with any AI provider. MIT licensed.

Developer Experience

init, build, doctor CLI. Type-safe config. CI-friendly checks. Hot reload in development. Works with any Next.js app.

Knowledge Plane

AI can read your content

MDX pages are compiled into a semantic graph. AI search engines get structured, citable content via llms.txt, Markdown, and JSON-LD.

# Acme Documentation

> The complete toolkit for building
> modern web applications.

## Docs

- [Getting Started](/docs/start)
  Install and configure in 60 seconds.
- [Authentication](/docs/auth)
  Secure your app with built-in auth.
- [Deployment](/docs/deploy)
  Deploy anywhere with one command.
/llms.txt
Capability Plane

AI can call your features

Define actions with Zod schemas. They become OpenAPI endpoints, MCP tools, and tools.json manifests — all from one definition.

import { defineAction } from "next-ai-ready"
import { z } from "zod"

defineAction({
  name: "search_docs",
  description: "Search documentation.",
  input: z.object({
    query: z.string(),
    limit: z.number().default(5),
  }),
  public: true,
  handler: async ({ query, limit }) => {
    return await searchIndex(query, limit)
  },
})
actions/search.mjs

What gets generated

/llms.txtLLM site index
/openapi.jsonOpenAPI 3.1 spec
/api/mcpMCP server
/<page>.mdPer-page Markdown
/tools.jsonTools manifest
JSON-LDStructured data

Ready to make your site AI-ready?

Get started in under 60 seconds.

Read the documentation