Chronos

Interaja com a blockchain Stellar para gerenciar carteiras, listar tokens, consultar saldos e transferir fundos.

Documentação

Servidor Chronos MCP 🔵

npm version License: MIT

Chronos é um servidor de Protocolo de Contexto de Modelo (MCP) adaptado para a blockchain Stellar e projetado especificamente para integração com o Claude Desktop e aplicações similares de IA. Chronos capacita seu assistente de IA com ferramentas on-chain que permitem interações simplificadas com a rede Stellar.

Visão Geral

O Chronos MCP oferece os seguintes recursos:

  • Conectar a Carteiras Stellar: Conecte-se com segurança à sua carteira usando uma chave secreta.
  • Listar Tokens da Carteira: Recupere e liste todos os tokens mantidos em uma carteira Stellar.
  • Consultar Saldos: Obtenha saldos em tempo real para seu XLM e outros ativos.
  • Transferir Fundos: Inicie transferências entre carteiras Stellar com facilidade.

Chronos é construído para ser extensível e opera como um pacote Node.js padrão, permitindo que seja facilmente implantado, instalado e integrado—semelhante a outros servidores MCP como base-mcp.

Recursos

  • Integração Stellar: Interage totalmente com a mainnet Stellar via API Horizon.
  • Implantação Fácil: Publique e instale Chronos usando npm.
  • Compatibilidade com Claude Desktop: Integre-se perfeitamente com o Claude Desktop atualizando a configuração do servidor MCP.
  • Arquitetura Extensível: Projetado para melhorias futuras e integrações de novas ferramentas.

Pré-requisitos

  • Node.js (v14 ou superior)
  • npm
  • Credenciais da carteira Stellar (chave secreta para conexão)
  • Conectividade com a internet para interagir com a rede Stellar

Instalação

Opção 1: Instalar a partir do npm (Recomendado)

Instale o Chronos globalmente:

npm install -g chronos-mcp

Ou use-o diretamente com npx:

npx chronos-mcp@latest

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

  1. Clone o repositório:

    git clone https://github.com/yourusername/chronos-mcp.git
    cd chronos-mcp
    
  2. Instale as dependências:

    npm install
    
  3. Compile o projeto:

    npm run build
    
  4. (Opcional) Vincule globalmente para acesso mais fácil:

    npm link
    

Opção 3: Usando Docker

Você também pode executar o Chronos MCP usando Docker:

  1. Construa a imagem Docker:

    docker build -t chronos-mcp .
    
  2. Execute o contêiner:

    docker run -it --rm chronos-mcp
    

Para instruções mais detalhadas sobre como usar Docker com Chronos MCP, incluindo configuração do Docker Compose e integração com Claude Desktop, consulte o Guia de Uso do Docker.

Para informações sobre como testar sua configuração Docker localmente, consulte o Guia de Uso do Docker. Isso inclui informações sobre como construir a imagem Docker, executar o contêiner e usar Docker com Chronos MCP.

Configuração

Variáveis de Ambiente

O Chronos MCP usa variáveis de ambiente para configuração, particularmente para informações sensíveis como sua chave secreta Stellar. O projeto usa dotenv para carregar variáveis de ambiente de um arquivo .env durante o desenvolvimento.

Para configurar variáveis de ambiente:

  1. Crie um arquivo .env na raiz do projeto:

    STELLAR_SECRET_KEY=your_stellar_secret_key
    STELLAR_NETWORK=mainnet
    
  2. Essas variáveis serão carregadas automaticamente quando o aplicativo iniciar.

Ao usar Docker, você pode fornecer variáveis de ambiente de várias maneiras:

  • Usando a flag --env-file: docker run -it --rm --env-file .env chronos-mcp
  • Usando a diretiva env_file no docker-compose.yml
  • Definindo variáveis individuais com a flag -e: docker run -it --rm -e STELLAR_SECRET_KEY=your_key chronos-mcp

Configuração do Claude Desktop

Para usar Chronos com Claude Desktop, atualize seu arquivo de configuração do Claude Desktop localizado em:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

Configuração de exemplo para Claude Desktop:

{
  "mcpServers": {
    "stellar": {
      "command": "npx",
      "args": ["chronos-mcp@latest"],
      "env": {
        "STELLAR_NETWORK": "mainnet",
        "STELLAR_SECRET_KEY": "your_stellar_secret_key"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

Para integração Docker com Claude Desktop, você pode usar:

{
  "mcpServers": {
    "stellar": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "--env-file", "/path/to/your/.env", "chronos-mcp"],
      "env": {
        "STELLAR_NETWORK": "mainnet"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

Uso

O Chronos MCP expõe as seguintes ferramentas através de sua interface MCP:

connect_wallet

Conecta a uma carteira Stellar usando a chave secreta.

Exemplo de Comando:

"Conecte minha carteira usando a chave secreta ______"


list_tokens

Lista todos os tokens e ativos na carteira Stellar especificada.

Exemplo de Comando:

"Liste os tokens da minha carteira"


get_balances

Recupera o saldo de XLM e quaisquer outros ativos.

Exemplo de Comando:

"Qual é meu saldo atual de XLM?"


transfer_funds

Transfere fundos da sua carteira para outra carteira Stellar.

Parâmetros:

  • secretKey: Sua chave secreta da carteira.
  • destinationAddress: O endereço da carteira do destinatário.
  • amount: O valor a ser transferido.
  • asset (opcional): Ativo a ser transferido (padrão é XLM).

Exemplo de Comando:

"Transfira 0,5 XLM para [endereço da carteira de destino]"

Testes

Testes Padrão

Para testar o Chronos MCP localmente:

npm test

Isso executará a suíte de testes do projeto e verificará se seu servidor está funcionando como esperado.

Testes com Docker

Para testar a configuração Docker localmente, consulte o Guia de Uso do Docker para instruções. O guia cobre:

  • Construção da imagem Docker
  • Execução do contêiner com Docker Compose
  • Integração com Claude Desktop
  • Outras informações relacionadas ao Docker

Você também pode usar o script test-client.js incluído para testar o contêiner Docker:

node test-client.js

Este script envia uma solicitação MCP simples ao contêiner Docker e exibe a resposta.

Implantação

O Chronos MCP é projetado para funcionar como um pacote Node.js padrão e pode ser publicado no npm. Uma vez publicado (por exemplo, via npm publish), o Chronos pode ser instalado globalmente ou usado via npx, assim como qualquer outro servidor MCP.

Para implantação em produção, considere envolver o Chronos em um serviço do sistema (usando systemd, launchd, etc.) para reinicializações automáticas e monitoramento.

Estendendo o Chronos

Chronos é construído com extensibilidade em mente. Para adicionar novas ferramentas:

  1. Crie um novo diretório na pasta src/tools.
  2. Implemente sua ferramenta (inclua um index.ts, schemas.ts e handlers.ts).
  3. Exporte sua ferramenta em src/tools/index.ts.
  4. Atualize o README com a documentação e exemplos da sua ferramenta.
  5. Escreva testes para garantir que sua nova ferramenta funcione corretamente.

Licença

Este projeto está licenciado sob a Licença MIT.

Contribuição

Contribuições são bem-vindas! Consulte o CONTRIBUTING.md para diretrizes sobre como relatar problemas, enviar pull requests e outras instruções de contribuição.

────────────────────────────── Este README é adaptado especificamente para o Chronos MCP e descreve sua implantação como um pacote Node.js, integração com Claude Desktop e um conjunto abrangente de recursos para interagir com a blockchain Stellar.