@agentailor/create-mcp-server
Scaffold production-ready MCP servers in seconds.
Quick Start
Interactive mode (guided prompts):
npx @agentailor/create-mcp-server
CLI mode (all options via arguments):
npx @agentailor/create-mcp-server --name=my-server
CLI Options
Examples:
# Minimal - uses all defaults (HTTP streamable)
npx @agentailor/create-mcp-server --name=my-server
# stdio server (for local clients)
npx @agentailor/create-mcp-server --name=my-server --stdio
# Full HTTP options
npx @agentailor/create-mcp-server \
--name=my-auth-server \
--package-manager=pnpm \
--oauth
# Short flags
npx @agentailor/create-mcp-server -n my-server -p yarn --stdio
Features
- MCP SDK v2 — projects serve protocol revision
2026-07-28and still accept 2025-era clients - Two transport types — HTTP (streamable) or stdio (for local clients)
- Stateless by design — the SDK handler builds a fresh server per request, so HTTP servers scale without sticky sessions
- Optional OAuth — OIDC-compliant authentication (HTTP only) (setup guide)
- Package manager choice — npm, pnpm, or yarn
- TypeScript ready — ready to customize
- Docker ready — production Dockerfile included (HTTP transport)
- MCP Inspector — built-in debugging with
npm run inspect
Official MCP SDK
Projects are generated against the MCP TypeScript SDK v2 — the split @modelcontextprotocol/server, @modelcontextprotocol/express, and @modelcontextprotocol/node packages, rather than the v1 @modelcontextprotocol/sdk monolith.
HTTP servers are built on createMcpHandler, which runs the server factory once per request. They serve protocol revision 2026-07-28 and also accept 2025-era clients. stdio servers use serveStdio, which negotiates the era per connection.
FastMCP was removed in 0.10.0. It never moved to SDK v2, so FastMCP projects stayed on the 2025-era protocol and shipped without tests. To scaffold one anyway, pin the last release that supports it:
npx @agentailor/[email protected] --framework=fastmcp.
Transport Types
HTTP: Deploy as an HTTP server accessible remotely.
stdio: Run as a local process. Communicates over stdin/stdout. Ideal for local clients. No HTTP server, no port, no Dockerfile generated.
Server Modes (HTTP only)
SDK v2 serves every HTTP request through a single per-request idiom: createMcpHandler builds a fresh McpServer for each call, and 2025-era clients are served through the same path. The stateless/stateful distinction that v1 required no longer changes the generated project.
--template is deprecated: both values produce the same output and the CLI prints a warning when it is passed. It will be removed in a future release, so drop it from scripts. If you need session-based serving with SSE resumability, the SDK still offers NodeStreamableHTTPServerTransport — see the SDK v2 sessions guide.
Generated Project
my-mcp-server/
├── src/
│ ├── server.ts # Creates the server, registers the primitives
│ ├── tools.ts # Tool definitions
│ ├── prompts.ts # Prompt definitions
│ ├── resources.ts # Resource definitions
│ ├── notes-store.ts # Example data layer (no MCP imports)
│ ├── notes-store.test.ts # Store unit tests
│ ├── server.test.ts # Tests driven through a real MCP client
│ ├── index.ts # Express app and transport setup
│ └── auth.ts # OAuth middleware (if enabled)
├── Dockerfile # Production-ready Docker build
├── package.json
├── tsconfig.json
├── .gitignore
├── .env.example
├── AGENTS.md # Working notes for humans and coding agents
└── README.md
Projects come with a worked example — a small notes server — and a test suite that runs green immediately, so there is a working pattern to copy when you add your own tools.
Projects also get Agentailor's tool-design
skill at .agents/skills/, so a coding agent working in the project has the
guidance on hand. It is bundled with the CLI, so this needs no network and adds
nothing to scaffolding time. Pass --no-skills to skip it, and run
npx skills update -p -y inside the project if you want a newer version.
Every project also gets an AGENTS.md covering the things that are easy to get
wrong: how to write a tool an agent can use, how to organize tools as they grow,
and the transport-specific traps (state is per-request over HTTP; stdout belongs
to the protocol over stdio).
Scripts:
npm run dev— build and start the servernpm test— run the test suitenpm run inspect— open MCP Inspector (update URL inpackage.jsonif needed)
Learning Resources
Need help building MCP servers or agent infrastructure?
I help teams design and ship production-ready AI agent systems (MCP, LangGraph, RAG, memory, performance).
If you’re building something serious on top of this:
Happy to jump on a short call.
What is MCP?
The Model Context Protocol (MCP) is an open protocol that enables AI assistants to interact with external tools, data sources, and services.
Built by Agentailor
Built by Agentailor — your launchpad for production-ready MCP servers and scalable AI agents. We provide the tools, templates, and expertise to ship AI-powered applications faster.