About Express MCP Server
Express MCP Server is a stateless TypeScript and Express example server for developers building MCP integrations. Its echo resource, tool, and prompt demonstrate the protocol over Streamable HTTP.
Key features
- 01Stateless MCP implementation
- 02Streamable HTTP transport
- 03Echo resource for messages
- 04Echo tool response
- 05Echo prompt generation
Use cases
- 01Test MCP JSON-RPC requests
- 02Explore resource, tool, and prompt behavior
- 03Build from a TypeScript and Express server example
MCP support
Exposes an echo resource, tool, and prompt through a stateless MCP endpoint using Streamable HTTP. The endpoint accepts JSON-RPC requests at `/mcp`.
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.