A fast, secure MCP server that extends its capabilities through WebAssembly plugins.
hyper-mcp makes it easy to add AI capabilities to your applications. It works with Claude Desktop, Cursor IDE, and other MCP-compatible apps. Write plugins in your favorite language, distribute them through container registries, and run them anywhere - from cloud to edge.
- Write plugins in any language that compiles to WebAssembly
- Distribute plugins via standard OCI registries (like Docker Hub)
- Built on Extism for rock-solid plugin support
- Lightweight enough for resource-constrained environments
- Deploy anywhere: serverless, edge, mobile, IoT devices
- Cross-platform compatibility out of the box
Built with security-first mindset:
- Sandboxed plugins that can't access your system without permission
- Memory-safe execution with resource limits
- Secure plugin distribution through container registries
- Fine-grained access control for host functions
- Create your config file:
- Linux:
$HOME/.config/hyper-mcp/config.json
- Windows:
{FOLDERID_RoamingAppData}
. Eg:C:\Users\Alice\AppData\Roaming
- macOS:
$HOME/Library/Application Support/hyper-mcp/config.json
- Linux:
{
"plugins": [
{
"name": "time",
"path": "oci://ghcr.io/tuananh/time-plugin:latest"
},
{
"name": "qr-code",
"path": "oci://ghcr.io/tuananh/qrcode-plugin:latest"
},
{
"name": "hash",
"path": "oci://ghcr.io/tuananh/hash-plugin:latest"
},
{
"name": "myip",
"path": "oci://ghcr.io/tuananh/myip-plugin:latest",
"runtime_config": {
"allowed_host": "1.1.1.1"
}
},
{
"name": "fetch",
"path": "oci://ghcr.io/tuananh/fetch-plugin:latest",
"runtime_config": {
"allowed_host": "*"
}
}
]
}
- Start the server:
$ hyper-mcp
We maintain several example plugins to get you started:
- time: Get current time and do time calculations
- qr-code: Generate QR codes
- hash: Generate various types of hashes
- myip: Get your current IP (example of HTTP requests)
- fetch: Basic webpage fetching
- crypto-price: Get cryptocurrency prices (Go example)
- fs: File system operations
Check out our example plugins to learn how to build your own.
To publish a plugin:
# example how to build with rust
FROM rust:1.85-slim AS builder
RUN rustup target add wasm32-wasip1 && \
rustup component add rust-std --target wasm32-wasip1
WORKDIR /workspace
COPY . .
RUN cargo fetch
RUN cargo build --release --target wasm32-wasip1
# copy wasm to final image
FROM scratch
WORKDIR /
COPY --from=builder /workspace/target/wasm32-wasip1/release/your-plugin.wasm /plugin.wasm
Then build and push:
docker build -t your-registry/plugin-name .
docker push your-registry/plugin-name