MCP Server Starter
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MCP Server Startercalculate 5 times 7"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP Server Starter (TypeScript)
A production-ready starter kit for building Model Context Protocol (MCP) servers in TypeScript. Clone it, add your tools, ship. Everything you'd otherwise spend a day wiring up is already here:
✅ Typed, validated config from environment variables (zod) — fails fast on bad input
✅ Clean modular structure for tools, resources and prompts — add a file, register it, done
✅ Three reference tools (
echo,calculator,fetch_url) showing input validation, error handling, and safe network I/O with a timeout + host allowlist✅ Resource and prompt examples wired end to end
✅ stderr-only structured logger (never corrupts the stdio JSON-RPC stream — a common footgun)
✅ Full test suite (Vitest) including an in-memory client↔server round-trip test
✅ Docker multi-stage build and GitHub Actions CI across Node 18/20/22
✅ Graceful shutdown on SIGINT/SIGTERM
✅ MIT licensed — use it in commercial projects freely
Quick start
npm install
npm run build
npm start # runs the MCP server over stdioDevelop with hot reload:
npm run devRun the test suite and type checks:
npm test
npm run typecheckInspect it interactively with the official MCP Inspector:
npm run inspectUse it with Claude Desktop / any MCP client
After npm run build, add this to your client's MCP config (e.g. Claude Desktop's claude_desktop_config.json):
{
"mcpServers": {
"starter": {
"command": "node",
"args": ["/absolute/path/to/mcp-server-starter/dist/index.js"]
}
}
}Project layout
src/
index.ts # entrypoint: loads config, wires stdio transport, handles shutdown
server.ts # builds the McpServer and registers everything
config.ts # zod-validated environment config
logger.ts # structured stderr logger
tools/ # one file per tool + a registrar (index.ts)
resources/ # read-only content exposed to the client
prompts/ # reusable prompt templates
test/ # vitest unit + end-to-end tests
Dockerfile # multi-stage production image
.github/workflows/ # CIAdd your own tool
Create
src/tools/myTool.tsexporting aToolModule(copyecho.ts).Add it to the
toolsarray insrc/tools/index.ts.Add a test in
test/tools.test.ts.
That's the whole loop. The ToolModule type keeps the input schema, metadata and handler together and type-checked.
Configuration
All settings are optional and read from the environment (see .env.example):
Variable | Default | Description |
|
| Name reported to clients |
|
| Version reported to clients |
|
|
|
|
| Timeout for the |
| (empty = all) | Comma-separated host allowlist for |
Docker
docker build -t mcp-server-starter .
docker run --rm -i mcp-server-starterLicense
MIT — see LICENSE.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/dao-genesis/mcp-server-starter'
If you have feedback or need assistance with the MCP directory API, please join our Discord server