Cover image
Try Now
2025-03-20

Model Context Protocol (MCP) server for Flow blockchain with direct RPC communication

3 years

Works with Finder

0

Github Watches

0

Github Forks

0

Github Stars

Flow MCP Server

Model Context Protocol (MCP) server for Flow blockchain with direct RPC communication.

This server implements the Model Context Protocol and provides tools for interacting with the Flow blockchain directly through RPC calls.

Features

  • Get account balances (FLOW and tokens)
  • Execute Flow scripts
  • Send transactions
  • Resolve domains to Flow addresses
  • Interact with Flow contracts
  • Full MCP compliance for AI agent integration

Setup

  1. Clone the repository:

    git clone https://github.com/lmcmz/flow-mcp-server.git
    cd flow-mcp-server
    
  2. Install dependencies:

    # Using npm
    npm install
    
    # Using Bun (recommended)
    bun install
    
  3. (Optional) Create a .env file with your configuration:

    PORT=3000
    FLOW_NETWORK=testnet  # Optional: defaults to 'mainnet' if not specified
    

    The server automatically uses the Flow mainnet by default. You only need to configure the environment if you want to use the testnet or a custom port.

Usage

Starting the server

# Run in development mode with hot reload
bun dev

# Run in production mode
bun start

# Build the server
bun run build

Using NPX Command

You can run the MCP server directly using npx without installation:

# Run using npx
npx flow-mcp-server

# Specify network and port
npx flow-mcp-server --network testnet --port 3001

# Get help for all options
npx flow-mcp-server --help

Or install it globally:

# Install globally
npm install -g flow-mcp-server

# Run the globally installed version
flow-mcp-server

Command Line Options

Options:
  -p, --port <port>          Port to run the server on (default: 3000)
  -n, --network <network>    Flow network to connect to (default: mainnet)
  -a, --access-node <url>    Custom Flow access node URL
  --stdio                    Run in stdio mode for direct integration
  -h, --help                 Show this help text

Network Configuration

The server automatically configures FCL with the appropriate contract addresses for the selected network. The following networks are supported:

Mainnet

The mainnet configuration includes contract addresses for:

{
  NonFungibleToken: '0x1d7e57aa55817448',
  FungibleToken: '0xf233dcee88fe0abe',
  MetadataViews: '0x1d7e57aa55817448',
  NFTCatalog: '0x49a7cda3a1eecc29',
  NFTRetrieval: '0x49a7cda3a1eecc29',
  Find: '0x097bafa4e0b48eef',
  Flowns: '0x233eb012d34b0070',
  Domains: '0x233eb012d34b0070',
  FlowToken: '0x1654653399040a61',
  TransactionGeneration: '0xe52522745adf5c34',
  FlowFees: '0xf919ee77447b7497',
  StringUtils: '0xa340dc0a4ec828ab',
  HybridCustody: '0xd8a7e05a7ac670c0',
  ViewResolver: '0x1d7e57aa55817448'
}

Testnet

The testnet configuration includes contract addresses for testnet environment.

You can also see the current network configuration by accessing the /networks endpoint.

MCP Configuration

To configure an AI assistant to use Flow MCP, use the following configuration:

{
  "mcpServers": {
    "flow-mcp": {
      "command": "npx",
      "args": ["-y", "flow-mcp-server", "--stdio"],
      "env": {
        "FLOW_NETWORK": "mainnet"  // Optional: defaults to 'mainnet', can be set to 'testnet'
      }
    }
  }
}

Or with direct HTTP API:

{
  "mcpServers": {
    "flow-mcp": {
      "serverUrl": "http://localhost:3000",
      "env": {
        "FLOW_NETWORK": "mainnet"
      }
    }
  }
}

Usage with AI assistants

The server implements the Model Context Protocol which allows it to be used with AI assistants that support MCP. It exposes various tools for interacting with the Flow blockchain.

API Endpoints

  • /sse - SSE endpoint for real-time communication
  • /messages - Endpoint for sending tool requests
  • /health - Health check endpoint
  • / - Server information
  • /networks - Network configuration information

Available Tools

  • get_flow_balance - Get FLOW balance for an address
  • get_token_balance - Get token balance for an address
  • execute_script - Execute a Cadence script
  • send_transaction - Send a signed transaction to the Flow blockchain
  • resolve_domain - Resolve a .find or .fn domain to a Flow address

Publishing to npm

If you want to publish your own version of this package:

# Login to npm
npm login

# Publish the package
npm publish

# Update the package
npm version patch  # or minor or major
npm publish

License

MIT

相关推荐

  • NiKole Maxwell
  • I craft unique cereal names, stories, and ridiculously cute Cereal Baby images.

  • Bora Yalcin
  • Evaluator for marketplace product descriptions, checks for relevancy and keyword stuffing.

  • Joshua Armstrong
  • Confidential guide on numerology and astrology, based of GG33 Public information

  • https://suefel.com
  • Latest advice and best practices for custom GPT development.

  • Callycode Limited
  • A geek-themed horoscope generator blending Bitcoin prices, tech jargon, and astrological whimsy.

  • Emmet Halm
  • Converts Figma frames into front-end code for various mobile frameworks.

  • Khalid kalib
  • Write professional emails

  • Elijah Ng Shi Yi
  • Advanced software engineer GPT that excels through nailing the basics.

  • Beniyam Berhanu
  • Therapist adept at identifying core issues and offering practical advice with images.

  • https://maiplestudio.com
  • Find Exhibitors, Speakers and more

  • apappascs
  • Discover the most comprehensive and up-to-date collection of MCP servers in the market. This repository serves as a centralized hub, offering an extensive catalog of open-source and proprietary MCP servers, complete with features, documentation links, and contributors.

  • ShrimpingIt
  • Micropython I2C-based manipulation of the MCP series GPIO expander, derived from Adafruit_MCP230xx

  • huahuayu
  • A unified API gateway for integrating multiple etherscan-like blockchain explorer APIs with Model Context Protocol (MCP) support for AI assistants.

  • deemkeen
  • control your mbot2 with a power combo: mqtt+mcp+llm

  • jae-jae
  • MCP server for fetch web page content using Playwright headless browser.

    Reviews

    1 (1)
    Avatar
    user_xFo33RY3
    2025-04-17

    As a dedicated user of the flow-mcp-server developed by Outblock, I can confidently say it's an outstanding solution for managing multi-cloud platforms. The seamless integration and comprehensive documentation make implementation straightforward. Whether you're a novice or experienced user, this tool enhances operational efficiency significantly. Highly recommended for anyone looking to streamline their multi-cloud management.