README Documentation
mcpburst
Host an express app of streamablehttp and stdio MCP servers that you can use from your own website. (comes with a mini chat dialog to check responses)
Table of Contents
Features
- Streamable HTTP MCP transport server built on Model Context Protocol SDK
- Demo stdio MCP transport server
- Built-in demo tool (
echo
) for testing - Express façade handling JSON-RPC at
/mcp
and health checks at/health
- Mini front-end chat UI to test MCP responses
Prerequisites
- Node.js v16 or higher
- npm (included with Node.js)
Installation
-
Clone the repository:
git clone https://github.com/arberrexhepi/mcpburst.git cd mcpburst
-
Install root dependencies in root:
npm install
-
Install hub and server dependencies:
cd hub && npm install && cd ..
Configuration
Create environment variable files in both hub/
and server/
directories:
hub/.env
PORT=4000
HOST=localhost
MCP_REQUIRE_AUTH=false # set to 'true' to require Bearer auth NOTE: Work in Progress
GITHUB_API_KEY= # optional: GitHub Token for tool examples
server/.env
PORT=3500
CLIENT_ORIGIN=http://localhost:3000
MCP_ENDPOINT=http://localhost:4000/mcp
OPENAI_API_KEY=YOUR_OPENAI_API_KEY
Usage
-
Build and start the MCP hub server:
npm run start:hub
-
Start the front-end proxy server:
npm run start:server
-
Open your browser at http://localhost:3000 to access the chat UI.
-
The hub JSON-RPC endpoint is available at
http://localhost:4000/mcp
.
Directory Structure
├── LICENSE
├── package.json # root package config and scripts
├── README.md
├── hub/ # MCP hub server
│ ├── package.json
│ ├── tsconfig.json
│ ├── src/ (TypeScript sources output to dist/)
│ ├── installToolsFeature.ts
│ ├── bridgeBuilder.ts
│ ├── bridgeHttp.ts
│ ├── bridgeStdio.ts
│ └── hub.ts
├── server/ # proxy and front-end assets
│ ├── index.js
│ ├── extractContent.js
│ └── public/
│ ├── index.html
│ ├── css/
│ │ └── styles.css
│ └── js/
│ └── chat.js
└── hub/bridges/ # sample tool definitions
└── hub.yaml
Scripts
All scripts are defined in the root package.json
:
npm run build
: Compile TypeScript inhub
and copy bridge filesnpm run copy:bridges
: Copy bridge YAML definitions tohub/dist
npm run start:hub
: Build then run the MCP hub servernpm run start:server
: Run the Express static server with chat UI
License
- This project is licensed under the Apache License 2.0. See the LICENSE file for details.
Quick Actions
Key Features
Model Context Protocol
Secure Communication
Real-time Updates
Open Source