catalyst-gas-and-transfers

0
0
Source

Add gas fees and token transfer models for a new chain (hourly_spellbook + tokens)

Install

mkdir -p .claude/skills/catalyst-gas-and-transfers && curl -L -o skill.zip "https://mcp.directory/api/skills/download/6598" && unzip -o skill.zip -d .claude/skills/catalyst-gas-and-transfers && rm skill.zip

Installs to .claude/skills/catalyst-gas-and-transfers

About this skill

catalyst gas and transfers

overview

sets up gas fees and token transfers for a new chain.

when to use: use when adding gas and token transfer models for a chain that already has foundational metadata.

parameters

  • <issue_id>: linear issue id (e.g., CUR2-547)
  • <chain>: chain name (e.g., monad)

usage

/catalyst-gas-and-transfers CUR2-547 monad

dune mcp server: user-dune-mcp. for ad-hoc sql, prefer temporary execution if the dune mcp supports it in-session. only create saved/throwaway queries with createDuneQuery when temporary execution is not available or when a later step explicitly needs a query_id. fallback sequence when query_id is required: create query with createDuneQuery (pass sql in query) -> run with executeQueryById (using returned query_id) -> fetch rows with getExecutionResults (using returned execution_id).

conventions

  • execution order: numbered items = execute sequentially. any step that says "run" or "execute" is blocking; complete it before proceeding.
  • code patterns: use existing chain patterns as reference (e.g. dbt_subprojects/dex/models/trades/kaia/, .../mezo/). ordering: mimic existing; if unclear, append. swap chain name in: file paths, model names, schema entries, blockchain values.
  • contributors: new files: set git username only. existing files: append git username.

prep vars

  • retrieve chain metadata: run this sql via the ad-hoc sql sequence above: select * from dune.blockchains where name = '<chain>' (substitute <chain> with the chain name). extract: chain_id, name (display name), token_address (native token).
  • retrieve first_block_time: run this sql via the ad-hoc sql sequence above: select min(time) from <chain>.blocks where number <> 0 (substitute <chain>).

git workflow

  1. verify main is up to date: fetch latest, pull if behind, exit if diverged.
  2. create branch: name <issue_id>-<chain>-gas-and-transfers, create off main, checkout, warn if exists. don't commit/push anything.

additional prep

  • identify native token_address: run this sql via the ad-hoc sql sequence above: select * from dune.blockchains where name = '<chain>' (substitute <chain>).

steps

  1. add gas fees model

    • check chain docs: L1 or L2/rollup?
    • query <chain>.transactions for sample gas fees setup
    • create dbt_subprojects/hourly_spellbook/models/_sector/gas/fees/<chain>/gas_<chain>_fees.sql
    • L1: use evm_l1_gas_fees macro
    • L2: use op_stack_gas_fees or arbitrum_orbit_stack_gas_fees
    • if non-applicable: write custom logic
  2. add gas schema

    • create dbt_subprojects/hourly_spellbook/models/_sector/gas/fees/<chain>/gas_<chain>_schema.yml
  3. add gas seed data

    • edit dbt_subprojects/hourly_spellbook/seeds/_sector/gas/evm_gas_fees.csv
    • use dune mcp executeQueryById with query_id: 6162940, query_parameters: [{"key":"chain","value":"<chain>","type":"text"}] (substitute <chain>) for test entries
  4. add to gas fees union

    • edit dbt_subprojects/hourly_spellbook/models/_sector/gas/fees/gas_fees.sql
    • add <chain> to both chain lists
  5. create transfer models

    • create dbt_subprojects/tokens/models/transfers_and_balances/<chain>/ with:
      • tokens_<chain>_base_transfers.sql
      • tokens_<chain>_transfers.sql
      • tokens_<chain>_net_transfers_daily.sql
      • tokens_<chain>_net_transfers_daily_asset.sql
        • set native_contract_address = var('ETH_ERC20_ADDRESS') or chain-specific
      • tokens_<chain>_transfers_from_traces.sql
      • tokens_<chain>_transfers_from_traces_base.sql
      • tokens_<chain>_transfers_from_traces_base_wrapper_deposits.sql
  6. add transfers schema

    • create dbt_subprojects/tokens/models/transfers_and_balances/<chain>/_schema.yml
    • define all 7 models with tests and column descriptions
  7. add to transfers unions

    • dbt_subprojects/tokens/models/transfers_and_balances/tokens_transfers.sql
    • dbt_subprojects/tokens/models/transfers_and_balances/tokens_net_transfers_daily.sql
    • dbt_subprojects/tokens/models/transfers_and_balances/tokens_net_transfers_daily_asset.sql
  8. add to transfers macro

    • dbt_subprojects/tokens/macros/transfers_from_traces/transfers_from_traces_exposed_blockchains_macro.sql
  9. final checks

    • From repo root: run pipenv shell, then run dbt compile in dbt_subprojects/tokens and in dbt_subprojects/hourly_spellbook. Fix any errors.

You might also like

flutter-development

aj-geddes

Build beautiful cross-platform mobile apps with Flutter and Dart. Covers widgets, state management with Provider/BLoC, navigation, API integration, and material design.

643969

drawio-diagrams-enhanced

jgtolentino

Create professional draw.io (diagrams.net) diagrams in XML format (.drawio files) with integrated PMP/PMBOK methodologies, extensive visual asset libraries, and industry-standard professional templates. Use this skill when users ask to create flowcharts, swimlane diagrams, cross-functional flowcharts, org charts, network diagrams, UML diagrams, BPMN, project management diagrams (WBS, Gantt, PERT, RACI), risk matrices, stakeholder maps, or any other visual diagram in draw.io format. This skill includes access to custom shape libraries for icons, clipart, and professional symbols.

591705

ui-ux-pro-max

nextlevelbuilder

"UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient."

318398

godot

bfollington

This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.

339397

nano-banana-pro

garg-aayush

Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API. Use when the user asks to generate, create, edit, modify, change, alter, or update images. Also use when user references an existing image file and asks to modify it in any way (e.g., "modify this image", "change the background", "replace X with Y"). Supports both text-to-image generation and image-to-image editing with configurable resolution (1K default, 2K, or 4K for high resolution). DO NOT read the image file first - use this skill directly with the --input-image parameter.

451339

fastapi-templates

wshobson

Create production-ready FastAPI projects with async patterns, dependency injection, and comprehensive error handling. Use when building new FastAPI applications or setting up backend API projects.

304231

Stay ahead of the MCP ecosystem

Get weekly updates on new skills and servers.