hyper-mcp-rs

hyper mcp

Built by hyper-mcp-rs 872 stars

What is hyper mcp?

📦️ A fast, secure MCP server that extends its capabilities through WebAssembly plugins.

How to use hyper mcp?

1. Install a compatible MCP client (like Claude Desktop). 2. Open your configuration settings. 3. Add hyper mcp using the following command: npx @modelcontextprotocol/hyper-mcp 4. Restart the client and verify the new tools are active.
🛡️ Scoped (Restricted)
npx @modelcontextprotocol/hyper-mcp --scope restricted
🔓 Unrestricted Access
npx @modelcontextprotocol/hyper-mcp

Key Features

Native MCP Protocol Support
Real-time Tool Activation & Execution
Verified High-performance Implementation
Secure Resource & Context Handling

Optimized Use Cases

Extending AI models with custom local capabilities
Automating system workflows via natural language
Connecting external data sources to LLM context windows

hyper mcp FAQ

Q

Is hyper mcp safe?

Yes, hyper mcp follows the standardized Model Context Protocol security patterns and only executes tools with explicit user-granted permissions.

Q

Is hyper mcp up to date?

hyper mcp is currently active in the registry with 872 stars on GitHub, indicating its reliability and community support.

Q

Are there any limits for hyper mcp?

Usage limits depend on the specific implementation of the MCP server and your system resources. Refer to the official documentation below for technical details.

Official Documentation

View on GitHub
<div align="center"> <picture> <img alt="hyper-mcp logo" src="./assets/logo.png" width="50%"> </picture> </div> <div align="center">

Rust License Issues - hyper-mcp GitHub Release

<a href="https://trendshift.io/repositories/13451" target="_blank"><img src="https://trendshift.io/api/badge/repositories/13451" alt="hyper-mcp-rs%2Fhyper-mcp | Trendshift" style="width: 250px; height: 55px;" width="250" height="55"/></a>

</div>

hyper-mcp

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 stdio transport 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:

  • 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.

Getting Started

  1. 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
{
  "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
  • file:// - for local files
  • http:// or https:// - for remote files
  • s3:// - for Amazon S3 objects (requires that you have your AWS credentials set up in the environment)
  1. Start the server:
$ hyper-mcp
  • Uses stdio transport protocol.
  • If you want to debug, use RUST_LOG=debug.
  • If you're loading unsigned OCI plugin, you need to set insecure_skip_signature flag or env var HYPER_MCP_INSECURE_SKIP_SIGNATURE to true

Running in SSE/streamable-http: To do this, wrap hyper-mcp in one of the many proxies that supports the network transports AND that creates an instance of hyper-mcp per 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.

  1. For project-scope configuration, create .cursor/mcp.json in your project root:
{
  "mcpServers": {
    "hyper-mcp": {
      "command": "/path/to/hyper-mcp"
    }
  }
}
  1. Set up hyper-mcp in Cursor's settings: cursor mcp

  2. Start using tools through chat: cursor mcp chat

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)
  • arxiv: Search & download arXiv papers (Rust)
  • memory: Let you store & retrieve memory, powered by SQLite (Rust)
  • sqlite: Interact with 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.

  • 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)

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 plugins
    • hyper_mcp-load_plugin — dynamically load a plugin at runtime
    • hyper_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

Apache 2.0

Star History

Star History Chart

Global Ranking

-
Trust ScoreMCPHub Index

Based on codebase health & activity.

Manual Config

{ "mcpServers": { "hyper-mcp": { "command": "npx", "args": ["hyper-mcp"] } } }