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

모델 컨텍스트 프로토콜(MCP)을 위한 플로우 블록체인 도구입니다. 이 패키지는 모델 컨텍스트 프로토콜을 통해 플로우 블록체인과 상호 작용하기 위한 도구 세트를 제공합니다.

특징

  • 모든 주소에 대한 FLOW 잔액을 받으세요
  • 모든 Flow 토큰에 대한 토큰 잔액을 얻으세요
  • COA 계정 정보 받기
  • 계약 소스 코드 가져오기
  • 저장 통계를 포함한 자세한 계정 정보를 얻으세요

설치

지엑스피1

MCP 구성

Claude와 함께 이 도구를 사용하려면 MCP 구성에 다음을 추가하세요.

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

MCP 구성은 다음에서 확인할 수 있습니다.

  • macOS: ~/Library/Application Support/Claude/mcp.json
  • 윈도우: %APPDATA%/Claude/mcp.json
  • 리눅스: ~/.config/Claude/mcp.json

구성을 추가한 후 Claude를 다시 시작하여 새 MCP 서버를 로드합니다.

도구

흐름 균형

모든 주소에 대한 FLOW 잔액을 확인하세요:

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

계정 정보

자세한 계정 정보를 확인하세요:

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

토큰 잔액

Flow 토큰에 대한 잔액을 얻으세요:

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

COA 계정

COA 계정 정보 받기:

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

계약 받기

계약 소스 코드 받기:

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

📂 프로젝트 구조

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

🛠️ 개발

이 프로젝트에서는 개발 및 테스트에 FastMCP를 사용합니다. FastMCP는 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

Claude Desktop에 개발 MCP 서버를 추가하려면:

  1. 프로젝트를 빌드하세요:
    bun run build
  2. 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"] } } }

새로운 도구 만들기

이 프로젝트에는 새로운 MCP 도구를 만드는 데 도움이 되는 스크립트가 포함되어 있습니다.

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

이렇게 하면:

  1. src/tools/<tool-name> 아래에 새 도구 디렉토리를 만듭니다.
  2. 다음을 포함한 기본 도구 구조를 생성합니다.
    • index.ts(주요 구현)
    • schema.ts(도구 매개변수에 대한 JSON 스키마)
    • test.ts(테스트 파일)
  3. 새 도구를 내보내려면 도구 인덱스 파일을 업데이트하세요.

예:

bun run scripts/create-tool.ts weather

커밋 메시지 형식

  • feat : 새로운 기능(부 버전 추가)
  • fix : 버그 수정(범프 패치 버전)
  • BREAKING CHANGE : 주요 변경 사항(주요 버전 변경)

📜 버전 관리

이 프로젝트에서는 자동화된 버전 관리를 위해 standard-version을 사용합니다. bun run release 실행하여 새 버전을 생성하세요.

📦 npm에 게시

  1. npm에 로그인했는지 확인하세요.
    npm login
  2. 프로젝트를 빌드하세요:
    bun run build
  3. 패키지를 게시합니다.
    npm publish

새로운 버전을 게시하기 전에 bun run release 사용하여 버전 번호를 업데이트하는 것을 잊지 마세요.

특허

MIT 라이센스 - 자세한 내용은 라이센스를 참조하세요.

기여하다

기여를 환영합니다! 풀 리퀘스트를 제출해 주세요.

You must be authenticated.

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

Flow 잔액 확인, 토큰 잔액 조회, Cadence 소유 계좌 정보 검색 등 Flow 블록체인과 상호 작용하기 위한 도구를 제공합니다.

  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