subquery / subql
SubQuery is an Open, Flexible, Fast and Universal data indexing framework for web3. Our mission is to help developers create the decentralised products of the future.
AI Architecture Analysis
This repository is indexed by RepoMind. By analyzing subquery/subql in our AI interface, you can instantly generate complete architecture diagrams, visualize control flows, and perform automated security audits across the entire codebase.
Our Agentic Context Augmented Generation (Agentic CAG) engine loads full source files into context, avoiding the fragmentation of traditional RAG systems. Ask questions about the architecture, dependencies, or specific features to see it in action.
Repository Summary (README)
PreviewWelcome to SubQuery!
Flexible, reliable, and decentralised APIs for your web3 project
SubQuery is an Open, Flexible, Fast and Universal data indexing framework for web3. Our mission is to help developers create the decentralised products of the future.
SubQuery allows teams across multiple blockchain architectures to process and query their data. The project is inspired by the growth of data protocols serving the application layer and its aim is to help web3 projects build better dApps by allowing anyone to reliably find and consume data faster. Today, anyone can query and extract blockchain data from various supported networks in only minutes and at no cost.
The future is multi-chain - SubQuery is no different. SubQuery is well on our way to support all leading blockchain networks with support for the following:
- Polkadot (and all Substrate networks)
- Ethereum (and all EVM-compatible networks)
- Cosmos (and all CosmWasm and Ethermint networks)
- Algorand
- NEAR
- Stellar (including Soroban)
- Solana (Beta)
- Starknet
- Concordium
You can also use SubQuery to index data from multiple networks in any combination of the above SDKs. See our Multi-Chain Indexing Quickstart for more details.
Get Started
Create a SubQuery project
You can follow our Quick Start Guide to learn how to create, initialize, build, and publish a new SubQuery Project using the @subql/cli tool.
Learn and improve with our comprehensive documentation
Dig into every term, usecases, and best-practices that help you build a dApp which your users love. Take a look at our detailed technical documentation.
Publish your SubQuery Project to the SubQuery Network
Take advantage of the decentralized SubQuery Network to host your project without managing any infrastructure. By publishing to the SubQuery Network, you'll benefit from a reliable, scalable, cost-optimised, and censorship-resistant indexing service. Follow our comprehensive publishing guide to learn how to upload your project to the network and start leveraging its distributed infrastructure today.
Publish to managed hosting providers
If you prefer a managed hosting option for your indexer deployment, contact our managed hosting partners. Learn more.
Run your own Indexer and Query Service
Follow our guide to run your own SubQuery local node that you can use to debug, test, and run you own GraphQL server.
You're going to need to a Postgres database, a node to extract chain data, and a moderately powerful computer to run the indexer in the background.
You'll also use our custom-built GraphQL query service @subql/query to interact with your SubQuery project.
MCP (Beta)
You can also create, build and deploy SubQuery projects using MCP (Model Context Protocol). Our MCP integration provides all the same functionality as the CLI but works well with LLMs and AI IDEs such as Cursor.
Manual configuration
For adding SubQuery MCP into other tools, the following command needs be run by the client.
npx -y @subql/cli mcp
An example manual configuration:
"subquery": {
"command": "npx",
"args": ["-y", "@subql/cli", "mcp"]
}
Components
This repository contains all the core components of the SubQuery SDK as well as the Substrate implementation. It includes the following packages:
@subql/cli- The command line interface for SubQuery, used to create, build, and publish SubQuery projects@subql/node- The Substrate SubQuery SDK, which provides the indexing functionality for Substrate-based chains@subql/node-core- Core indexing functionality that is chain agnostic@subql/query- The GraphQL query service for SubQuery projects, allowing you to interact with your indexed data.@subql/common- Common utilities and types used across SubQuery packages@subql/common-substrate- Common utilities and types specifically for Substrate-based chains@subql/types- Type definitions for Substrate-based chains and SubQuery projects, including the project manifest and data models
For more detail on the specific network implementations please see their respective repositories:
@subql/node-ethereum@subql/node-cosmos@subql/node-algorand@subql/node-near@subql/node-stellar@subql/node-solana@subql/node-starknet@subql/node-concordium
Other Components:
@subql/query-subgraph- A Subgraph compatible query service for SubQuery projects.
Support
We have a vibrant community of developers and users who are always ready to help. If you have any questions, issues, or need assistance, please reach out to us through the following channels:
Contribute
We love contributions and feedback from the community. To contribute the code, we suggest starting by creating an issue in our main repository so we can give you support.
Copyright
SubQuery is a project built with love from the team at SubQuery all the way from New Zealand
Copyright © 2025 SubQuery Pte Ltd authors & contributors