Squads MCP

Uma implementação MCP segura para gerenciamento de multisig Squads na blockchain Solana.

Documentação

Squads MCP: Gerenciamento Seguro de Multisig para Solana

Squads MCP

npm version npm downloads Verified on MseeP

Uma implementação segura do Model Context Protocol (MCP) para gerenciamento de multisig Squads na blockchain Solana. Este kit de ferramentas prioriza a segurança em cada etapa, permitindo que LLMs interajam com segurança com contas multisig.

🔐 Design com Segurança em Primeiro Lugar

O Squads MCP implementa múltiplas camadas de segurança para proteger seus ativos e operações multisig:

  • Armazenamento Local de Chaves Privadas: As chaves nunca saem do seu dispositivo, ao contrário de carteiras web ou extensões de navegador
  • Separação de Permissões: Papéis distintos de INICIAR, EXECUTAR e VOTAR evitam comprometimento por ponto único
  • Suporte a Time Lock: Configure períodos de espera obrigatórios antes que transações sensíveis sejam executadas
  • Auditoria de Segurança Abrangente: A ferramenta AUDIT_MULTISIG_SECURITY integrada pontua sua configuração
  • Esquemas Focados em Segurança: Cada ferramenta inclui avisos de segurança explícitos e etapas de verificação
  • Recomendações de Limite: Padrões inteligentes para diferentes tipos de multisig (Reserva, Operações, etc.)
  • Gerenciamento Seguro de Conexões: Alterne facilmente entre redes para testes e produção

📋 Recursos

Gerenciamento de Multisig

  • Crie novas contas multisig com permissões personalizáveis
  • Importe contas multisig existentes
  • Audite a segurança do multisig com recomendações detalhadas
  • Configure limites, permissões e time locks

Manipulação de Transações

  • Crie e gerencie propostas
  • Vote em propostas (aprovar/rejeitar)
  • Execute transações aprovadas
  • Cancele propostas pendentes

Gerenciamento de Ativos

  • Visualize saldos de SOL e tokens em cofres
  • Transfira SOL de cofres
  • Financie cofres

🛡️ Melhores Práticas de Segurança

A implementação promove as melhores práticas de segurança do Squads:

  1. Separação de Funções:

    • Mantenha os papéis de INICIAR e EXECUTAR separados
    • Evite dar permissões de TODOS os tipos a qualquer membro
  2. Limites Adequados:

    • Para multisigs de Reserva: 6+ membros, limite de 4+
    • Para multisigs de Atualização de Programa: 6+ membros, limite de 4+
    • Para multisigs de Operações: 3+ membros, limite de 2+
  3. Time Locks:

    • Reserva: 3600+ segundos (1 hora)
    • Atualização de Programa: 600+ segundos (10 minutos)
    • Operações: 300+ segundos (5 minutos)

🔧 Como Funciona

Este projeto utiliza o Model Context Protocol (MCP) para permitir interação segura entre LLMs e a funcionalidade multisig do Squads. O MCP fornece uma maneira padronizada para modelos de IA usarem ferramentas externas, mantendo segurança e contexto.

┌─────────┐    ┌──────────────┐    ┌────────────┘    ┌────────┐
│   LLM   │<-->│ MCP Protocol │<-->│ Squads MCP │<-->│ Solana │
└─────────┘    └──────────────┘    └────────────┘    └────────┘

🚀 Começando

Pré-requisitos

  • Node.js v16+
  • Ferramentas CLI do Solana (opcional)
  • Uma carteira Solana (preferencialmente uma carteira de hardware para uso em produção)

Instalação

Opção 1: Via NPM (Recomendado)

# Using npm
npm install squads-mcp

# Using yarn
yarn add squads-mcp

# Using pnpm
pnpm add squads-mcp

Opção 2: A partir do Código-Fonte

git clone https://github.com/dorkydhruv/squads-mcp.git
cd squads-mcp
pnpm install
pnpm build

Configuração para claude_desktop_config.json

{
  "mcpServers": {
    "squads-mcp": {
      "command": "node",
      "args": [
        "node_modules/squads-mcp/dist/index.js" // If installed from npm
        // OR use "/ABSOLUTE/PATH/TO/YOUR/MCP/PROJECT/FILE" if built from source
      ]
    }
  }
}

📚 Ferramentas Disponíveis

Ferramentas de Configuração

  • CONNECTION_UPDATE: Definir conexão Solana
  • SHOW_CONFIG: Exibir configuração atual

Ferramentas de Multisig Squads

  • CREATE_SQUADS_MULTISIG: Criar um novo multisig
  • IMPORT_SQUADS_MULTISIG: Importar multisig existente
  • GET_MULTISIG_ACCOUNT: Visualizar detalhes do multisig
  • AUDIT_MULTISIG_SECURITY: Auditoria de segurança com recomendações

Gerenciamento de Propostas

  • CREATE_PROPOSAL: Criar uma nova proposta
  • APPROVE_PROPOSAL: Votar para aprovar uma proposta
  • REJECT_PROPOSAL: Votar para rejeitar uma proposta
  • CANCEL_PROPOSAL: Cancelar uma proposta pendente
  • GET_PROPOSAL: Visualizar uma proposta específica
  • GET_PROPOSALS: Listar todas as propostas

Execução de Transações

  • EXECUTE_CONFIG_TRANSACTION: Executar alterações de configuração
  • EXECUTE_VAULT_TRANSACTION: Executar transações de cofre

Gerenciamento de Ativos

  • GET_ASSETS: Visualizar ativos em um cofre multisig
  • FUND_VAULT: Enviar SOL para um cofre
  • TRANSFER_SOL_FROM_VAULT: Enviar SOL de um cofre

🛠️ Ferramenta de Auditoria de Segurança: Análise Técnica Detalhada

A ferramenta AUDIT_MULTISIG_SECURITY fornece análise de segurança de nível empresarial para configurações de multisig Squads:

Implementação Técnica

  • Pontuação de Segurança Quantitativa: Implementa um algoritmo de segurança multidimensional (0-100) que avalia mais de 15 fatores de risco, incluindo proporções de limite, estruturas de permissão e durações de time lock
  • Detecção Automatizada de Vulnerabilidades: Verifica configurações incorretas de segurança comuns, incluindo falhas de ponto único, limites inadequados e time locks insuficientes
  • Análise de Controle de Acesso Baseado em Papéis: Avalia a separação de funções entre permissões de INICIAR, EXECUTAR e VOTAR, sinalizando casos em que permissões excessivas estão concentradas
  • Matriz de Avaliação de Risco: Categoriza descobertas em severidade Crítica, Alta, Média e Baixa, com saídas codificadas por cores e recomendações de remediação

Recursos de Segurança

  • Mecanismo de Otimização de Limites: Calcula configurações ideais de limite com base na finalidade do multisig, número de membros e exposição ao valor dos ativos
  • Validação de Time Lock: Aplica períodos mínimos de time lock calibrados para perfis de risco (1+ hora para Reserva, 10+ minutos para Atualizações, etc.)
  • Reforço de Configuração: Gera recomendações específicas de reforço de segurança com instruções de implementação
  • Verificação de Conformidade: Verifica configurações em relação às melhores práticas do setor para gerenciamento de multisig Solana
  • Exportação JSON: Fornece saída legível por máquina para integração com sistemas de monitoramento de segurança

A ferramenta foi desenvolvida usando TypeScript com rotinas especializadas de validação criptográfica e um algoritmo de pontuação proprietário baseado em pesquisa de segurança blockchain.

🔒 Recomendações de Segurança

  1. Sempre verifique endereços: Confira novamente os endereços multisig antes das operações
  2. Siga a regra dos dois minutos: Aguarde pelo menos 2 minutos após aprovações antes de executar transações críticas
  3. Execute auditorias de segurança regulares: Use AUDIT_MULTISIG_SECURITY após qualquer alteração de configuração
  4. Implemente controle de acesso adequado: Separe a criação de propostas dos papéis de execução
  5. Use dispositivos seguros: Realize operações sensíveis em dispositivos dedicados e seguros
  6. Considere a simulação de transações: Teste transações críticas em um ambiente seguro primeiro

🧩 Visão Geral do Protocolo: Model Context Protocol (MCP)

Este projeto é construído sobre o Model Context Protocol (MCP), um protocolo aberto para automação segura e consciente de contexto e fluxos de trabalho de agentes. O MCP permite que ferramentas e agentes (incluindo LLMs) interajam com dados e ações do usuário de maneira controlada, auditável e que preserva a privacidade. Ao aproveitar o MCP, o Squads MCP garante que todas as invocações de ferramentas sejam validadas e registradas contextualmente, reduzindo o risco de ações não autorizadas ou não intencionais.

🎥 Demonstrações ao Vivo

MCP no Aplicativo Claude Desktop

Claude Desktop Demo

MCP no GitHub Copilot

GitHub Copilot Demo

🛡️ Considerações Adicionais de Segurança

  • Sem Custódia de Terceiros: Todas as chaves privadas são gerenciadas e armazenadas localmente. Não há sincronização em nuvem, backup remoto ou custódia de terceiros, minimizando o risco de comprometimento remoto.
  • Uso Direto de RPC Solana: Todas as interações com blockchain são realizadas diretamente do seu ambiente, sem intermediários ou assinatura delegada. Apenas a chave privada armazenada localmente é usada para assinar transações, e somente com ação explícita do usuário.
  • Transparência e Auditabilidade: Ferramentas como SHOW_CONFIG, GET_MULTISIG_ACCOUNT e GET_PROPOSALS fornecem visibilidade total da sua configuração, estado do multisig e histórico de propostas, apoiando transparência e revisão.
  • Avisos de Segurança Explícitos: Esquemas e prompts de ferramentas incluem avisos explícitos e etapas de verificação (por exemplo, "Confira este endereço").
  • Orientação de Segurança Operacional: A ferramenta de auditoria integrada fornece recomendações acionáveis, como usar carteiras de hardware, segmentar tesouros e rotacionar chaves. As verificações de time lock aplicam as melhores práticas para contas críticas.
  • Sem Ações Implícitas: Todas as ações exigem invocação e confirmação explícitas, reduzindo o risco de uso acidental ou automatizado indevido.
  • Superfície de Ataque Mínima: O código é projetado para minimizar dependências e evitar exposição desnecessária de rede. Apenas portas e endpoints essenciais são habilitados.

🧑‍💻 Notas para Desenvolvedores

  • Todas as ferramentas são registradas em index.ts e expostas via servidor MCP.
  • O código é modular, facilitando a extensão com novas ferramentas ou a adaptação a futuras atualizações do protocolo MCP ou Squads.
  • Segurança é um processo: revise, audite e atualize regularmente sua configuração e dependências.

📕 Recursos Adicionais