Skip to main content
Glama
HelloWorld MCP Server

HelloWorld MCP Server

by gemyago

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

Related MCP server: Example MCP Server

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

Available Tools

2 tools
addA

Add two numbers together

Inputs: a (required), b (required).

helloB

Say hello to someone

Inputs: name.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.2/5.0

    Scored across 2 tools

    Disambiguation5/5

    The two tools have completely distinct purposes: 'add' performs a mathematical operation on numbers, while 'hello' handles a greeting interaction. There is no overlap or ambiguity between these functions, making tool selection straightforward for an agent.

    Naming Consistency5/5

    Both tool names are simple, lowercase verbs ('add' and 'hello') that clearly indicate their actions. While they don't follow a strict verb_noun pattern, the naming is perfectly consistent in style and readability for this minimal set.

    Tool Count2/5

    With only two tools, this server feels extremely thin and under-scoped for any meaningful domain. The tools are trivial and unrelated, suggesting either a demo/test server or one with significant missing functionality for practical use.

    Completeness1/5

    The server lacks a coherent domain, making completeness impossible to assess meaningfully. The tools are isolated operations (math and greeting) with no logical connection or coverage of any workflow, representing a severely incomplete surface for any real-world purpose.

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      D
      maintenance
      A lightweight TypeScript-based MCP server that demonstrates how to build custom MCP tools by implementing a simple addition calculator. Serves as a starting point for building MCP-compatible tools.
      1,527 npm
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      A simple demonstration MCP server that provides a basic 'say_hello' tool for greeting users by name, serving as a template for building MCP servers with TypeScript.
      6 npm
      1
      ISC
    • A
      license
      A
      quality
      B
      maintenance
      A minimal MCP server that provides a health check (server_info) and multi-language greeting (greet) tools, built with TypeScript and the official SDK.
      2
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      A TypeScript MCP server example providing basic developer tools: hello world greeting, arithmetic calculator, and file information retrieval.
      ISC