MCP server: One MCP server.

Astria

@nodesifyRun by its publisher: served from their own domain, namespace checked by the registry.MCP server · External

Turn any codebase into a queryable knowledge graph — offline-first, zero API keys.

Code searchv1.2.0MITRust
Freeno charge per call

Runs on your machine from its package; the steps are below.

What it does

  1. Reads
  2. Writes
  3. High impact

At most: creates or changes data: records, files, settings.

What it costs

Free

Odel charges nothing per call. The publisher may charge for its own service.

Runs locally over stdio

This server isn't hosted — your MCP client launches it from a package registry. Use one of the commands below, or drop the config into your client (e.g. Claude Desktop).

npm@nodesify/astriav1.2.0

Run

npx -y @nodesify/astria

MCP client config

{
  "mcpServers": {
    "astria": {
      "command": "npx",
      "args": [
        "-y",
        "@nodesify/astria"
      ]
    }
  }
}
README3 min read

astria

Knowledge graph builder for codebases

CI npm npm downloads docs License: MIT Node Ask DeepWiki

Docs | Getting started | CLI Reference | Architecture | Worked examples | Changelog | Release notes | Security

Built by Nodesify

Find an implementation, inspect its relationships, and assess a change before editing. Astria builds a local SQLite knowledge graph with deterministic Rust/tree-sitter extraction. CLI and MCP queries use the same retrieval engine; source locations and evidence classes make results inspectable. Structural analysis needs no API key. Local embeddings and remote semantic enrichment are optional.

Install

sh
npm install -g @nodesify/astria

Node.js >= 22 is required. Prebuilt native binaries ship with the package; installation needs no Rust toolchain. macOS/Linux can also use brew install nodesify/tap/astria (tap).

Intel Mac (darwin-x64), musl Linux and windows-arm64 builds omit local embeddings because ONNX Runtime has no prebuilt runtime there. Structural analysis works; run --embed reports that embeddings are unsupported. Check astria stats --json for embeddingsSupported.

Use the graph

sh
astria run .                                # build .astria/
astria map                                  # orient by source modules
astria query "where is request authentication implemented"
astria explain <node-id>                     # inspect a returned symbol
astria path <caller-id> <callee-id>           # follow relationships
astria affected <node-id>                    # assess a proposed change
astria update .                              # refresh after editing

Use node IDs returned by the graph. Confirm important results against the linked source: name-derived call/import bindings are RESOLVED, and ambiguous targets remain INFERRED. --detail high restricts traversal to EXTRACTED/DECLARED facts. affected reports graph reachability; it cannot prove runtime behavior.

Exclude files with .astriaignore (gitignore syntax). Graphs and reports live under .astria/; read graph_report.md for orientation. Unchanged source reuses extraction caches, while updates reconcile references across the current corpus. After upgrading, run astria update . to refresh cached extraction for qualified call targets.

Guides and evidence

The evaluation harness separates file and declaration retrieval, delivered tokens, search/read cost and graph build time. Historical comparisons used tiny, exercised external sets and a single-pass search floor. New Requests and Commander questions are source-grounded, agent-authored, reserved and unexercised until their first explicit evaluation. No result establishes broad superiority or savings over a complete agent task.

Architecture and languages

Rust workspace with 20 crates plus a Node.js CLI. Uses 42 registered language configurations; exact parser coverage and optional lang-* build features are described in language support. See ARCHITECTURE.md for pipeline, caching and evidence contracts.

Astria is an independent implementation inspired by Graphify, and is not affiliated with or endorsed by that project.

Build from source

bash
# Build Rust core
cargo build --release

# Copy the native library for the source CLI (Linux)
mkdir -p packages/astria-cli/dist
cp target/release/libastria_napi.so packages/astria-cli/dist/astria.node

# Build Node.js CLI
cd packages/astria-cli && npm ci && npm run build

See Contributing for macOS and Windows native artifact paths.

Requires Rust 1.88+ (declared as rust-version in the workspace) and Node.js >= 22.

License

MIT — see LICENSE.

Contributions are welcome and accepted under the Contributor License Agreement — see CONTRIBUTING.md to get started.

Installation defaults to project scope: astria install --platform codex --scope project. Use --scope user explicitly for user-wide integrations. Run astria doctor after setup or upgrades. See the installation lifecycle guide for supported platforms, upgrade, backup/restore and complete removal.

Similar modules

Browse Code search