# Weavatrix (npm · weavatrix)

Native Weavatrix MCP: 67 read-only tools for code, local CI, n8n, Dify, agents, Mermaid, Web3.

- Trust score: 87/100 (high trust)
- Change this week: +3
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-09-20

## Components

- npm · `weavatrix`: 87/100 (this document), [markdown](https://verifymcp.io/servers/weavatrix-weavatrix/weavatrix.md), [page](https://verifymcp.io/servers/weavatrix-weavatrix/weavatrix)

## Channel facts

- Registry: `npm`
- Package: `weavatrix`
- Version: `1.17.1`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-09-20.

- **Supply Chain Security**: 100/100
  - No malware found by supply-chain analysis.
  - No known CVEs affecting this package version or its production dependencies.
  - No install/post-install scripts declared.
  - No production dependencies, so there is no dependency health to assess.
- **Provenance & Transparency**: 100/100
  - Source repository is publicly reachable at the declared URL.
  - Cryptographically verified build provenance (signed, bound to Weavatrix/weavatrix).
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 0 days ago).
  - Publishes a security disclosure policy (SECURITY.md).
- **Schema Quality & AI Usability**: 47/100
  - AI-judged instruction clarity (fair).
  - Context-footprint check failed: tool/resource definitions use about 12646 tokens (~188/item across 67 items; 67 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 89/100
  - Stability check failed: the tool surface changed between 1.9.2 and 1.17.1: 0 tool removals, 1 breaking changes, 24 additions.
- **Tool Coverage**: 82/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 45% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 67 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 68 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a current MCP spec version (2026-07-28).

## Install

### How do I install the Weavatrix MCP server?

Weavatrix runs locally as an npm package, launched with npx -y weavatrix. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add weavatrix-weavatrix -- npx -y weavatrix
```

### Cursor

```json
{
  "mcpServers": {
    "weavatrix-weavatrix": {
      "command": "npx",
      "args": [
        "-y",
        "weavatrix"
      ]
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "weavatrix-weavatrix": {
      "command": "npx",
      "args": [
        "-y",
        "weavatrix"
      ]
    }
  }
}
```

### Codex

```bash
codex mcp add weavatrix-weavatrix -- npx -y weavatrix
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "weavatrix-weavatrix": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "weavatrix"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add weavatrix-weavatrix --command npx --arg -y --arg weavatrix
```

### Hermes

```yaml
mcp_servers:
  weavatrix-weavatrix:
    command: "npx"
    args: ["-y", "weavatrix"]
```

### Netclaw

```json
{
  "McpServers": {
    "weavatrix-weavatrix": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "weavatrix"
      ]
    }
  }
}
```

### Vellum

```bash
assistant mcp add weavatrix-weavatrix -t stdio -c npx -a -y weavatrix
```

### Other

```json
{
  "mcpServers": {
    "weavatrix-weavatrix": {
      "command": "npx",
      "args": [
        "-y",
        "weavatrix"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-09-20 (score 87, +11)

- [security regression] Stability: fail → unverified
- [security regression] Tool safety: pass → unverified
- [security improvement] Known CVEs: unverified → pass
- [functional regression] Capabilities: pass → unverified
- [functional regression] Tool coverage: 100 → unverified
- [functional improvement] Dependency health: unverified → pass
- [functional] First check of Schema quality: unverified
- [functional] Package version: 1.16.4 → 1.17.1

### 2026-09-19 (score 76, −10)

- [security regression] Stability: fail → unverified
- [security regression] Tool safety: pass → unverified
- [security regression] Known CVEs: pass → unverified
- [security regression] Malware scan: pass → unverified
- [functional regression] Capabilities: pass → unverified
- [functional regression] Tool coverage: 100 → unverified
- [functional regression] Dependency health: pass → unverified
- [functional] First check of Schema quality: unverified
- [functional] Package version: 1.16.0 → 1.16.4
- [functional] Package version: 1.16.0 → 1.16.3
- [functional] Package version: 1.16.0 → 1.16.2
- [functional] Package version: 1.16.0 → 1.16.1

### 2026-09-18 (score 86, +11)

- [security improvement] Known CVEs: unverified → pass
- [functional improvement] Dependency health: unverified → pass

### 2026-09-17 (score 75, +4)

- [security regression] Known CVEs: pass → unverified
- [security regression] Stability: fail → unverified
- [security regression] Tool safety: pass → unverified
- [security improvement] Malware scan: unverified → pass
- [functional regression] Dependency health: pass → unverified
- [functional regression] Capabilities: pass → unverified
- [functional regression] Tool coverage: 100 → unverified
- [functional] First check of Schema quality: unverified
- [functional] Package version: 1.14.2 → 1.16.0
- [functional] Package version: 1.14.2 → 1.15.0

### 2026-09-16 (score 71, −13)

- [security regression] Malware scan: pass → unverified
- [security regression] Stability: fail → unverified
- [security regression] Tool safety: pass → unverified
- [functional regression] Schema quality: 8922 → 11067
- [functional regression] Capabilities: pass → unverified
- [functional regression] Tool coverage: 100 → unverified
- [functional] First check of Schema quality: unverified
- [functional] Package version: 1.11.0 → 1.14.2

### 2026-09-13 (score 84, +1)

No change was recorded against any check on this day. Stability & Change Management went from 62 to 66.

### 2026-09-11 (score 83, +1)

No change was recorded against any check on this day. Stability & Change Management went from 56 to 59.

### 2026-09-09 (score 82, +1)

No change was recorded against any check on this day. Stability & Change Management went from 49 to 52.

## MCP tools (67)

### `graph_stats` (~126 tokens)

Graph size, evidence and build freshness.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `include_capabilities` (boolean)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…

### `get_node` (~122 tokens)

Resolve one exact graph node.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `label` (string, required)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…

### `get_neighbors` (~152 tokens)

Direct typed incoming and outgoing relationships.

Input parameters:

- `cursor` (string)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `label` (string, required)
- `max_results` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `relation_filter`
- `response_detail` (string)

### `query_graph` (~277 tokens)

Bounded BFS or DFS from exact seeds or a ranked question.

Input parameters:

- `augment_seeds` (boolean)
- `context_filter` (array)
- `depth` (integer)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `flow_direction` (string)
- `include_classified` (boolean)
- `include_low_signal` (boolean)
- `intent` (string): Walk and context quota bias. Question text can also set this; exact seeds stay exact
- `max_nodes` (integer)
- `mode` (string)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `question` (string)
- `relation_filter`
- `seed_files` (array)
- `seed_symbols` (array)
- `token_budget` (integer): Approximate output ceiling in tokens (serialized bytes / 4); result arrays are trimmed from the tail to fit and the report states what was dropped

### `god_nodes` (~133 tokens)

Rank high-connectivity production nodes.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `include_classified` (boolean)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `top_n` (integer)

### `shortest_path` (~199 tokens)

Shortest typed path with per-hop witnesses, path kind, and work limits.

Input parameters:

- `directed` (boolean)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `flow_direction` (string)
- `max_edges` (integer)
- `max_hops` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `path_kind` (string): Restrict hop relations. A mixed found path is never an execution chain
- `relation_filter`
- `source` (string, required)
- `target` (string, required)

### `get_dependents` (~174 tokens)

Bounded transitive reverse blast radius.

Input parameters:

- `depth` (integer)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `include_container_importers` (boolean)
- `label` (string, required)
- `max_nodes` (integer)
- `max_references` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `precision` (string)
- `timeout_ms` (integer)

### `change_impact` (~229 tokens)

Read-only Git change impact at symbol granularity when a baseline exists.

Input parameters:

- `base` (string)
- `base_ref` (string)
- `depth` (integer)
- `diff` (string)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `files` (array)
- `head_ref` (string)
- `max_nodes` (integer)
- `max_references` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `precision` (string)
- `target` (string): Deprecated alias for a single path in files; equivalent to files:[target]. Errors when both are present and disagree
- `timeout_ms` (integer)

### `map_stacktrace` (~136 tokens)

Map stack-trace text onto repository files and symbols.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `max_frames` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `text` (string, required)

### `select_tests` (~218 tokens)

Select the test suites a change most plausibly needs to run.

Input parameters:

- `base` (string)
- `base_ref` (string)
- `depth` (integer)
- `diff` (string)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `files` (array)
- `head_ref` (string)
- `max_nodes` (integer)
- `max_tests` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `precision` (string)
- `target` (string): Deprecated alias for a single path in files; equivalent to files:[target]. Errors when both are present and disagree

### `git_history` (~220 tokens)

Bounded direct Git history without launching git.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `first_parent` (boolean)
- `include_analytics` (boolean)
- `max_commits` (integer)
- `max_pairs` (integer)
- `min_pair_count` (integer)
- `months` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `revision` (string)
- `token_budget` (integer): Approximate output ceiling in tokens (serialized bytes / 4); result arrays are trimmed from the tail to fit and the report states what was dropped
- `top_n` (integer)

### `git_read_blob` (~198 tokens)

Bounded UTF-8 file content at an immutable Git revision or blob OID; binary blobs are refused.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `max_bytes` (integer)
- `oid` (string)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `path` (string)
- `revision` (string)
- `token_budget` (integer): Approximate output ceiling in tokens (serialized bytes / 4); result arrays are trimmed from the tail to fit and the report states what was dropped

### `cross_repo_git` (~192 tokens)

Parallel histories, shared commits, or diffs across named local repositories.

Input parameters:

- `action` (string)
- `base_ref` (string)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `first_parent` (boolean)
- `head_ref` (string)
- `left` (string)
- `max_commits` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `repositories` (array, required)
- `revision` (string)
- `right` (string)

### `verified_change` (~255 tokens)

Composite pre-commit evidence and conservative verdict.

Input parameters:

- `api_contract` (object)
- `base_ref` (string)
- `data_flow_depth` (integer)
- `diff` (string)
- `duplicate_ratchet` (boolean)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `files` (array)
- `head_ref` (string)
- `impact_depth` (integer)
- `max_data_flow_edges` (integer)
- `max_impact_nodes` (integer)
- `max_symbols` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `phase` (string)
- `precision` (string)
- `run_tests` (boolean)
- `task` (string, required)
- `test_timeout_ms` (integer)
- `tests` (array)

### `trace_api_contract` (~347 tokens)

Cross-repository HTTP, GraphQL, gRPC and event-transport contract evidence for named backend and client roots.

Input parameters:

- `auto_discover_wrappers` (boolean)
- `backend` (string, required)
- `changed_files` (array)
- `client_names` (array)
- `client_wrappers` (object)
- `clients` (array, required)
- `cursor` (string)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `include_classified` (boolean)
- `include_tests` (boolean)
- `max_affected_files` (integer)
- `max_endpoints` (integer)
- `max_impact_depth` (integer)
- `max_matches` (integer)
- `max_source_file_bytes` (integer)
- `max_source_files` (integer)
- `method` (string)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `page_size` (integer)
- `path` (string)
- `per_item_limit` (integer)
- `response_detail` (string)
- `runtime_config` (object)
- `runtime_evidence_files` (object)
- `runtime_evidence_max_age_hours` (integer)
- `top_n` (integer)
- `transport` (string)

### `get_community` (~203 tokens)

Return one community: derived subsystems by default, or weak connectivity.

Input parameters:

- `community_id` (integer, required)
- `cursor` (string)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `hub_degree` (integer)
- `include_non_product` (boolean)
- `max_nodes` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `resolution` (integer)
- `view` (string): subsystems is a derived directory projection that keeps weak bridges and shared utilities from merging modules; connectivity is the previous weak-component view

### `search_code` (~201 tokens)

Literal or Rust-regex repository search without ripgrep.

Input parameters:

- `after` (integer)
- `before` (integer)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `glob` (string)
- `is_regex` (boolean)
- `max_results` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `query` (string, required)
- `token_budget` (integer): Approximate output ceiling in tokens (serialized bytes / 4); result arrays are trimmed from the tail to fit and the report states what was dropped

### `read_source` (~192 tokens)

Bounded source context by node or repository path.

Input parameters:

- `after` (integer)
- `before` (integer)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `label` (string)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `path` (string)
- `start_line` (integer)
- `token_budget` (integer): Approximate output ceiling in tokens (serialized bytes / 4); result arrays are trimmed from the tail to fit and the report states what was dropped

### `inspect_symbol` (~253 tokens)

Definition, direct relationships and source evidence by label or source position.

Input parameters:

- `column` (integer): 1-based source column of the occurrence to resolve
- `context_lines` (integer)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `label` (string)
- `line` (integer): 1-based source line of the occurrence to resolve
- `max_references` (integer): Cap on returned relationship edges (default 50)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `path` (string): Repository-relative file containing the occurrence
- `precision` (string)
- `scip_path` (string): Repository-relative SCIP index already on disk; never generated or spawned. Defaults to index.scip or .scip/index.scip when present
- `timeout_ms` (integer)

### `go_to_definition` (~208 tokens)

Resolve the symbol at a source position to its definition without guessing by name.

Input parameters:

- `column` (integer, required): 1-based source column of the occurrence to resolve
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `line` (integer, required): 1-based source line of the occurrence to resolve
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `path` (string, required): Repository-relative file containing the occurrence
- `scip_path` (string): Repository-relative SCIP index already on disk; never generated or spawned. Defaults to index.scip or .scip/index.scip when present

### `find_references` (~239 tokens)

Occurrences of the symbol at a position or label, from the graph and an on-disk SCIP index if present.

Input parameters:

- `column` (integer): 1-based source column of the occurrence to resolve
- `cursor` (string)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `label` (string)
- `line` (integer): 1-based source line of the occurrence to resolve
- `max_results` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `path` (string): Repository-relative file containing the occurrence
- `scip_path` (string): Repository-relative SCIP index already on disk; never generated or spawned. Defaults to index.scip or .scip/index.scip when present

### `context_bundle` (~352 tokens)

Task-aware source bundle with category quotas and dedup.

Input parameters:

- `column` (integer): 1-based source column of the occurrence to resolve
- `context_lines` (integer)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `include_classified` (boolean)
- `intent` (string): Walk and context quota bias. Question text can also set this; exact seeds stay exact
- `label` (string)
- `line` (integer): 1-based source line of the occurrence to resolve
- `max_reexports` (integer)
- `max_references` (integer): Cap on returned relationship edges (default 50)
- `max_related` (integer)
- `max_source_files` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `path` (string): Repository-relative file containing the occurrence
- `precision` (string)
- `scip_path` (string): Repository-relative SCIP index already on disk; never generated or spawned. Defaults to index.scip or .scip/index.scip when present
- `timeout_ms` (integer)
- `token_budget` (integer): Approximate output ceiling in tokens; relationships and related source trim first and the target symbol's own source is never dropped - a budget below the target itself is an explicit error

### `find_duplicates` (~261 tokens)

Deterministic Type-1/2/3 clone families.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `include_boilerplate` (boolean)
- `include_classified` (boolean)
- `include_declarative` (boolean): High-recall by default; false suppresses data-only catalogs but retains model, schema, and contract clones
- `include_strings` (boolean): Also compare multi-line string payloads - inline SQL, templates, embedded scripts - which the code pass sees as a single token
- `include_tests` (boolean)
- `min_similarity` (number): 0..1 is a fraction; values above 1 through 100 are percentages
- `min_tokens` (integer)
- `mode` (string)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `top_n` (integer)

### `find_dead_code` (~202 tokens)

Conservative unreferenced-symbol review queue.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `include_classified` (boolean)
- `include_tests` (boolean)
- `kinds` (array)
- `min_confidence` (integer): Evidence tiers: 25 = whole unreferenced file, 50 = exported symbol nothing reaches, 85 = private symbol nothing references. Bounded static analysis never reaches 100
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `path` (string)
- `top_n` (integer)

### `run_audit` (~292 tokens)

Repository structure and evidence completeness audit.

Input parameters:

- `base_ref` (string)
- `category` (string)
- `changed_files` (array)
- `debt` (string)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `include_capabilities` (boolean)
- `include_classified` (boolean)
- `include_tests` (boolean): When true (the default), attach revision-bound external test evidence if the caller supplied test_evidence or test_evidence_path. Weavatrix still does not execute tests
- `max_findings` (integer)
- `min_severity` (string)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `test_evidence` (object): Inline weavatrix.test-evidence.v1 object. Mutually exclusive with test_evidence_path. The engine does not run the suite
- `test_evidence_path` (string): Repository-relative JSON file with schema weavatrix.test-evidence.v1. Mutually exclusive with test_evidence

### `coverage_map` (~171 tokens)

Ingest LCOV, Istanbul, Tarpaulin, or LLVM reports onto graph nodes. Does not run tests. A missing report is unmeasured, not 0%. Quality writes `.weavatrix/coverage/lcov.info`.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `path` (string)
- `top_n` (integer)

### `hot_path_review` (~250 tokens)

Rank functions by static complexity times resolved call fan-in.

Input parameters:

- `call_threshold` (integer): Only functions with at least this many resolved call sites targeting them
- `cyclomatic_threshold` (integer): Only functions with at least this many branch decisions
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `include_classified` (boolean)
- `include_tests` (boolean)
- `loop_depth_threshold` (integer): Only functions whose deepest loop nesting reaches this depth
- `min_score` (integer): Floor on score = complexity_cost x (1 + resolved call fan-in), where complexity_cost = extent lines + 3 x cyclomatic + 10 x loop nesting
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `path` (string)
- `top_n` (integer)

### `perf_attribution` (~335 tokens)

Correlate a measurement series with the declarations that changed between the revisions that produced it.

Input parameters:

- `direction` (string)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `include_classified` (boolean)
- `include_tests` (boolean)
- `max_revisions` (integer): Most recent measurements to walk (default 12); each distinct revision costs one full analysis of that revision
- `measurements_file` (string, required): Repository-relative tab- or comma-separated table the caller's harness wrote; comment rows starting with # are ignored, and rows without a finite metric are reported as skipped rather than dropped
- `metric` (string, required): Column holding the measured number, for example nanoseconds per operation. The engine measures nothing itself: it correlates the caller's numbers with structural change
- `min_delta_percent` (integer): Steps whose relative change is inside this band are reported as flat; set it from the noise floor that a repeated revision measures
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `path` (string)
- `revision_column` (string): Column holding the Git revision each measurement was taken at; unresolvable revisions are reported as skipped
- `top_n` (integer)

### `list_communities` (~187 tokens)

List derived subsystems by default, or weak coupling connectivity.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `hub_degree` (integer)
- `include_non_product` (boolean)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `resolution` (integer)
- `top_n` (integer)
- `view` (string): subsystems is a derived directory projection that keeps weak bridges and shared utilities from merging modules; connectivity is the previous weak-component view

### `module_map` (~156 tokens)

Production folder map at a requested directory depth.

Input parameters:

- `depth` (integer): Directory depth that defines one module (default 1: top-level folders)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `include_non_product` (boolean)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `top_n` (integer)

### `build_graph` (~127 tokens)

Workspace, target and runner topology from manifest evidence.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `max_members` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…

### `list_endpoints` (~158 tokens)

Inventory statically extracted HTTP endpoints, including hand-rolled req.method/pathname conditions.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `include_classified` (boolean)
- `max_results` (integer)
- `method` (string)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `path` (string)

### `trace_endpoint` (~264 tokens)

Resolve an HTTP endpoint by exact method/path and return its bounded execution/call path.

Input parameters:

- `context_lines` (integer)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `handler_file` (string): Repo-relative file (or unambiguous path suffix) that must expose the route; filters candidates and resolves same-route declarations across files
- `include_classified` (boolean)
- `match` (string): How the path argument compares to the served route; exact is the default and refuses ends-with or starts-with shortcuts
- `max_depth` (integer)
- `max_excerpts` (integer)
- `max_nodes` (integer)
- `method` (string): Normalized exact HTTP method such as GET or POST; partial prefixes like PO do not match POST
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `path` (string, required)

### `rebuild_graph` (~141 tokens)

Rebuild the derived in-memory graph without source writes.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `mode` (string)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `precision` (string)
- `scope` (string)

### `graph_diff` (~215 tokens)

Compare the current snapshot with an immutable Git revision.

Input parameters:

- `base_ref` (string, required)
- `detail` (string): Aggregate edge churn by source file, target file, and relation by default; request edges for individual edge provenance
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `head_ref` (string)
- `max_results` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `path` (string)
- `token_budget` (integer): Approximate output ceiling in tokens (serialized bytes / 4); result arrays are trimmed from the tail to fit and the report states what was dropped

### `get_architecture_contract` (~152 tokens)

Read or preview the local target-architecture contract.

Input parameters:

- `action` (string)
- `baseline_mode` (string)
- `candidate_contract` (object)
- `confirm_token` (string)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…

### `architecture_inventory` (~130 tokens)

Observed packages, production folders, and typed edges. Not a style label and not the starter contract.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…

### `ci_restrictions` (~207 tokens)

Local GitHub Actions jobs, literal check invocations, configured restrictions and unobserved enforcement.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `max_results` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `scenario` (object): Optional local scenario. For pull_request, branch means the base branch. No secrets or credentials.
- `scope` (string)
- `token_budget` (integer): Approximate output ceiling in tokens (serialized bytes / 4); result arrays are trimmed from the tail to fit and the report states what was dropped

### `explain_restriction` (~156 tokens)

Explain one local restriction with its invocation, applicability and evidence limits.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `id` (string, required)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `scenario` (object): Optional local scenario. For pull_request, branch means the base branch. No secrets or credentials.

### `prepare_change` (~131 tokens)

Select architecture rules for intended changed files.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `files` (array, required)
- `intent` (string)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…

### `verify_architecture` (~118 tokens)

Verify graph dependencies against the active contract.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…

### `verify_capabilities` (~143 tokens)

Resolve declared capabilities against exposed endpoint evidence.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `include_classified` (boolean)
- `include_tests` (boolean)
- `max_results` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…

### `explain_architecture_violation` (~125 tokens)

Explain one active contract violation.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `fingerprint` (string, required)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…

### `propose_architecture_exception` (~142 tokens)

Return a reviewable exception proposal without writing it.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `expires` (string)
- `fingerprint` (string, required)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `reason` (string, required)

### `open_repo` (~162 tokens)

Retarget to another local repository. Graphs unused for 20 minutes unload; asking for one again rescans that folder.

Input parameters:

- `build` (boolean)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `mode` (string)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `path` (string, required)
- `precision` (string)

### `list_known_repos` (~119 tokens)

List repositories with an in-process graph.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…

### `semantic_link` (~200 tokens)

Build inferred semantic graph evidence from supplied vectors.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `min_similarity` (number): 0..1 is a fraction; values above 1 through 100 are percentages
- `model` (string)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `selection` (string)
- `top_k` (string)
- `vectors` (array, required): Caller-supplied embedding rows. Each object requires node (string graph id) and values (array of numbers). Do not send id/vector.

### `vector_search` (~175 tokens)

Exact or bounded approximate nearest-neighbor search.

Input parameters:

- `exact` (boolean)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `query` (array, required)
- `top_k` (string)
- `vectors` (array, required): Caller-supplied embedding rows. Each object requires node (string graph id) and values (array of numbers). Do not send id/vector.

### `seo_link_suggestions` (~241 tokens)

Directional SEO internal-link evidence from supplied page profiles.

Input parameters:

- `allow_cross_language` (boolean)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `min_similarity` (number): 0..1 is a fraction; values above 1 through 100 are percentages
- `model` (string)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `pages` (array, required): Page profiles for SEO linking. Each object requires node, site, and canonical; language and title are optional.
- `selection` (string)
- `top_k` (string)
- `vectors` (array, required): Caller-supplied embedding rows. Each object requires node (string graph id) and values (array of numbers). Do not send id/vector.

### `memory_context` (~179 tokens)

Compile bounded temporal memory context from supplied events.

Input parameters:

- `events` (array, required): StoredEvent-shaped rows (not empty objects). Each event needs metadata with at least id, stream_id, stream_version, global_position, event_type, occurred_at, recorded_at, agent_id, and session_id, pl…
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `request` (object, required)

### `n8n_inventory` (~158 tokens)

List n8n workflows, nodes, entry points, and analysis bounds from exported JSON.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `max_results` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `path` (string): Repository-relative workflow file or path fragment; omit to list every recognized export

### `n8n_trace` (~179 tokens)

Upstream and downstream n8n port flow, output dependencies, and static subworkflow links.

Input parameters:

- `cursor` (string): Opaque page token from a previous n8n_trace page.next_cursor; format v1:<offset>
- `depth` (integer)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `label` (string, required)
- `max_nodes` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…

### `n8n_context` (~173 tokens)

Bounded n8n context for one node: proven dependencies, expression sites, and explicit unknowns.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `label` (string, required)
- `max_related` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `task` (string): What the caller intends to change or inspect; used only to keep the bounded context on that question

### `dify_inventory` (~157 tokens)

List Dify apps, nodes, modes, and analysis bounds from exported YAML.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `max_results` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `path` (string): Repository-relative Dify YAML file or path fragment; omit to list every recognized export

### `dify_trace` (~174 tokens)

Upstream and downstream Dify port flow, selectors, and typed data relations.

Input parameters:

- `cursor` (string): Opaque page token from a previous dify_trace page.next_cursor; format v1:<offset>
- `depth` (integer)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `label` (string, required)
- `max_nodes` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…

### `dify_context` (~170 tokens)

Bounded Dify context for one node: proven consumers, selector sites, and explicit gaps.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `label` (string, required)
- `max_related` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `task` (string): What the caller intends to change or inspect; used only to keep the bounded context on that question

### `agent_inventory` (~161 tokens)

List Agent Plugins, Skills, and MCP server bindings from local package files without launching them.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `max_results` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `path` (string): Repository-relative plugin, skill, or MCP config path fragment; omit to list every recognized package file

### `agent_trace` (~146 tokens)

Show the declared origin, profile, transforms, and package bindings for one plugin, skill, or MCP server.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `label` (string, required)
- `max_related` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…

### `agent_context` (~167 tokens)

Bounded agent-package context: declared bindings, source fragments, and explicit authorization gaps.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `label` (string, required)
- `max_related` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `task` (string): What the caller intends to change or inspect; used only to keep the bounded context on that question

### `agent_change_impact` (~169 tokens)

Compare two supplied MCP catalog snapshots and report contract changes, adapter compensation, and declared consumers.

Input parameters:

- `after` (string, required): Repository-relative catalog snapshot used as the current contract
- `before` (string, required): Repository-relative catalog snapshot used as the previous contract
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `max_results` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…

### `diagram_inventory` (~150 tokens)

List Mermaid flowchart diagrams, native elements, and explicit sidecar bindings.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `max_results` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `path` (string): Repository-relative Mermaid file, Markdown fence, or path fragment

### `diagram_trace` (~172 tokens)

Walk declared_architecture arrows inside one Mermaid diagram without treating them as production Calls.

Input parameters:

- `cursor` (string): Opaque page token from a previous diagram_trace page.next_cursor; format v1:<offset>
- `depth` (integer)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `label` (string, required)
- `max_nodes` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…

### `diagram_context` (~169 tokens)

Bounded Mermaid context: source fragments, explicit bindings, and gaps that remain unproven.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `label` (string, required)
- `max_related` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `task` (string): What the caller intends to change or inspect; used only to keep the bounded context on that question

### `web3_inventory` (~157 tokens)

List supplied contract ABIs, compiler artifacts, and static viem/wagmi consumers without touching a chain.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `max_results` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `path` (string): Repository-relative ABI, artifact, or consumer path fragment

### `web3_trace` (~176 tokens)

Walk proven ABI, artifact, and consumer bindings for one Web3 member or call site.

Input parameters:

- `cursor` (string): Opaque page token from a previous web3_trace page.next_cursor; format v1:<offset>
- `depth` (integer)
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `label` (string, required)
- `max_nodes` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…

### `web3_impact` (~215 tokens)

Compare supplied ABI revisions and report consumer-specific interface deltas, including silent event misdecode risk.

Input parameters:

- `baseline` (string): Repository-relative consumer or previous ABI path
- `candidate` (string): Repository-relative provider or new ABI path
- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `max_results` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `path` (string)
- `provider` (string): Alias for candidate when comparing a new contract interface
- `task` (string): What the caller intends to change or inspect; used only to keep the bounded context on that question

### `web3_context` (~172 tokens)

Bounded Web3 context: changed ABI fragment, proven call or decoder sites, and explicit deployment gaps.

Input parameters:

- `expected_repository` (string): Path or folder name of the repository this call is about; the call fails instead of answering when the active repository differs. Every answer also carries a repository_context block naming its root,…
- `label` (string, required)
- `max_related` (integer)
- `output_format` (string): text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is sa…
- `task` (string): What the caller intends to change or inspect; used only to keep the bounded context on that question

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/weavatrix-weavatrix/weavatrix#diagnostics

## Score history

- 2026-09-20: 87
- 2026-09-19: 76
- 2026-09-18: 86
- 2026-09-17: 75
- 2026-09-16: 71
- 2026-09-15: 84
- 2026-09-14: 84
- 2026-09-13: 84
- 2026-09-12: 83
- 2026-09-11: 83
- 2026-09-10: 82
- 2026-09-09: 82
- 2026-09-08: 81
- 2026-09-07: 81
- 2026-09-06: 65
- 2026-09-05: 79
- 2026-09-04: 78
- 2026-09-03: 78
- 2026-09-02: 77
- 2026-09-01: 77
- 2026-08-31: 74
- 2026-08-30: 74
- 2026-08-29: 74
- 2026-08-28: 74
- 2026-08-27: 74
- 2026-08-26: 74
- 2026-08-25: 72
- 2026-08-24: 57

## Common questions

### What is the Weavatrix MCP server?

Weavatrix is an MCP server listed in the public MCP registry as io.github.Weavatrix/weavatrix. Native Weavatrix MCP: 67 read-only tools for code, local CI, n8n, Dify, agents, Mermaid, Web3. This page covers its npm package (weavatrix).

### Is the Weavatrix MCP server safe to use?

Weavatrix scores 87 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 20 September 2026. It declares no install or post-install scripts. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the Weavatrix MCP server expose?

Weavatrix exposes 67 tools: graph_stats, get_node, get_neighbors, query_graph, god_nodes, and 62 more. Their descriptions and schemas cost roughly 12,630 tokens of context every time the server is loaded.

### Is the Weavatrix MCP server still maintained?

Weavatrix is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

### What licence is the Weavatrix MCP server under?

Weavatrix declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.

## Links

- npm package: https://www.npmjs.com/package/weavatrix
- Socket report: https://socket.dev/npm/package/weavatrix
- Repository: https://github.com/Weavatrix/weavatrix
- Website: https://weavatrix.com/
- Changelog RSS feed: https://verifymcp.io/servers/weavatrix-weavatrix/weavatrix.xml
- Changelog JSON feed: https://verifymcp.io/servers/weavatrix-weavatrix/weavatrix.json
- HTML version of this page: https://verifymcp.io/servers/weavatrix-weavatrix/weavatrix
