hyper-mcp
App Listed
๐ฆ๏ธ A fast, secure MCP server that extends its capabilities through WebAssembly plugins.
- Downloads
- 90
- Dependents
- Not applicable
- Stars
- 881
- Forks
- 66
- Contributors
- 13
- Commits
- 669
- Latest release
- 0.8.3 ยท
About

A fast, secure MCP server that extends its capabilities through WebAssembly plugins.
What is it?
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.
Features
- 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
- Sanboxing with WASM: ability to limit network, filesystem, memory access
- Lightweight enough for resource-constrained environments
- Support
stdiotransport protocol - Deploy anywhere: serverless, edge, mobile, IoT devices
- Cross-platform compatibility out of the box
- Support tool name prefix to prevent tool names collision
- Dynamic plugin loading and unloading (configurable)
Security
Built with security-first mindset:
Read the full README
- 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
- OCI plugin images are signed at publish time and verified at load time with sigstore.
Installation
Prerequisites
cosign โ required for loading plugins from OCI registries (oci:// URLs).
hyper-mcp verifies the cryptographic signature of every OCI plugin before loading it to ensure the plugin has not been tampered with and comes from a trusted source. This verification is performed by shelling out to the cosign CLI, which must be installed and available on your PATH.
Install cosign by following the official instructions: https://docs.sigstore.dev/cosign/system_config/installation/
Note: If you only use
file://,http://,https://, ors3://plugin URLs, cosign is not needed. You can also bypass signature verification for OCI plugins by settinginsecure_skip_signature: truein your config or theHYPER_MCP_INSECURE_SKIP_SIGNATURE=trueenvironment variable, but this is not recommended for production use.
Install from Homebrew
hyper-mcp is published on Homebrew for macOS and Linux in two places:
Homebrew core โ no tap setup required:
brew install hyper-mcp
Our own tap (hyper-mcp-rs/tap) โ bumped automatically on every GitHub Release, so it picks up new versions immediately:
brew install hyper-mcp-rs/tap/hyper-mcp
Both install the same binary. Prefer the core formula unless you want the absolute latest release the moment it ships.
Pre-built binaries (GitHub Releases)
Download the latest release for your platform from GitHub Releases:
Chose the version that you want and download the architecture-specific binary.
| Platform | Architecture | Download |
|---|---|---|
| macOS | Apple Silicon (ARM64) | hyper-mcp-aarch64-apple-darwin.tar.gz |
| Linux | ARM64 | hyper-mcp-aarch64-unknown-linux-gnu.tar.gz |
| Linux | x86_64 | hyper-mcp-x86_64-unknown-linux-gnu.tar.gz |
| Windows | x86_64 | hyper-mcp-x86_64-pc-windows-msvc.zip |
macOS / Linux:
Donwload the .tar.gz file, extract it, and place hyper-mcp in /usr/local/bin.
Windows:
Download the .zip file, extract it, and place hyper-mcp.exe somewhere on your PATH.
Install from crates.io
If you have Rust installed, you can install hyper-mcp directly from crates.io:
cargo install hyper-mcp
Getting Started
- Create your config file:
- Linux:
$HOME/.config/hyper-mcp/config.json - Windows:
{FOLDERID_RoamingAppData}\hyper-mcp\config.json. Eg:C:\Users\Alice\AppData\Roaming\hyper-mcp\config.json - macOS:
$HOME/Library/Application Support/hyper-mcp/config.json
- Linux:
{
"plugins": {
"time": {
"url": "oci://ghcr.io/hyper-mcp-rs/time-plugin:latest",
"description": "Get current time and do time calculations"
},
"qr_code": {
"url": "oci://ghcr.io/hyper-mcp-rs/qrcode-plugin:latest",
"description": "Generate QR codes from text"
},
"hash": {
"url": "oci://ghcr.io/hyper-mcp-rs/hash-plugin:latest"
},
"myip": {
"url": "oci://ghcr.io/hyper-mcp-rs/myip-plugin:latest",
"description": "Get your current public IP address",
"runtime_config": {
"allowed_hosts": ["1.1.1.1"]
}
},
"fetch": {
"url": "oci://ghcr.io/hyper-mcp-rs/fetch-plugin:latest",
"runtime_config": {
"allowed_hosts": ["*"],
"memory_limit": "100 MB",
}
}
}
}
๐ For detailed configuration options including authentication setup, runtime configuration, and advanced features, see RUNTIME_CONFIG.md
Supported URL schemes:
oci://- for OCI-compliant registries (like Docker Hub, GitHub Container Registry, etc.). Requires cosign for signature verification (see Prerequisites)file://- for local fileshttp://orhttps://- for remote filess3://- for Amazon S3 objects (requires that you have your AWS credentials set up in the environment)
- Start the server:
$ hyper-mcp
- Uses
stdiotransport protocol. - If you want to debug, use
RUST_LOG=debug. - If you're loading unsigned OCI plugin, you need to set
insecure_skip_signatureflag or env varHYPER_MCP_INSECURE_SKIP_SIGNATUREtotrue
Running in SSE/streamable-http: To do this, wrap
hyper-mcpin one of the many proxies that supports the network transports AND that creates an instance ofhyper-mcpper client connection.
Output Logging
hyper-mcp automatically logs all output to daily rolling log files for debugging and monitoring purposes.
Log Location:
- Linux:
$HOME/.config/hyper-mcp/logs/mcp-server.log - Windows:
{FOLDERID_RoamingAppData}\hyper-mcp\logs\mcp-server.log - macOS:
$HOME/Library/Application Support/hyper-mcp/logs/mcp-server.log
Custom Log Path:
You can override the default log directory by setting the HYPER_MCP_LOG_PATH environment variable:
export HYPER_MCP_LOG_PATH=/path/to/your/logs
hyper-mcp
Log Levels:
Control the verbosity of logs using the RUST_LOG environment variable:
# Info level (default)
RUST_LOG=info hyper-mcp
# Debug level (verbose, useful for troubleshooting)
RUST_LOG=debug hyper-mcp
# Warn level (only warnings and errors)
RUST_LOG=warn hyper-mcp
Features:
- Daily log rotation (new file created each day)
- Non-blocking writes to prevent performance impact
- Includes timestamps, line numbers, and target information
- Safe for use with stdio transport (logs don't interfere with MCP communication)
Using with Cursor IDE
You can configure hyper-mcp either globally for all projects or specifically for individual projects.
- For project-scope configuration, create
.cursor/mcp.jsonin your project root:
{
"mcpServers": {
"hyper-mcp": {
"command": "/path/to/hyper-mcp"
}
}
}
Set up hyper-mcp in Cursor's settings:

Start using tools through chat:

Using with Claude Desktop
Every GitHub Release ships an MCP Bundle (.mcpb) for each platform alongside the raw binaries:
| Platform | Bundle |
|---|---|
| macOS (Apple Silicon) | hyper-mcp-aarch64-apple-darwin.mcpb |
| Linux (x86_64) | hyper-mcp-x86_64-unknown-linux-gnu.mcpb |
| Linux (ARM64) | hyper-mcp-aarch64-unknown-linux-gnu.mcpb |
| Windows (x86_64) | hyper-mcp-x86_64-pc-windows-msvc.mcpb |
Download the bundle for your platform and double-click it (or drag it into Claude Desktop) to get a one-click install dialog. Claude Desktop will prompt you for:
- Plugin config file โ path to your
config.json/config.yamllisting the WASM plugins to load (see Getting Started andconfig.example.json). - Enable dynamic plugin loading (optional).
- Skip OCI signature verification (optional, not recommended).
The bundle contains only the
hyper-mcpbinary. Loadingoci://plugins still requires cosign on yourPATHunless you enable "Skip OCI signature verification".
The bundle manifest lives in mcpb/manifest.json and is packed per-platform by the release workflow.
Using with Claude Code
The quickest way is a direct add (requires hyper-mcp already installed via Homebrew/cargo):
claude mcp add hyper-mcp -- hyper-mcp --config-file /path/to/config.json
Or install it from our plugin marketplace:
/plugin marketplace add hyper-mcp-rs/hyper-mcp
/plugin install hyper-mcp@hyper-mcp-rs
/reload-plugins
The marketplace catalog (.claude-plugin/marketplace.json) and plugin (plugins/hyper-mcp) live in this repo. See the plugin README for prerequisites and configuration.
Available Plugins
We maintain several plugins to get you started:
V1 Plugins
These plugins use the v1 plugin interface. While still supported, new plugins should use the v2 interface.
- time: Get current time and do time calculations (Rust)
- qr_code: Generate QR codes (Rust)
- hash: Generate various types of hashes (Rust)
- myip: Get your current IP (Rust)
- crypto_price: Get cryptocurrency prices (Go)
- fs: File system operations (Rust)
- github: GitHub plugin (Go)
- eval_py: Evaluate Python code with RustPython (Rust)
- memory: Let you store & retrieve memory, powered by SQLite (Rust)
- crates-io: Get crate general information, check crate latest version (Rust)
- gomodule: Get Go modules info, version (Rust)
- qdrant: keeping & retrieving memories to Qdrant vector search engine (Rust)
- gitlab: GitLab plugin (Rust)
- meme_generator: Meme generator (Rust)
- think: Think tool(Rust)
- maven: Maven plugin (Rust)
- serper: Serper web search plugin (Rust)
V2 Plugins
These plugins use the v2 plugin interface. New plugins should use this interface.
- arxiv: Search arXiv papers (Rust)
- context7: Lookup library documentation (Rust)
- defuddle: Get the main content of any page as Markdown (Rust)
- fetch: Basic webpage fetching (Rust)
- monty: A minimal, secure Python interpreter written in Rust for use by AI (Rust)
- rstime: Get current time and do time calculations (Rust)
- sqlite: Interact with SQLite (Rust)
Community-built plugins
- hackernews: This plugin connects to the Hacker News API to fetch the current top stories and display them with their titles, scores, authors, and URLs.
- release-monitor-id: This plugin retrieves project ID from release-monitoring.org, which helps track versions of released software.
- yahoo-finance: This plugin connects to the Yahoo Finance API to provide stock prices (OHLCV) based on a company name or ticker symbol.
- rand16: This plugen generates random 16 bytes buffer and provides it in base64uri format - very usable for symmetric cryptography online.
Documentation
- Built-in Tools Reference - Documentation for the
hyper_mcp-*tools including:hyper_mcp-list_pluginsโ list all loaded pluginshyper_mcp-load_pluginโ dynamically load a plugin at runtimehyper_mcp-unload_pluginโ dynamically unload a plugin at runtime
- Runtime Configuration Guide - Comprehensive guide to configuration options including:
- Authentication setup (Basic, Token, and Keyring)
- Plugin runtime configuration
- Security considerations and best practices
- Platform-specific keyring setup for macOS, Linux, and Windows
- Troubleshooting authentication issues
- Skip Tools Pattern Guide - Comprehensive guide to filtering tools using regex patterns:
- Pattern syntax and examples
- Common use cases and best practices
- Environment-specific filtering strategies
- Advanced regex techniques
- Migration and troubleshooting
Creating Plugins
For comprehensive instructions on creating plugins, see CREATING_PLUGINS.md.
For ready-to-use plugin templates in Rust and Go, see TEMPLATES.md.
License
Star History
Compatibility
- Runs on
- GPU support unknown
What shows it
- no dependency or feature matches a backend row
- Native code
- None found
- No native code found
- Python bindings
- No Python binding crate found
- License
- Apache-2.0
Compare with similar projects
Order: strongest tier first, then most downloads, then name, with unmeasured values last. A library counts downloads over 30 days. An app counts binary downloads per release. An app with none counts its crate downloads over 30 days. ML Rust runs this catalogue, so its closest project always gets a row.
| Project | Downloads | Dependents | Stars | Latest release | Runs on (GPU) | Native code | License |
|---|---|---|---|---|---|---|---|
|
๐ฆ๏ธ A fast, secure MCP server that extends its capabilities through WebAssembly plugins. |
90 binary downloads per release | Not applicable | 881 | 0.8.3 | GPU support unknown | No native code found | Apache-2.0 |
|
an open source, extensible AI agent that goes beyond code suggestions - install, execute, edit, and test with any LLM |
63,795 binary downloads per release | Not applicable | 56,377 | Not measured | Not measured | Apache-2.0 | |
|
rust-mcp-sdk Featured
An asynchronous SDK and framework for building MCP-Servers and MCP-Clients, leveraging the rust-mcp-schema for type safe MCP Schema Objects. |
29,764 downloads over 30 days | 51 | 199 | 2.0.0 | GPU support unknown | No native code found | MIT |
|
tokio-prompt-orchestrator Listed
Put a queue, deduplication and a circuit breaker in front of any LLM API, so repeated prompts cost one call and outages fail fast. Rust library, HTTP server and CLI. |
68 downloads over 30 days | 0 | 60 | 2.0.5 | GPU support unknown | No native code found | MIT |
|
Cut AI context cost without trusting the compressor. Every reduction is reversible, byte-exact recoverable, and carries an auditable receipt. Local-first, works through proxy, MCP, SDK, or agent wrapper. |
18 binary downloads per release | Not applicable | 483 | Not measured | Not measured | Apache-2.0 | |
|
An open protocol that gives AI agents a secure, sandboxed place to run code and use tools โ with lean context usage. AXP works alongside MCP |
Not measured | Not applicable | 3 | Not measured | Not measured | Not measured | Apache-2.0 |
Why ListedNo archive, New or Featured rule places it, so it is Listed.
What it lacks for Featured
- The check holds no value for Repology repository families, Docker pull growth over 90 days. A gate that lacks its signal does not pass.
What else the check found
- The last activity is on 8 Nov 2026, 1 day ago. The rules expect an update within 365 days. Dormancy rule
Not measured: Repology repository families, Docker pull growth over 90 days.
Exact rules: Listed, Featured app. The check on applied thresholds version 9.
Every rule outcome, as the check records it
expected-interval: app: E = 365 daysdormancy: last activity 2026-11-08, 1 days ago, E = 365: activefeatured: not featured: unknown repology_families, docker_pull_growth_90dlisted: listed: no archive, new or featured rule applies
Measurements and sources
Each signal row shows the raw value, its source and the fetch date. The Sources list gathers every distinct source on this page. Movement needs more history.
Sources7 sources
- Description: the GitHub repository description
- crates.io database dump, fetched
- GitHub releases, fetched
- GitHub repository, fetched
- crates.io package, fetched
- Homebrew formula, fetched
- GitHub contributors, fetched
Adoption90 binary downloads per release4 not measured
| Signal | Value | Source | Fetched | Counts |
|---|---|---|---|---|
| Active dependents | Not measured | Yes | ||
| New dependents (365 days) | Not measured | Yes | ||
| Peak active dependents | Not measured | Yes | ||
| Active dependents as a share of the peak | Not measured | Yes | ||
| Binary downloads per release | 90 | GitHub releases | Yes |
MaintenanceLatest human commit: 4 months ago4 not measured
| Signal | Value | Source | Fetched | Counts |
|---|---|---|---|---|
| Latest human commit | 2026-07-07 | GitHub repository | Yes | |
| Latest release | 2026-11-08 | GitHub releases | Yes | |
| First release | 2025-04-06 | crates.io database dump | Yes | |
| Latest version | 0.8.3 | crates.io database dump | No | |
| Days the oldest outside issue waits for a reply | 85 | GitHub repository | Yes | |
| Maintainer replies over 365 days | 26 | GitHub repository | Yes | |
| Repository archived | false | GitHub repository | Yes | |
| Repository gone | false | GitHub repository | Yes | |
| Release commit or manifest in the repo | true | crates.io package | No | |
| Published docs | Not measured | Yes | ||
| Latest release fails cargo check | Not measured | Yes | ||
| Build check date | Not measured | Yes | ||
| Build check toolchain | Not measured | Yes |
SecurityNot measured
| Signal | Value | Source | Fetched | Counts |
|---|---|---|---|---|
| Unpatched vulnerabilities past the grace window | Not measured | Yes | ||
| RustSec unmaintained advisory | Not measured | Yes | ||
| Deprecation notice | Not measured | Yes | ||
| Deprecated requirement | Not measured | Yes |
Distribution32 releases, 6 downloads over 30 days5 not measured
| Signal | Value | Source | Fetched | Counts |
|---|---|---|---|---|
| Releases | 32 | crates.io database dump | No | |
| Downloads over 30 days | 6 | crates.io database dump | No | |
| Binary downloads over the last 3 releases | 272 | GitHub releases | Yes | |
| Homebrew installs on request over 365 days | 388 | Homebrew formula | Yes | |
| Repology repository families | Not measured | Yes | ||
| Docker pull growth over 90 days | Not measured | Yes | ||
| Docker pulls at the growth baseline | Not measured | Yes | ||
| Every version a prerelease | false | crates.io database dump | Yes | |
| Every version 0.0.x | false | crates.io database dump | Yes | |
| Every version yanked | Not measured | Yes | ||
| Crate deleted from crates.io | Not measured | Yes |
Repository881 stars, 66 forks, 13 contributors, 669 commits. Stars alone never qualify a project.
| Signal | Value | Source | Fetched | Counts |
|---|---|---|---|---|
| GitHub stars | 881 | GitHub repository | Yes โ one part of the repository route | |
| GitHub forks | 66 | GitHub repository | Yes โ one part of the repository route | |
| Contributors with a GitHub account | 13 | GitHub contributors | Yes โ one part of the repository route | |
| Commits on the default branch | 669 | GitHub repository | No | |
| Repository's main crate left out of the entry | none | crates.io database dump | Yes |
Facts that never count
| Signal | Value | Source | Fetched | Counts |
|---|---|---|---|---|
| License | Apache-2.0 | crates.io database dump | No | |
| Runs on, from listed crates and their direct dependencies | GPU support unknown | crates.io database dump | No | |
| What shows each backend | no dependency or feature matches a backend row | crates.io database dump | No | |
| Native code, from listed crates and their dependencies | No native code found | crates.io database dump | No | |
| Python bindings, from direct dependencies of listed crates | No Python binding crate found | crates.io database dump | No | |
| Crates that depend on a listed crate directly | Not measured | No |
Corrections and review history
No correction applies to this entry.
Judgments
A judgment enters only through an approved issue and a merged pull request.
No judgment applies to this entry.