staticmcp-bridge
v0.0.2
Published
STDIO bridge for StaticMCP files
Readme
StaticMCP STDIO Bridge
A lightweight stdio bridge server that serves StaticMCP files.
How It Works
The StaticMCP Bridge acts as a translation layer between the MCP protocol and your static JSON files:
- Manifest: A
mcp.jsonfile describes available resources and tools - Resources: Static JSON files in the
resources/directory - Tools: Pre-computed tool responses in the
tools/directory structure - Bridge: This server dynamically routes MCP requests to the appropriate JSON files
Learn more about StaticMCP at https://staticmcp.com.
Installation
Rust Version
cargo install staticmcp_stdio_bridgeNode.js Version
npm install -g staticmcp-bridgeBuild from source
git clone https://github.com/StaticMCP/stdio_bridge
cd stdio_bridge
# rust version
cargo build --release
# node.js version
npm run buildQuick Start
1. Generate StaticMCP Content
Use a generator like docusaurus-staticmcp to convert your documentation into StaticMCP format:
npx docusaurus-staticmcp ./my-docusaurus-site --output ./my-staticmcp2. Directory Structure
my-staticmcp/
├── mcp.json # Manifest file
├── resources/
│ ├── docs/getting-started.json
│ └── blog/2024-01-15-welcome.json
└── tools/
└── list_docs/
├── docs.json
├── blog.json
└── all.json3. Run the Bridge
Rust Version
staticmcp_stdio_bridge ./my-staticmcpOr serve from a remote URL:
staticmcp_stdio_bridge https://mysite.com/my-staticmcpNode.js Version
npx staticmcp-bridge ./my-staticmcpOr serve from a remote URL:
npx staticmcp-bridge https://mysite.com/my-staticmcpUsage with MCP Inspector
Test your StaticMCP server using the official MCP Inspector:
npx @modelcontextprotocol/inspector staticmcp_stdio_bridge https://yourdomain.com/your-staticmcp
npx @modelcontextprotocol/inspector npx staticmcp-bridge https://yourdomain.com/your-staticmcpFile Path Conventions
The bridge automatically maps MCP requests to file paths:
Resources
docs://getting-started→resources/getting-started.jsonblog://2024-01-15-welcome→resources/2024-01-15-welcome.jsondocs://docs/getting-started→resources/docs/getting-started.jsonblog://blog/2024-01-15-welcome→resources/blog/2024-01-15-welcome.json
Tools
list_docs(type="docs")→tools/list_docs/docs.jsonlist_docs(type="blog")→tools/list_docs/blog.jsonlist_docs(type="all")→tools/list_docs/all.json
Response Format
Resource Responses
{
"contents": [
{
"uri": "docs://getting-started",
"mimeType": "text/markdown",
"text": "# Getting Started\n..."
}
]
}Tool Responses
{
"content": [
{
"type": "text",
"text": "Tool response text"
}
]
}Deployment Options
You can deploy your StaticMCP files to any static hosting service:
- Vercel
- Netlify
- GitHub Pages
- AWS S3
- CloudFlare CDN
Building StaticMCP Content
Use docusaurus-staticmcp or your own scripts to generate the required files.
Advanced Features
- Error Handling: Returns MCP error responses for missing files
- CORS Support: Handles CORS headers when serving over HTTP
- Caching: All responses are highly cacheable
