About MCP TypeScript Simple Template
MCP TypeScript Simple Template is a TypeScript starting point for developers building MCP servers and adding custom tools. It includes a BMI calculator example and demonstrates Zod input validation and standard I/O communication.
Key features
- 01TypeScript MCP server scaffolding
- 02BMI calculator example tool
- 03Zod input validation
- 04Standard I/O communication
Use cases
- 01Start a TypeScript MCP server project
- 02Use the example to add custom tools
MCP support
The template implements an MCP server that communicates over standard I/O and provides an example structure for extending its tools.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEMCP TypeScript Simple Template
A simple TypeScript template for building Model Context Protocol (MCP) servers. This project provides a foundation for creating custom MCP tools that can be integrated with AI systems.
Overview
This template implements a basic MCP server with a sample BMI calculator tool. It demonstrates how to:
- Set up an MCP server in TypeScript
- Define and implement MCP tools with input validation using Zod
- Connect the server to standard I/O for communication
Prerequisites
- Node.js (v20 or higher recommended)
- npm or yarn
Installation
- Clone this repository
- Install dependencies:
npm install
Project Structure
index.ts- Main server implementation with sample toolpackage.json- Project dependencies and scriptstsconfig.json- TypeScript configuration
Usage
Building and Running
Build and start the server:
npm start
This will compile the TypeScript code and start the MCP server.
Development
For development, you can:
- Modify
index.tsto add your own tools - Run the build command to compile:
npm run build
Creating Custom Tools
To create a new tool, follow this pattern in index.ts:
server.tool(
"your-tool-name",
{
// Define input schema using Zod
paramName: z.string(),
// Add more parameters as needed
},
async ({ paramName }) => ({
content: [{
type: "text",
text: "Your tool's response"
}]
})
);
Dependencies
@modelcontextprotocol/sdk- Core MCP SDKzod- Schema validationdotenv- Environment variable managementtypescript- TypeScript compiler
License
ISC
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.