Hyper MCP

Un servidor MCP rápido, seguro y extensible que utiliza plugins de WebAssembly.

Documentación

hyper-mcp logo

Rust License Issues - hyper-mcp GitHub Release

tuananh%2Fhyper-mcp | Trendshift

hyper-mcp

⚠️ AVISO: PROYECTO TRANSFERIDO

Este proyecto ha sido transferido a https://github.com/joseph-wortmann/hyper-mcp

Consulte el nuevo repositorio para las últimas actualizaciones y contribuciones.

Un servidor MCP rápido y seguro que amplía sus capacidades mediante plugins de WebAssembly.

¿Qué es?

hyper-mcp facilita la adición de capacidades de IA a sus aplicaciones. Funciona con Claude Desktop, Cursor IDE y otras aplicaciones compatibles con MCP. Escriba plugins en su lenguaje favorito, distribúyalos a través de registros de contenedores y ejecútelos en cualquier lugar, desde la nube hasta el edge.

Características

  • Escriba plugins en cualquier lenguaje que compile a WebAssembly
  • Distribuya plugins mediante registros OCI estándar (como Docker Hub)
  • Construido sobre Extism para un soporte de plugins sólido
  • Aislamiento con WASM: capacidad de limitar el acceso a red, sistema de archivos y memoria
  • Suficientemente ligero para entornos con recursos limitados
  • Soporta los 3 protocolos de la especificación: stdio, sse y streamble-http.
  • Despliegue en cualquier lugar: serverless, edge, móvil, dispositivos IoT
  • Compatibilidad multiplataforma lista para usar
  • Soporte de prefijo de nombre de herramienta para evitar colisiones de nombres

Seguridad

Diseñado con una mentalidad de seguridad primero:

  • Plugins aislados que no pueden acceder a su sistema sin permiso
  • Ejecución segura en memoria con límites de recursos
  • Distribución segura de plugins a través de registros de contenedores
  • Control de acceso granular para funciones del host
  • Las imágenes de plugins OCI se firman al publicarse y se verifican al cargarse con sigstore.

Primeros pasos

  1. Cree su archivo de configuración:
    • Linux: $HOME/.config/hyper-mcp/config.json
    • Windows: {FOLDERID_RoamingAppData}. Ej.: C:\Users\Alice\AppData\Roaming
    • macOS: $HOME/Library/Application Support/hyper-mcp/config.json
{
  "plugins": {
    "time": {
      "url": "oci://ghcr.io/tuananh/time-plugin:latest"
    },
    "qr_code": {
      "url": "oci://ghcr.io/tuananh/qrcode-plugin:latest"
    },
    "hash": {
      "url": "oci://ghcr.io/tuananh/hash-plugin:latest"
    },
    "myip": {
      "url": "oci://ghcr.io/tuananh/myip-plugin:latest",
      "runtime_config": {
        "allowed_hosts": ["1.1.1.1"]
      }
    },
    "fetch": {
      "url": "oci://ghcr.io/tuananh/fetch-plugin:latest",
      "runtime_config": {
        "allowed_hosts": ["*"],
        "memory_limit": "100 MB",
      }
    }
  }
}

📖 Para opciones de configuración detalladas, incluida la configuración de autenticación, configuración de tiempo de ejecución y funciones avanzadas, consulte RUNTIME_CONFIG.md

Esquemas de URL admitidos:

  • oci:// - para registros compatibles con OCI (como Docker Hub, GitHub Container Registry, etc.)
  • file:// - para archivos locales
  • http:// o https:// - para archivos remotos
  • s3:// - para objetos de Amazon S3 (requiere que tenga sus credenciales de AWS configuradas en el entorno)
  1. Inicie el servidor:
$ hyper-mcp
  • De forma predeterminada, usará el transporte stdio. Si desea usar SSE, use la bandera --transport sse o HTTP transmisible con --transport streamable-http.
  • Si desea depurar, use RUST_LOG=info.
  • Si está cargando un plugin OCI sin firmar, debe establecer la bandera insecure_skip_signature o la variable de entorno HYPER_MCP_INSECURE_SKIP_SIGNATURE en true

Uso con Cursor IDE

Puede configurar hyper-mcp globalmente para todos los proyectos o específicamente para proyectos individuales.

  1. Para configuración a nivel de proyecto, cree .cursor/mcp.json en la raíz de su proyecto:
{
  "mcpServers": {
    "hyper-mcp": {
      "command": "/path/to/hyper-mcp"
    }
  }
}
  1. Configure hyper-mcp en la configuración de Cursor: cursor mcp

  2. Comience a usar las herramientas a través del chat: cursor mcp chat

Plugins disponibles

Mantenemos varios plugins de ejemplo para que pueda comenzar:

Plugins V1

Estos plugins usan la interfaz de plugin v1. Aunque aún son compatibles, los nuevos plugins deben usar la interfaz v2.

  • time: Obtener la hora actual y hacer cálculos de tiempo (Rust)
  • qr_code: Generar códigos QR (Rust)
  • hash: Generar varios tipos de hashes (Rust)
  • myip: Obtener su IP actual (Rust)
  • fetch: Obtención básica de páginas web (Rust)
  • crypto_price: Obtener precios de criptomonedas (Go)
  • fs: Operaciones del sistema de archivos (Rust)
  • github: Plugin de GitHub (Go)
  • eval_py: Evaluar código Python con RustPython (Rust)
  • arxiv: Buscar y descargar artículos de arXiv (Rust)
  • memory: Le permite almacenar y recuperar memoria, impulsado por SQLite (Rust)
  • sqlite: Interactuar con SQLite (Rust)
  • crates-io: Obtener información general de crates, verificar la última versión (Rust)
  • gomodule: Obtener información y versión de módulos Go (Rust)
  • qdrant: Almacenar y recuperar memorias en el motor de búsqueda vectorial Qdrant (Rust)
  • gitlab: Plugin de GitLab (Rust)
  • meme_generator: Generador de memes (Rust)
  • context7: Consultar documentación de bibliotecas (Rust)
  • think: Herramienta de pensamiento (Rust)
  • maven: Plugin de Maven (Rust)
  • serper: Plugin de búsqueda web Serper (Rust)

Plugins V2

Estos plugins usan la interfaz de plugin v2. Los nuevos plugins deben usar esta interfaz.

  • rstime: Obtener la hora actual y hacer cálculos de tiempo (Rust)

Plugins creados por la comunidad

  • hackernews: Este plugin se conecta a la API de Hacker News para obtener las historias principales actuales y mostrarlas con sus títulos, puntuaciones, autores y URL.
  • release-monitor-id: Este plugin recupera el ID de proyecto de release-monitoring.org, lo que ayuda a rastrear versiones de software publicado.
  • yahoo-finance: Este plugin se conecta a la API de Yahoo Finance para proporcionar precios de acciones (OHLCV) según el nombre de la empresa o el símbolo de cotización.
  • rand16: Este plugin genera un búfer aleatorio de 16 bytes y lo proporciona en formato base64uri, muy útil para criptografía simétrica en línea.

Documentación

  • Guía de configuración de tiempo de ejecución - Guía completa de opciones de configuración que incluye:
    • Configuración de autenticación (Basic, Token y Keyring)
    • Configuración de tiempo de ejecución de plugins
    • Consideraciones de seguridad y mejores prácticas
    • Configuración de keyring específica de plataforma para macOS, Linux y Windows
    • Solución de problemas de autenticación
  • Guía de patrón de herramientas omitidas - Guía completa para filtrar herramientas usando patrones regex:
    • Sintaxis y ejemplos de patrones
    • Casos de uso comunes y mejores prácticas
    • Estrategias de filtrado específicas del entorno
    • Técnicas avanzadas de regex
    • Migración y solución de problemas

Creación de plugins

Para instrucciones completas sobre cómo crear plugins, consulte CREATING_PLUGINS.md.

Licencia

Apache 2.0

Historial de estrellas

Star History Chart