typescript-mcp-boilerplate

gemyago/typescript-mcp-boilerplate

3.2

If you are the rightful owner of typescript-mcp-boilerplate and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

HelloWorld MCP Server is a simple experiment built with TypeScript to demonstrate the Model Context Protocol.

Tools
  1. hello

    Say hello to someone with an optional name parameter.

  2. add

    Add two numbers together with required parameters 'a' and 'b'.

HelloWorld MCP Server

A simple HelloWorld MCP (Model Context Protocol) server experiment built with TypeScript.

Features

This MCP server provides two simple tools:

  • hello: Say hello to someone (default: "World")
  • add: Add two numbers together

Prerequisites

  • Node.js 22+ (LTS)
  • npm
  • nvm (recommended for Node.js version management)
  • direnv (for environment management)

Setup

  1. Node.js Version Management

    # If you have nvm installed:
    nvm use
    
    # This will use Node.js version 22 as specified in .nvmrc
    
  2. Environment Setup with direnv

    # Allow direnv for this directory
    direnv allow
    
    # This will automatically add node_modules/.bin to your PATH
    
  3. Install Dependencies

    npm install
    

Development

Available Scripts

  • npm run dev - Run the server in development mode using tsx
  • npm run build - Compile TypeScript to JavaScript
  • npm start - Run the compiled server
  • npm run lint - Run ESLint on the source code
  • npm run lint:fix - Run ESLint and automatically fix issues
  • npm run clean - Remove the dist directory

Running the Server

For development:

npm run dev

For production:

npm run build
npm start

MCP Server Usage

This server communicates via stdio and implements the Model Context Protocol. It provides:

Tools

  1. hello

    • Description: Say hello to someone
    • Parameters:
      • name (optional): The name of the person to greet (default: "World")
    • Example: {"name": "Alice"} → "Hello, Alice! šŸ‘‹ Welcome to the HelloWorld MCP server!"
  2. add

    • Description: Add two numbers together
    • Parameters:
      • a (required): First number
      • b (required): Second number
    • Example: {"a": 5, "b": 3} → "5 + 3 = 8"

Project Structure

ā”œā”€ā”€ src/
│   └── index.ts          # Main MCP server implementation
ā”œā”€ā”€ dist/                 # Compiled JavaScript (after build)
ā”œā”€ā”€ .nvmrc               # Node.js version specification
ā”œā”€ā”€ .envrc               # direnv configuration
ā”œā”€ā”€ eslint.config.js     # ESLint configuration
ā”œā”€ā”€ tsconfig.json        # TypeScript configuration
ā”œā”€ā”€ package.json         # Node.js project configuration
└── README.md           # This file

Code Quality

This project uses:

  • TypeScript for type safety
  • ESLint with TypeScript support for code quality
  • Strict TypeScript configuration for better type checking

License

MIT