Flow MCP

by Outblock
Verified
MIT License
79
  • Apple
  • Linux

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Integration for code linting and formatting to maintain code quality in the MCP server implementation.

  • Integration with the Bun JavaScript runtime for optimal MCP server performance, used for development, testing, and running the server.

  • Offers type-safe tool definitions for Flow blockchain interactions, ensuring proper data validation and error handling.

@outblock/flow-mcp

Herramientas de la cadena de bloques Flow para el Protocolo de Contexto de Modelo (MCP). Este paquete proporciona un conjunto de herramientas para interactuar con la cadena de bloques Flow a través del Protocolo de Contexto de Modelo.

Características

  • Obtenga saldo FLOW para cualquier dirección
  • Obtenga saldo de tokens para cualquier token de Flow
  • Obtener información de la cuenta COA
  • Obtener el código fuente del contrato
  • Obtenga información detallada de la cuenta, incluidas las estadísticas de almacenamiento

Instalación

# Using npm npm install @outblock/flow-mcp # Using bun bun add @outblock/flow-mcp

Configuración de MCP

Para utilizar esta herramienta con Claude, agregue lo siguiente a su configuración de MCP:

{ "mcpServers": { "flow": { "command": "npx", "args": ["-y", "@outblock/flow-mcp", "start"] } } }

Puede encontrar la configuración de su MCP en:

  • macOS: ~/Library/Application Support/Claude/mcp.json
  • Ventanas: %APPDATA%/Claude/mcp.json
  • Linux: ~/.config/Claude/mcp.json

Después de agregar la configuración, reinicie Claude para cargar el nuevo servidor MCP.

Herramientas

Equilibrio de flujo

Obtenga el saldo de FLOW para cualquier dirección:

{ name: 'get_flow_balance', input: { address: string, network?: 'mainnet' | 'testnet' } }

Información de la cuenta

Obtenga información detallada de la cuenta:

{ name: 'get_account_info', input: { address: string, network?: 'mainnet' | 'testnet' } }

Saldo de tokens

Obtenga saldo para cualquier token de Flow:

{ name: 'get_token_balance', input: { address: string, network?: 'mainnet' | 'testnet' } }

Cuenta COA

Obtener información de la cuenta COA:

{ name: 'get_coa_account', input: { address: string, network?: 'mainnet' | 'testnet' } }

Obtener contrato

Obtener el código fuente del contrato:

{ name: 'get_contract', input: { address: string, contractName: string, network?: 'mainnet' | 'testnet' } }

📂 Estructura del proyecto

flow-mcp/ ├── src/ │ ├── tools/ # MCP tools implementation │ │ ├── flowBalance/ # Flow balance tool │ │ ├── accountInfo/ # Account info tool │ │ ├── tokenBalance/ # Token balance tool │ │ ├── coaAccount/ # COA account tool │ │ └── getContract/ # Contract source tool │ ├── utils/ # Shared utilities │ ├── prompts/ # MCP prompts │ ├── types/ # Type definitions │ └── bin/ # CLI implementation ├── biome.json # Linting configuration ├── tsconfig.json # TypeScript configuration └── package.json # Project dependencies

🛠️ Desarrollo

Este proyecto utiliza FastMCP para el desarrollo y las pruebas. FastMCP proporciona una experiencia de desarrollo optimizada para servidores MCP.

# Install dependencies bun install # Format code bun run format # Run tests bun test # Run development server bun run dev # Inspect the server bun run inspect # Build bun run build

Para agregar su servidor MCP de desarrollo a Claude Desktop:

  1. Construir el proyecto:
    bun run build
  2. Añade a tu configuración de Claude Desktop:
    // You only need the argument if you need to pass arguments to your server { "mcpServers": { "your-server-name": { "command": "node", "args": ["/path/to/your/project/dist/main.js", "some_argument"] } } }

Creando nuevas herramientas

El proyecto incluye un script para ayudar a crear nuevas herramientas MCP:

bun run scripts/create-tool.ts <tool-name>

Esto hará lo siguiente:

  1. Cree un nuevo directorio de herramientas en src/tools/<tool-name>
  2. Genere la estructura básica de la herramienta incluyendo:
    • index.ts (implementación principal)
    • schema.ts (esquema JSON para parámetros de herramientas)
    • test.ts (archivo de prueba)
  3. Actualice el archivo de índice de herramientas para exportar la nueva herramienta

Ejemplo:

bun run scripts/create-tool.ts weather

Formato del mensaje de confirmación

  • feat : Nueva característica (mejora versión menor)
  • fix : Corrección de errores (versión del parche de mejoras)
  • BREAKING CHANGE : Cambio radical (incrementa la versión principal)

📜 Gestión de versiones

Este proyecto utiliza la versión estándar para la gestión automatizada de versiones. Ejecute bun run release para crear una nueva versión.

📦 Publicación en npm

  1. Asegúrese de haber iniciado sesión en npm:
    npm login
  2. Construir el proyecto:
    bun run build
  3. Publicar el paquete:
    npm publish

Recuerde actualizar el número de versión utilizando bun run release antes de publicar nuevas versiones.

Licencia

Licencia MIT: consulte LICENCIA para obtener más detalles.

Contribuyendo

¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Proporciona herramientas para interactuar con la cadena de bloques Flow, incluida la verificación del saldo de Flow, la consulta del saldo de tokens y la recuperación de información de cuentas propiedad de Cadence.

  1. Features
    1. Installation
      1. MCP Configuration
        1. Tools
          1. Flow Balance
          2. Account Info
          3. Token Balance
          4. COA Account
          5. Get Contract
        2. 📂 Project Structure
          1. 🛠️ Development
            1. Creating New Tools
            2. Commit Message Format
          2. 📜 Version Management
            1. 📦 Publishing to npm
              1. License
                1. Contributing
                  ID: 5qz2mf1je9