Code Graph

A continuously-updated semantic graph of your entire org

Mergic indexes every file, function, and call-site into a typed, polyglot code graph — across repos, services, and infrastructure. Every review reasons about real cross-service blast radius.

Built for monorepos and polyrepos

The map your engineers wish they had

Mergic Code Graph resolves the connections your IDE can’t — across languages, services, and infra-as-code.

Polyglot

First-class graph nodes for TS, JS, Python, Go, Rust, Java, Kotlin, Ruby, C#. Cross-language calls resolved.

Cross-service

HTTP, gRPC, message-queue, and event-bus calls resolved to their concrete consumers and producers.

Infra-aware

Terraform, Pulumi, CloudFormation, Helm, K8s manifests indexed alongside application code.

Real-time

Incremental indexing on every push. Sub-second update for typical PRs. No stale graphs, ever.

Query API

Ask the graph anything: “who calls this?”, “what writes to this table?”, “what touches PII?”

Permission-aware

Per-repo ACLs respected at query time. Engineers only see what they have access to.

From symbols to systems

Mergic doesn’t stop at the syntax tree. We resolve types, infer call-sites, link database tables, and stitch in your OpenAPI specs — so the graph captures how your software actually runs.

  • Symbol, type, call, and data-flow edges
  • OpenAPI & gRPC schema linking
  • Database tables & columns linked to ORMs
  • Queue and event-bus topology
node  fn payments.charge.refund
├─ type  (req: RefundReq) => Promise<Refund>
├─ calls stripe.refund (network)
├─ reads postgres://ledger.charges
├─ writes postgres://ledger.refunds
├─ emits kafka://billing.refund.v1
├─ PII  customer.email, customer.id
└─ consumers
   ├─ accounting-svc / projector
   ├─ fraud-detector / sink
   └─ analytics / dbt model

Open API. Yours to query.

Mergic ships a typed REST + MCP API for the graph. Build your own dashboards, migrations, and compliance reports on top of it — no scraping required.

  • REST, GraphQL, and MCP endpoints
  • TypeScript and Python SDKs
  • Stream changes via webhooks
await mergic.graph.query({
  find: "fn",
  touches: "table:users",
  writes:  "column:email",
  in:      ["payments-svc","auth-svc"]
});
// → 23 functions, 4 services

FAQ

We routinely index 10M+ line monorepos. Initial full index runs in a few hours; incremental updates are sub-second.
Yes — we ship adapters for popular RPC frameworks and an SDK for adding custom ones. Most teams get cross-service edges working in under a day.
In your region of choice (US, EU, UK, AU, JP) or in your own VPC on the Enterprise tier. Per-tenant KMS-encrypted, isolated per customer.

Map your codebase in an afternoon.

Connect your repo. Watch the graph build itself. Query it.

Book a demo →