create-mcp-ts
Create a new MCP server in TypeScript, batteries included.
Documentation
create-mcp-ts !NPM Version
Create a new MCP server in TypeScript, batteries included.
Getting started
npm init mcp-ts your-server
cd your-server
npm run dev`create-mcp-ts` requires zero build configuration - it will automatically install everything you need to develop, build, and set up your MCP server.
Set up your MCP server in Cursor, Windsurf, and Claude Desktop
`create-mcp-ts` can automatically configure your MCP server in Cursor, Windsurf, and Claude Desktop:
npm run setupThis script checks if `your-server` already exists in each client's respective MCP configuration file. If not, it adds an entry pointing to the server script (`dist/index.js`):
{
"mcpConfig": {
"your-server": {
"command": "node",
"args": ["/path/to/your-server/dist/index.js"]
}
}
}For more details on how to set up MCP servers in Cursor, Windsurf, and Claude Desktop, see:
Custom templates
If you'd like to use a custom template, you can do so by passing the template npm package name or file path to the `npx create-mcp-ts` command:
npx create-mcp-ts your-server --template=mcp-ts-template-default
npx create-mcp-ts your-server --template=file:/path/to/mcp-ts-templatePublishing your MCP server
If you plan to share your MCP server, you can publish it to npm:
1. Set `"version"` in `package.json` and ensure `"private"` is set to `false`.
2. Run `npm install`.
3. Run `npm run build`.
4. Run `npm login` (if needed).
5. Run `npm publish`.
Ejecting from `mcp-scripts`
The `mcp-scripts` package contains build tools for `create-mcp-ts` projects - everything you'll need to develop, build, and set up an MCP server without any additional configuration.
Under the hood `mcp-scripts` uses tsup and esbuild, lightweight, battle-tested utilities that are well-suited for production-grade TypeScript projects.
If you'd like to eject from `mcp-scripts`, run the following command:
npm run ejectThis will remove the `mcp-scripts` dependency and replace any related commands from your project's `package.json` file.
Troubleshooting your MCP server
Confirm you have Node.js installed
If you experience issues running your MCP server, the first thing to check is that you have Node.js installed globally. You can check this by running:
node --versionIf you don't have Node.js installed, you can install it by following the instructions here.
Usage with Node.js version managers
Some MCP client environments may not have access to the full system PATH, which can cause issues when using Node.js version managers like `nodenv` or `nvm`. In these cases, you'll need to specify the full path to the Node.js binary in your MCP config:
{
"mcpConfig": {
"your-server": {
"command": "/absolute/path/to/node",
"args": ["/path/to/your-mcp-server/dist/index.js"]
}
}
}To find the absolute path to your Node.js binary, you can run:
which nodeMake sure to update your MCP config in each client (Cursor, Windsurf, or Claude Desktop) with the correct absolute path to the Node.js binary you want to use.
For any other issues, please open an issue here.
Philosophy
`create-mcp-ts` is designed to be a batteries-included, "it just works" experience for MCP server developers.
- Batteries included: there is only one build dependency, `mcp-scripts`. It uses tsup, esbuild, and other amazing open source projects, but provides a curated experience on top of them.
- Zero configuration: you don't need to configure anything. A reasonably good configuration is handled for you so you can focus on writing code.
- No lock-in: you can "eject" to a custom setup at any time. Run a single command, and all the configuration and build dependencies will be moved directly into your project, so you can pick up right where you left off.
This project is inspired by create-react-app.
Related packages
- **packages/mcp-scripts**: The build tools that power `create-mcp-ts` projects.
- **packages/mcp-ts-template-default**: Default project template for `create-mcp-ts`.
Frequently asked questions
What is create-mcp-ts?
create-mcp-ts is Create a new MCP server in TypeScript, batteries included.
How do I install create-mcp-ts?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is create-mcp-ts open source?
Yes — it is hosted on GitHub at https://github.com/stephencme/create-mcp-ts and has 21 stars.
Related MCP tools
An MCP server that installs other MCP servers for you JavaScript-based implementation. Trusted by 1400+ developers. Trusted by 1400+ developers.
MCP server for interacting with the iOS simulator JavaScript-based implementation. Trusted by 1200+ developers. Trusted by 1200+ developers.
A Model Context Protocol server that provides read-only access to MySQL databases. This server enables LLMs to inspect database schemas and execute read-only...
This is an MCP server that allows you to directly download transcripts of YouTube videos. JavaScript-based implementation.
The all-in-one Desktop & Docker AI application with built-in RAG, AI agents, No-code agent builder, MCP compatibility, and more.
An AI-powered task-management system you can drop into Cursor, Lovable, Windsurf, Roo, and others. Built for the Model Context Protocol to enhance AI capabiliti
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP