Hyper MCP

Um servidor MCP rápido, seguro e extensível usando plugins WebAssembly.

Documentação

hyper-mcp logo

Rust License Issues - hyper-mcp GitHub Release

tuananh%2Fhyper-mcp | Trendshift

hyper-mcp

⚠️ AVISO: PROJETO TRANSFERIDO

Este projeto foi transferido para https://github.com/joseph-wortmann/hyper-mcp

Por favor, consulte o novo repositório para as atualizações mais recentes e contribuições.

Um servidor MCP rápido e seguro que estende suas capacidades por meio de plugins WebAssembly.

O que é?

O hyper-mcp facilita a adição de capacidades de IA às suas aplicações. Ele funciona com Claude Desktop, Cursor IDE e outros aplicativos compatíveis com MCP. Escreva plugins no seu idioma favorito, distribua-os por meio de registros de contêineres e execute-os em qualquer lugar - da nuvem à borda.

Recursos

  • Escreva plugins em qualquer idioma que compile para WebAssembly
  • Distribua plugins via registros OCI padrão (como Docker Hub)
  • Construído sobre Extism para suporte sólido a plugins
  • Sandboxing com WASM: capacidade de limitar rede, sistema de arquivos, acesso à memória
  • Leve o suficiente para ambientes com recursos limitados
  • Suporta todos os 3 protocolos na especificação: stdio, sse e streamble-http.
  • Implante em qualquer lugar: serverless, edge, mobile, dispositivos IoT
  • Compatibilidade multiplataforma pronta para uso
  • Suporte a prefixo de nome de ferramenta para evitar colisão de nomes de ferramentas

Segurança

Construído com mentalidade de segurança em primeiro lugar:

  • Plugins em sandbox que não podem acessar seu sistema sem permissão
  • Execução segura de memória com limites de recursos
  • Distribuição segura de plugins por meio de registros de contêineres
  • Controle de acesso refinado para funções do host
  • Imagens de plugins OCI são assinadas no momento da publicação e verificadas no momento do carregamento com sigstore.

Começando

  1. Crie seu arquivo de configuração:
    • Linux: $HOME/.config/hyper-mcp/config.json
    • Windows: {FOLDERID_RoamingAppData}. Ex.: 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 opções de configuração detalhadas, incluindo configuração de autenticação, configuração de tempo de execução e recursos avançados, consulte RUNTIME_CONFIG.md

Esquemas de URL suportados:

  • oci:// - para registros compatíveis com OCI (como Docker Hub, GitHub Container Registry, etc.)
  • file:// - para arquivos locais
  • http:// ou https:// - para arquivos remotos
  • s3:// - para objetos Amazon S3 (requer que você tenha suas credenciais AWS configuradas no ambiente)
  1. Inicie o servidor:
$ hyper-mcp
  • Por padrão, ele usará o transporte stdio. Se você quiser usar SSE, use a flag --transport sse ou HTTP streamable com --transport streamable-http.
  • Se você quiser depurar, use RUST_LOG=info.
  • Se você estiver carregando um plugin OCI não assinado, você precisa definir a flag insecure_skip_signature ou a variável de ambiente HYPER_MCP_INSECURE_SKIP_SIGNATURE para true

Usando com Cursor IDE

Você pode configurar o hyper-mcp globalmente para todos os projetos ou especificamente para projetos individuais.

  1. Para configuração no escopo do projeto, crie .cursor/mcp.json na raiz do seu projeto:
{
  "mcpServers": {
    "hyper-mcp": {
      "command": "/path/to/hyper-mcp"
    }
  }
}
  1. Configure o hyper-mcp nas configurações do Cursor: cursor mcp

  2. Comece a usar as ferramentas por meio do chat: cursor mcp chat

Plugins Disponíveis

Mantemos vários plugins de exemplo para você começar:

Plugins V1

Esses plugins usam a interface de plugin v1. Embora ainda sejam suportados, novos plugins devem usar a interface v2.

  • time: Obtenha a hora atual e faça cálculos de tempo (Rust)
  • qr_code: Gere códigos QR (Rust)
  • hash: Gere vários tipos de hashes (Rust)
  • myip: Obtenha seu IP atual (Rust)
  • fetch: Busca básica de páginas da web (Rust)
  • crypto_price: Obtenha preços de criptomoedas (Go)
  • fs: Operações de sistema de arquivos (Rust)
  • github: Plugin GitHub (Go)
  • eval_py: Avalie código Python com RustPython (Rust)
  • arxiv: Pesquise e baixe artigos do arXiv (Rust)
  • memory: Permite armazenar e recuperar memória, alimentado por SQLite (Rust)
  • sqlite: Interaja com SQLite (Rust)
  • crates-io: Obtenha informações gerais de crate, verifique a versão mais recente do crate (Rust)
  • gomodule: Obtenha informações de módulos Go, versão (Rust)
  • qdrant: Armazenar e recuperar memórias no mecanismo de busca vetorial Qdrant (Rust)
  • gitlab: Plugin GitLab (Rust)
  • meme_generator: Gerador de memes (Rust)
  • context7: Consulte documentação de bibliotecas (Rust)
  • think: Ferramenta de pensar (Rust)
  • maven: Plugin Maven (Rust)
  • serper: Plugin de busca web Serper (Rust)

Plugins V2

Esses plugins usam a interface de plugin v2. Novos plugins devem usar esta interface.

  • rstime: Obtenha a hora atual e faça cálculos de tempo (Rust)

Plugins da comunidade

  • hackernews: Este plugin se conecta à API do Hacker News para buscar as principais histórias atuais e exibi-las com seus títulos, pontuações, autores e URLs.
  • release-monitor-id: Este plugin recupera o ID do projeto de release-monitoring.org, o que ajuda a rastrear versões de software lançado.
  • yahoo-finance: Este plugin se conecta à API do Yahoo Finance para fornecer preços de ações (OHLCV) com base no nome da empresa ou símbolo de ticker.
  • rand16: Este plugin gera um buffer aleatório de 16 bytes e o fornece em formato base64uri - muito útil para criptografia simétrica online.

Documentação

  • Guia de Configuração de Tempo de Execução - Guia abrangente de opções de configuração, incluindo:
    • Configuração de autenticação (Basic, Token e Keyring)
    • Configuração de tempo de execução de plugins
    • Considerações de segurança e melhores práticas
    • Configuração de keyring específica da plataforma para macOS, Linux e Windows
    • Solução de problemas de autenticação
  • Guia de Padrões de Ferramentas de Pular - Guia abrangente para filtrar ferramentas usando padrões regex:
    • Sintaxe de padrões e exemplos
    • Casos de uso comuns e melhores práticas
    • Estratégias de filtragem específicas do ambiente
    • Técnicas avançadas de regex
    • Migração e solução de problemas

Criando Plugins

Para instruções abrangentes sobre como criar plugins, consulte CREATING_PLUGINS.md.

Licença

Apache 2.0

Histórico de Estrelas

Star History Chart