> For the complete documentation index, see [llms.txt](https://docs.chamberfi.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.chamberfi.com/build/overview.md).

# Overview

Chamber is a set of onchain vaults plus supporting infrastructure. Everything a manager or depositor does through the app is also available to integrators. This section is the developer reference.

If you're building a product that creates vaults, composes trades, reads vault state, or automates a strategy, you're in the right place.

## What you can build

* **Vault-backed products:** consumer apps, yield strategies, and managed portfolios that wrap a Chamber vault. This is how [Toros Finance](/ecosystem/toros-finance.md) is built.
* **Automated managers:** bots that trade a vault within the Guard System's rules, via the [SDK](/build/sdk.md) or direct contract calls. Teams often use an LLM to help write the strategy code.
* **Analytics and dashboards:** vault discovery, performance tracking, leaderboards. The [subgraph](/build/subgraph.md) (per-chain, indexed) is the primary data source; the [Data API](/build/data-api.md) is a lighter hosted GraphQL that aggregates across chains.
* **Deposit and withdrawal flows:** if you're embedding Chamber in another app, the [SDK](/build/sdk.md) handles quoting and transaction construction in TypeScript; for other languages or lightweight clients, call the contracts directly.

## The surfaces

| Surface                                   | Purpose                                                       | When to use                                        |
| ----------------------------------------- | ------------------------------------------------------------- | -------------------------------------------------- |
| [Contracts](/build/contract-addresses.md) | The vault contracts themselves                                | Direct integration, custom tooling                 |
| [SDK](/build/sdk.md) (`@dhedge/v2-sdk`)   | TypeScript wrapper over the contracts                         | Building a full manager or wallet flow             |
| [Subgraph](/build/subgraph.md)            | Indexed vault, position, and transaction data                 | Analytics, UIs, leaderboards                       |
| [Data API](/build/data-api.md)            | Hosted GraphQL for cross-chain vault lists, prices, analytics | Lightweight read access without running a subgraph |
| [MCP server](/build/mcp-server.md)        | Local MCP server that reads vault state from an AI client     | Read-only monitoring and analysis                  |

## Before you start

Three things to know up front:

1. **Everything flows through the** [**Guard System**](/build/guard-system.md)**.** Your integration can only compose calls that a whitelisted contract guard will approve. If you're trying to interact with a protocol Chamber doesn't already support, the call will revert at the vault entrypoint. The integrator-facing guard page covers how to check what's supported on a given chain.
2. **Chains are not uniform.** The set of supported protocols, assets, and guards differs across chains. Always check the [deployment matrix](/build/deployment-matrix.md) and [contract addresses](/build/contract-addresses.md) for the chain you're targeting before writing chain-specific logic.
3. **Fees are settled in vault shares.** Performance, management, entry, and exit fees are all minted as shares to the manager and DAO, not deducted from the deposit asset. If your UI shows fee impact, model it as share dilution. See [fees & performance](/manage/fees-performance.md).

## Quick start

The fastest path depends on what you're building:

* **"I want to create and manage a vault programmatically"** → [SDK](/build/sdk.md).
* **"I want to query vault data"** → [Subgraph](/build/subgraph.md).
* **"I want my users to deposit into an existing vault from my app"** → [SDK](/build/sdk.md) if TypeScript, or call the vault's `deposit` function directly (see [contract addresses](/build/contract-addresses.md)).
* **"I want to read vault state from an AI client (Claude, Cursor, …)"** → [MCP server](/build/mcp-server.md).
* **"I want end-to-end examples"** → [Integration examples](/build/integration-examples.md).

## Repositories

All integrator-facing code is open source:

* Contracts: [github.com/dhedge/V2-Public](https://github.com/dhedge/V2-Public)
* SDK: [github.com/dhedge/dhedge-v2-sdk](https://github.com/dhedge/dhedge-v2-sdk) (`@dhedge/v2-sdk`)
* Subgraphs: [github.com/dhedge/dhedge-v2-subgraphs](https://github.com/dhedge/dhedge-v2-subgraphs)
* MCP server: [`@dhedge/chamber-mcp`](https://www.npmjs.com/package/@dhedge/chamber-mcp) on npm

## Support

* [Discord](https://discord.com/invite/BAWTbRA): `#developers` channel
* GitHub issues on the relevant repo
* Security disclosures: see [bug bounty](/security/bug-bounty.md)

## See also

* [Guard system](/build/guard-system.md): the integrator-facing rules for what calls will succeed
* [Concepts: vaults as guardrails](/concepts/vaults-as-guardrails.md): the model your integration is operating inside
