This is a minimal Model Context Protocol (MCP) server that provides basic greeting resources and a simple echo tool for demonstration and learning purposes.
Resources:
hello://greeting- Returns a simple greeting messagehello://info- Provides general server informationhello://list- Lists all available resources
Tools:
helloTool - Echoes back a custom message or returns a default greeting when no message is provided
Use Cases:
Learn and understand MCP server structure and protocol
Serve as a template for building custom MCP servers
Integrate with MCP-enabled clients like Claude Desktop via stdio transport
Test MCP client integrations and verify protocol functionality
Extend and customize by adding new tools or resources in TypeScript
Hello World MCP Server
A minimal Model Context Protocol (MCP) server written in TypeScript. This project demonstrates how to create MCP-compliant resources and tools for use with LLMs and MCP-enabled clients like Claude Desktop.
Features
MCP Resources:
Provides simple resources athello://greeting,hello://info, and a resource list athello://list.MCP Tool:
AhelloToolthat echoes messages or returns a default greeting.Stdio Transport:
Communicates via standard input/output, making it easy to integrate with MCP clients.
Related MCP server: MCP Framework
Getting Started
Prerequisites
Install Dependencies
Build the Project
Compile TypeScript source files to JavaScript in the dist/ directory:
Run the Server (Standalone)
This will start the MCP server via Node.js using the built output.
Run Tests
Integration tests are provided to verify the MCP server works end-to-end:
This runs the tests in src/integration.test.ts using Jest.
Using with Claude Desktop
You can configure Claude Desktop or any MCP client to use this server as a plugin/tool by specifying the command to launch the MCP server.
Example Configuration Snippet
Add the following to your Claude Desktop settings (replace the path with your actual project path):
Replace
/path/to/mcp-hello-world-ts/with the full path to where you cloned this repo.Make sure you have built the project (
npm run build) before starting Claude Desktop.
Project Structure
Customization
To add new tools or resources, create new files in
src/resources/orsrc/tools/and register them insrc/index.ts.Modify
helloResource.tsorhelloTool.tsto change the greeting or add additional functionality.
License
MIT License