About MCP Server
A Node.js and TypeScript MCP server example for learning how tools, resources, and prompts are implemented. It provides a calculator, system information and echo resources, and greeting and code-review prompts over stdio or HTTP/SSE.
Key features
- 01Arithmetic calculator tool
- 02System information and echo resources
- 03Greeting and code-review prompts
- 04stdio and HTTP/SSE transports
- 05Logging system
Use cases
- 01Test arithmetic tool calls from an MCP client
- 02Read system information or echoed messages through resources
- 03Try prompt templates and transport options during development
MCP support
The server exposes a calculator tool, system information and echo resources, and greeting and code-review prompts to MCP clients. It supports stdio and HTTP/SSE transports.
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 Server
A Model Context Protocol (MCP) server implementation using Node.js and TypeScript.
What is MCP?
The Model Context Protocol (MCP) is an open protocol that standardizes how applications provide context to LLMs (Large Language Models). It allows for seamless communication between AI applications and various data sources and tools.
Features
This server implementation provides:
- A calculator tool with basic arithmetic operations (add, subtract, multiply, divide)
- Server information resource with system metrics
- Echo resource for message reflection
- Greeting prompt template with formal/casual options
- Code review prompt template
- Support for both stdio and HTTP/SSE transport methods
- Comprehensive logging system
Getting Started
Prerequisites
- Node.js 18+ and npm
Installation
- Clone the repository
- Install dependencies:
npm install
- Build the project:
npm run build
Running the Server
Using stdio (for integration with MCP clients)
npm start
Using HTTP/SSE (for web-based usage)
npm start -- --http
The server will start on port 3000 by default. You can change this by setting the PORT environment variable:
PORT=8080 npm start -- --http
API
Tools
calculate: Perform arithmetic operations- Parameters:
operation(add/subtract/multiply/divide)a(number)b(number)
- Parameters:
Resources
server://info: Get server information including:- Server name and version
- Uptime
- Node.js version
- Platform
- Memory usage
echo://{message}: Echo back the provided message
Prompts
greeting: Generate personalized greetings- Parameters:
name(string): Name to greetformal(optional string): Whether to use formal language
- Parameters:
code-review: Review code for improvements- Parameters:
code(string): Code to reviewlanguage(string): Programming languagefocus(optional string): Review focus area
- Parameters:
Development
To run the server in development mode with auto-reloading:
npm run dev
For HTTP/SSE transport in development mode:
npm run dev -- --http
License
ISC
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.