About Express MCP Server
Express MCP Server is a stateless MCP server example built with Express and TypeScript for developers exploring or testing MCP services. It provides echo tools, resources, and prompts over Streamable HTTP.
Key features
- 01Stateless MCP server
- 02Streamable HTTP transport
- 03TypeScript type safety
- 04Echo tool, resource, and prompt
Use cases
- 01Test MCP client-server interactions
- 02Explore MCP server structure with Express
MCP support
The server exposes an echo resource, tool, and prompt through MCP, responding to clients with JSON-RPC requests.
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 READMEExpress MCP Server
A stateless Model Context Protocol (MCP) server built with Express and TypeScript.
Features
- Stateless MCP server implementation with modern Streamable HTTP transport
- TypeScript for type safety
- Express.js for HTTP handling
Requirements
- Node.js 18+
- npm or yarn
Installation
# Clone the repository (or download)
git clone https://github.com/your-username/sample-express-mcp-server.git
cd sample-express-mcp-server
# Install dependencies
npm install
Development
# Build the TypeScript code
npm run build
# Run in development mode with auto-reloading
npm run dev
# Run tests (when added)
npm test
Server Structure
src/
├── index.ts # Main application entry point
└── server.ts # MCP server definition with resource, tool, and prompt
Available Functionality
This server implements a simple echo endpoint with three MCP components:
- Resource:
echo://{message}- Returns the message as a resource - Tool:
echo- Echoes the provided message back as a tool response - Prompt:
echo- Creates a user prompt with the provided message
MCP Protocol
This server implements the Model Context Protocol (MCP), a standardized way for LLMs to interact with external data and functionality. It exposes a stateless API endpoint that responds to JSON-RPC requests.
API Usage
Send a POST request to /mcp with a JSON-RPC payload:
Initialize
curl -X POST http://localhost:3001/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-H "Accept: text/event-stream" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "initialize",
"params": {
"protocolVersion": "2024-11-05",
"capabilities": {
"roots": {
"listChanged": true
},
"sampling": {}
},
"clientInfo": {
"name": "ExampleClient",
"version": "1.0.0"
}
}
}'
Call Echo Tool
curl -X POST http://localhost:3001/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-H "Accept: text/event-stream" \
-d '{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "echo",
"arguments": {
"message": "Hello, World!"
}
},
"id": 1
}'
License
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.