v3 BetaBlockfrost-compatible APIs, Analytics Store & MCP

Cardano data,
indexed your way.

Yaci Store is a modular, open-source Java indexer for Cardano. Run the ready-made app with Docker, or embed only the stores you need as Spring Boot starters. Serve the data over REST, Blockfrost-compatible APIs, SQL, Parquet or MCP.

Mainnet · Preprod · Preview · Devnet PostgreSQL (recommended) · MySQL · H2 MIT licensed

Epoch and slot are computed live from mainnet genesis. The event stream is illustrative.

How it works

From chain sync to query, one pipeline

Yaci Store follows the chain from any Cardano node, turns every block into typed events, and fans them out to the stores you enable. Plugins filter what gets stored. The results land in your database and, optionally, in analytics-ready Parquet.

How Yaci Store worksYaci Store syncs blocks from a Cardano network, publishes events to modular stores and plugins, writes to PostgreSQL, MySQL or H2, exports to Parquet or DuckLake for analytics, and serves the data over REST, Blockfrost-compatible APIs, SQL, a DuckDB query API and MCP tools.01 · SOURCE02 · INDEX03 · STORE04 · SERVE₳Cardano networknode-to-node · node-to-clientMainnetPreprodPreviewDevnetYaci Storechain sync → events → storesEVENT BUSUTxOBlockTransactionAssetsMetadataScriptStakingEpochGovernanceAdaPotAccountSubmitPlugins · MVEL · SpEL · JS · PythonSpring Boot starters · pick only what you needDatabasePostgreSQL (recommended)MySQL · H2AnalyticsParquet · DuckLakeexported at chain tipexportREST APIsSwagger / OpenAPIBlockfrost APIsv3 · compatible pathsDirect SQLyour own queriesQuery APIsandboxed DuckDBMCP toolsfor AI agents
Core indexingPluginsAnalytics (v3)AI / MCP (v3)
Features

Everything you need to build on Cardano data

Start with the stores you need and add more later. Every module is a standalone library and a Spring Boot starter, so the indexer grows with your application.

Modular by design

UTxO, blocks, transactions, assets, metadata, scripts, staking, governance and more. Turn each store on or off, or pull it in as its own Spring Boot starter.

Spring Boot starters
dependencies { + implementation 'com.bloxbean.cardano:yaci-store-utxo-spring-boot-starter:<version>' + implementation 'com.bloxbean.cardano:yaci-store-metadata-spring-boot-starter:<version>' + implementation 'com.bloxbean.cardano:yaci-store-assets-spring-boot-starter:<version>' }
v3

Blockfrost-compatible APIs

Paths and response shapes follow the Blockfrost API, so existing clients can point at your own node.

Blockfrost APIs
GET /blocks/latest
$
v3

Analytics Store

Export indexed data to Parquet or DuckLake catalogs with ACID transactions and time travel, then query it with a sandboxed DuckDB engine.

Analytics Store
POST /api/v1/analytics/query/sql
SELECT epoch, count(*) AS blocks FROM block WHERE epoch >= 500 GROUP BY epoch ORDER BY epoch
ParquetDuckLakeDuckDBcustom exporters
v3

Ready for AI agents

Built-in MCP tools let an agent discover tables, read schemas and run read-only SQL over your analytics data.

Set up the MCP server
How many blocks were produced per epoch since epoch 500?
analytics-list-tables
analytics-describe-table
analytics-execute-sql
Waiting for tools…

Plugins in your language

Filter, transform or react to data with MVEL, SpEL, JavaScript or Python. No Java code or rebuild needed.

Write a plugin
filters:
metadata.save:
- name: "NFT Metadata Filter"
lang: mvel
expression: label == "721"

Ledger state, computed

The ledger-state profile calculates rewards, AdaPot and governance state itself, with no external data source.

Stores
  • Staking rewards
  • AdaPot: treasury & reserves
  • DRep distribution & proposal status

Operate with confidence

Admin UI for sync status and health, Prometheus and Grafana monitoring, rollback handling, pruning and auto-recovery.

Admin UI
Get started

Run it your way

Go from zero to indexing in minutes with Docker, or build a custom indexer with the same modules.

terminal
# Download the Docker distribution from GitHub Releases, then
# point it at a network in config/application.properties:
store.cardano.host=preprod-node.world.dev.cardano.org
store.cardano.port=30000
store.cardano.protocol-magic=1
$ ./yaci-store.sh start
$ ./yaci-store.sh logs:yaci-store
  • PostgreSQL included
  • Ledger-state profile
  • Grafana dashboards
Setup guide
Showcase

Trusted across the Cardano ecosystem

Teams building exchange integrations, governance, DeFi, analytics and developer tools run on Yaci Store.

Start indexing in minutes

Open source and MIT licensed. Pick a distribution, point it at a network, and query your first block.