carto-md 2.0.9 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (172) hide show
  1. package/CONTRIBUTING.md +19 -15
  2. package/README.md +192 -415
  3. package/docs/api/README.md +99 -0
  4. package/docs/api/did_we_discuss_this.md +34 -0
  5. package/docs/api/dismiss_suggestion.md +34 -0
  6. package/docs/api/explain_change_in_natural_language.md +33 -0
  7. package/docs/api/find_consumers_of_api.md +34 -0
  8. package/docs/api/get_action_patterns.md +32 -0
  9. package/docs/api/get_active_drift.md +32 -0
  10. package/docs/api/get_active_suggestions.md +25 -0
  11. package/docs/api/get_ai_cost_attribution.md +32 -0
  12. package/docs/api/get_arch_events.md +42 -0
  13. package/docs/api/get_architectural_drift.md +37 -0
  14. package/docs/api/get_architecture.md +25 -0
  15. package/docs/api/get_blast_radius.md +34 -0
  16. package/docs/api/get_canonical_pattern.md +39 -0
  17. package/docs/api/get_change_plan.md +34 -0
  18. package/docs/api/get_change_velocity.md +32 -0
  19. package/docs/api/get_churn_vs_blast_radius.md +32 -0
  20. package/docs/api/get_complexity_trend.md +39 -0
  21. package/docs/api/get_context.md +34 -0
  22. package/docs/api/get_conventions.md +32 -0
  23. package/docs/api/get_cross_domain.md +25 -0
  24. package/docs/api/get_cross_language_call_graph.md +25 -0
  25. package/docs/api/get_cross_repo_blast_radius.md +34 -0
  26. package/docs/api/get_cross_team_coupling.md +25 -0
  27. package/docs/api/get_data_flow.md +33 -0
  28. package/docs/api/get_dead_code_with_confidence.md +32 -0
  29. package/docs/api/get_decision_log.md +32 -0
  30. package/docs/api/get_dependency_surface.md +25 -0
  31. package/docs/api/get_domain.md +34 -0
  32. package/docs/api/get_domain_evolution.md +39 -0
  33. package/docs/api/get_domain_health.md +32 -0
  34. package/docs/api/get_domains_list.md +25 -0
  35. package/docs/api/get_drift_digest.md +32 -0
  36. package/docs/api/get_env_vars.md +32 -0
  37. package/docs/api/get_evolution_delta.md +36 -0
  38. package/docs/api/get_file_ownership.md +33 -0
  39. package/docs/api/get_file_summary.md +34 -0
  40. package/docs/api/get_high_impact_files.md +32 -0
  41. package/docs/api/get_hot_in_prod_no_tests.md +34 -0
  42. package/docs/api/get_hotspot_files.md +37 -0
  43. package/docs/api/get_iac_resources.md +25 -0
  44. package/docs/api/get_interface_contract.md +33 -0
  45. package/docs/api/get_intervention_history.md +32 -0
  46. package/docs/api/get_invariants.md +37 -0
  47. package/docs/api/get_llm_enrichment.md +33 -0
  48. package/docs/api/get_microservice_cut_points.md +32 -0
  49. package/docs/api/get_microservices_migration_cut_points.md +25 -0
  50. package/docs/api/get_minimal_context_for_intent.md +39 -0
  51. package/docs/api/get_models.md +32 -0
  52. package/docs/api/get_neighbors.md +39 -0
  53. package/docs/api/get_org_architecture.md +25 -0
  54. package/docs/api/get_org_domain_mapping.md +25 -0
  55. package/docs/api/get_pending_decisions.md +32 -0
  56. package/docs/api/get_predictive_risk.md +32 -0
  57. package/docs/api/get_progressive_disclosure_tree.md +25 -0
  58. package/docs/api/get_recent_decisions.md +37 -0
  59. package/docs/api/get_risk_weighted_blast_radius.md +32 -0
  60. package/docs/api/get_routes.md +25 -0
  61. package/docs/api/get_safety_checklist.md +33 -0
  62. package/docs/api/get_semantic_diff.md +34 -0
  63. package/docs/api/get_service_boundary_violations.md +25 -0
  64. package/docs/api/get_service_dependency_graph.md +25 -0
  65. package/docs/api/get_session_context.md +32 -0
  66. package/docs/api/get_similar_patterns.md +39 -0
  67. package/docs/api/get_stale_docs.md +25 -0
  68. package/docs/api/get_structure.md +25 -0
  69. package/docs/api/get_temporal_context.md +34 -0
  70. package/docs/api/get_test_coverage_map.md +25 -0
  71. package/docs/api/get_token_budget_report.md +36 -0
  72. package/docs/api/get_upgrade_risk.md +25 -0
  73. package/docs/api/get_working_memory.md +25 -0
  74. package/docs/api/ingest_otlp_traces.md +34 -0
  75. package/docs/api/scaffold_for_intent.md +34 -0
  76. package/docs/api/search_routes.md +34 -0
  77. package/docs/api/simulate_change_impact.md +37 -0
  78. package/docs/api/validate_change.md +39 -0
  79. package/docs/api/validate_diff.md +39 -0
  80. package/docs/concepts/anci.md +87 -0
  81. package/docs/concepts/blast-radius.md +66 -0
  82. package/docs/concepts/domains.md +91 -0
  83. package/docs/concepts/import-graph.md +102 -0
  84. package/docs/concepts/mcp-integration.md +148 -0
  85. package/docs/guides/adding-feature-safely.md +101 -0
  86. package/docs/guides/ci-integration.md +175 -0
  87. package/docs/guides/monorepo-setup.md +121 -0
  88. package/docs/guides/onboarding-new-engineer.md +121 -0
  89. package/docs/guides/pre-merge-review.md +139 -0
  90. package/docs/migration/v1-to-v2.md +110 -0
  91. package/docs/quickstart.md +95 -0
  92. package/docs/scale.md +2 -2
  93. package/docs/troubleshooting.md +180 -0
  94. package/package.json +10 -4
  95. package/scripts/gen-api-docs.js +170 -0
  96. package/src/acp/agent.js +83 -11
  97. package/src/acp/config.js +64 -0
  98. package/src/acp/persistence.js +146 -0
  99. package/src/acp/providers/anthropic.js +179 -27
  100. package/src/acp/providers/index.js +15 -2
  101. package/src/acp/providers/openai.js +164 -38
  102. package/src/acp/providers/sse.js +82 -0
  103. package/src/acp/safety.js +128 -0
  104. package/src/acp/session.js +73 -0
  105. package/src/adjacent/call-graph.js +170 -0
  106. package/src/adjacent/iac.js +167 -0
  107. package/src/adjacent/llm-enrich.js +35 -0
  108. package/src/adjacent/runtime.js +216 -0
  109. package/src/adjacent/semantic-diff.js +143 -0
  110. package/src/agents/scan-structure.js +1 -1
  111. package/src/ai/context-builder.js +215 -0
  112. package/src/ai/retrieval/lexical.js +122 -0
  113. package/src/ai/retrieval/rrf.js +121 -0
  114. package/src/ai/retrieval/semantic.js +35 -0
  115. package/src/ai/retrieval/structural.js +82 -0
  116. package/src/ai/tools.js +423 -0
  117. package/src/anci/emit.js +2 -2
  118. package/src/bitmap/index.js +1 -1
  119. package/src/bitmap/tools.js +2 -2
  120. package/src/brain/conventions/index.js +185 -0
  121. package/src/brain/index.js +31 -0
  122. package/src/brain/invariants/index.js +252 -0
  123. package/src/brain/procedural/index.js +181 -0
  124. package/src/brain/suggestions/index.js +153 -0
  125. package/src/brain/working/index.js +170 -0
  126. package/src/cli/check.js +47 -1
  127. package/src/cli/diff.js +83 -0
  128. package/src/cli/doctor.js +270 -0
  129. package/src/cli/explain.js +61 -0
  130. package/src/cli/index.js +101 -0
  131. package/src/cli/init.js +143 -5
  132. package/src/cli/org.js +172 -0
  133. package/src/cli/pr-impact.js +59 -2
  134. package/src/cli/serve.js +1 -1
  135. package/src/cli/status.js +211 -0
  136. package/src/cli/sync.js +2 -2
  137. package/src/cli/temporal.js +188 -0
  138. package/src/cli/validate.js +201 -0
  139. package/src/cli/watch.js +4 -4
  140. package/src/cli/why.js +101 -0
  141. package/src/extractors/frameworks.js +236 -0
  142. package/src/extractors/languages/dart.js +138 -0
  143. package/src/extractors/languages/go.js +11 -1
  144. package/src/extractors/languages/javascript.js +13 -3
  145. package/src/extractors/languages/kotlin.js +169 -0
  146. package/src/extractors/languages/php.js +195 -0
  147. package/src/extractors/languages/python.js +12 -1
  148. package/src/extractors/languages/swift.js +140 -0
  149. package/src/extractors/languages/typescript.js +15 -2
  150. package/src/extractors/plugin-api.js +102 -0
  151. package/src/mcp/files-without-tests.js +285 -0
  152. package/src/mcp/middleware/index.js +451 -0
  153. package/src/mcp/server.js +2292 -0
  154. package/src/mcp/validate.js +1 -1
  155. package/src/org/detect.js +262 -0
  156. package/src/org/queries.js +144 -0
  157. package/src/org/store.js +173 -0
  158. package/src/org/sync.js +106 -0
  159. package/src/predictive/cut-points.js +83 -0
  160. package/src/predictive/drift-digest.js +88 -0
  161. package/src/predictive/ownership.js +145 -0
  162. package/src/predictive/risk-score.js +121 -0
  163. package/src/predictive/validate-change.js +55 -0
  164. package/src/store/store-adapter.js +3 -3
  165. package/src/store/{sync-v2.js → sync.js} +53 -13
  166. package/src/temporal/backfill.js +211 -0
  167. package/src/temporal/delta.js +85 -0
  168. package/src/temporal/events.js +180 -0
  169. package/src/temporal/queries.js +358 -0
  170. package/src/temporal/snapshot.js +151 -0
  171. package/src/temporal/store.js +400 -0
  172. package/src/mcp/server-v2.js +0 -986
@@ -0,0 +1,37 @@
1
+ # `get_hotspot_files`
2
+
3
+ Top files by churn × blast_radius score over a window. The CodeHealth heuristic: high-churn files in high-blast-radius positions are where bugs cluster.
4
+
5
+ ## Input schema
6
+
7
+ ```json
8
+ {
9
+ "type": "object",
10
+ "properties": {
11
+ "time_range": {
12
+ "type": "string",
13
+ "description": "Window like \"30d\", \"90d\" (default \"90d\")."
14
+ },
15
+ "limit": {
16
+ "type": "number",
17
+ "description": "Max rows (default 20)."
18
+ }
19
+ },
20
+ "required": []
21
+ }
22
+ ```
23
+
24
+ ## Required arguments
25
+
26
+ _None._
27
+
28
+ ## Properties
29
+
30
+ | Name | Type | Description |
31
+ |------|------|-------------|
32
+ | `time_range` | string | Window like "30d", "90d" (default "90d"). |
33
+ | `limit` | number | Max rows (default 20). |
34
+
35
+ ## See also
36
+
37
+ - [Index of all MCP tools](./README.md)
@@ -0,0 +1,25 @@
1
+ # `get_iac_resources`
2
+
3
+ Surface Terraform / Helm / Pulumi / AWS CDK resources discovered in the repo. Returns kind, name, file, dependencies.
4
+
5
+ ## Input schema
6
+
7
+ ```json
8
+ {
9
+ "type": "object",
10
+ "properties": {},
11
+ "required": []
12
+ }
13
+ ```
14
+
15
+ ## Required arguments
16
+
17
+ _None._
18
+
19
+ ## Properties
20
+
21
+ _None._
22
+
23
+ ## See also
24
+
25
+ - [Index of all MCP tools](./README.md)
@@ -0,0 +1,33 @@
1
+ # `get_interface_contract`
2
+
3
+ Exported symbols + models + routes the file exposes. Use to understand a module's public API before consuming it.
4
+
5
+ ## Input schema
6
+
7
+ ```json
8
+ {
9
+ "type": "object",
10
+ "properties": {
11
+ "file": {
12
+ "type": "string"
13
+ }
14
+ },
15
+ "required": [
16
+ "file"
17
+ ]
18
+ }
19
+ ```
20
+
21
+ ## Required arguments
22
+
23
+ - `file`
24
+
25
+ ## Properties
26
+
27
+ | Name | Type | Description |
28
+ |------|------|-------------|
29
+ | `file` | string | |
30
+
31
+ ## See also
32
+
33
+ - [Index of all MCP tools](./README.md)
@@ -0,0 +1,32 @@
1
+ # `get_intervention_history`
2
+
3
+ List interventions (Carto-issued violations and suggestions) optionally filtered by file. Use to see prior warnings on a file before editing it.
4
+
5
+ ## Input schema
6
+
7
+ ```json
8
+ {
9
+ "type": "object",
10
+ "properties": {
11
+ "file": {
12
+ "type": "string",
13
+ "description": "Optional file filter (relative path from project root)."
14
+ }
15
+ },
16
+ "required": []
17
+ }
18
+ ```
19
+
20
+ ## Required arguments
21
+
22
+ _None._
23
+
24
+ ## Properties
25
+
26
+ | Name | Type | Description |
27
+ |------|------|-------------|
28
+ | `file` | string | Optional file filter (relative path from project root). |
29
+
30
+ ## See also
31
+
32
+ - [Index of all MCP tools](./README.md)
@@ -0,0 +1,37 @@
1
+ # `get_invariants`
2
+
3
+ Architectural invariants mined from the import graph: "Domain X never imports from Y", "Files in Z always export N symbols", etc. Confidence-scored.
4
+
5
+ ## Input schema
6
+
7
+ ```json
8
+ {
9
+ "type": "object",
10
+ "properties": {
11
+ "domain": {
12
+ "type": "string",
13
+ "description": "Optional domain filter."
14
+ },
15
+ "threshold": {
16
+ "type": "number",
17
+ "description": "Confidence threshold 0-1 (default 0.85)."
18
+ }
19
+ },
20
+ "required": []
21
+ }
22
+ ```
23
+
24
+ ## Required arguments
25
+
26
+ _None._
27
+
28
+ ## Properties
29
+
30
+ | Name | Type | Description |
31
+ |------|------|-------------|
32
+ | `domain` | string | Optional domain filter. |
33
+ | `threshold` | number | Confidence threshold 0-1 (default 0.85). |
34
+
35
+ ## See also
36
+
37
+ - [Index of all MCP tools](./README.md)
@@ -0,0 +1,33 @@
1
+ # `get_llm_enrichment`
2
+
3
+ Per-node summary via a local LLM. Opt-in only; returns disabled stub until `ai.llm` is wired in carto.config.json.
4
+
5
+ ## Input schema
6
+
7
+ ```json
8
+ {
9
+ "type": "object",
10
+ "properties": {
11
+ "file": {
12
+ "type": "string"
13
+ }
14
+ },
15
+ "required": [
16
+ "file"
17
+ ]
18
+ }
19
+ ```
20
+
21
+ ## Required arguments
22
+
23
+ - `file`
24
+
25
+ ## Properties
26
+
27
+ | Name | Type | Description |
28
+ |------|------|-------------|
29
+ | `file` | string | |
30
+
31
+ ## See also
32
+
33
+ - [Index of all MCP tools](./README.md)
@@ -0,0 +1,32 @@
1
+ # `get_microservice_cut_points`
2
+
3
+ Natural microservice cut-points: domains with high cohesion (intra-edges) AND low external coupling. Use to plan extraction-style refactors.
4
+
5
+ ## Input schema
6
+
7
+ ```json
8
+ {
9
+ "type": "object",
10
+ "properties": {
11
+ "threshold": {
12
+ "type": "number",
13
+ "description": "Cohesion threshold 0-1 (default 0.7)."
14
+ }
15
+ },
16
+ "required": []
17
+ }
18
+ ```
19
+
20
+ ## Required arguments
21
+
22
+ _None._
23
+
24
+ ## Properties
25
+
26
+ | Name | Type | Description |
27
+ |------|------|-------------|
28
+ | `threshold` | number | Cohesion threshold 0-1 (default 0.7). |
29
+
30
+ ## See also
31
+
32
+ - [Index of all MCP tools](./README.md)
@@ -0,0 +1,25 @@
1
+ # `get_microservices_migration_cut_points`
2
+
3
+ Suggested microservices extraction order. Repos with high stability (more incoming than outgoing edges) extract first.
4
+
5
+ ## Input schema
6
+
7
+ ```json
8
+ {
9
+ "type": "object",
10
+ "properties": {},
11
+ "required": []
12
+ }
13
+ ```
14
+
15
+ ## Required arguments
16
+
17
+ _None._
18
+
19
+ ## Properties
20
+
21
+ _None._
22
+
23
+ ## See also
24
+
25
+ - [Index of all MCP tools](./README.md)
@@ -0,0 +1,39 @@
1
+ # `get_minimal_context_for_intent`
2
+
3
+ Token-budgeted context picker. Given a natural-language intent + a budget (default 4000 tokens), returns the minimum file set needed via hybrid retrieval (structural + lexical + semantic) with RRF fusion and high-blast / same-domain / recent-changes boosts. Reports per-file token cost.
4
+
5
+ ## Input schema
6
+
7
+ ```json
8
+ {
9
+ "type": "object",
10
+ "properties": {
11
+ "intent": {
12
+ "type": "string",
13
+ "description": "Natural-language description of the change."
14
+ },
15
+ "budget_tokens": {
16
+ "type": "number",
17
+ "description": "Token budget (default 4000)."
18
+ }
19
+ },
20
+ "required": [
21
+ "intent"
22
+ ]
23
+ }
24
+ ```
25
+
26
+ ## Required arguments
27
+
28
+ - `intent`
29
+
30
+ ## Properties
31
+
32
+ | Name | Type | Description |
33
+ |------|------|-------------|
34
+ | `intent` | string | Natural-language description of the change. |
35
+ | `budget_tokens` | number | Token budget (default 4000). |
36
+
37
+ ## See also
38
+
39
+ - [Index of all MCP tools](./README.md)
@@ -0,0 +1,32 @@
1
+ # `get_models`
2
+
3
+ Get all data models (Prisma, Pydantic, TypeScript interfaces, Zod schemas) across the project, optionally filtered by domain.
4
+
5
+ ## Input schema
6
+
7
+ ```json
8
+ {
9
+ "type": "object",
10
+ "properties": {
11
+ "domain": {
12
+ "type": "string",
13
+ "description": "Optional domain filter e.g. AUTH, DATABASE"
14
+ }
15
+ },
16
+ "required": []
17
+ }
18
+ ```
19
+
20
+ ## Required arguments
21
+
22
+ _None._
23
+
24
+ ## Properties
25
+
26
+ | Name | Type | Description |
27
+ |------|------|-------------|
28
+ | `domain` | string | Optional domain filter e.g. AUTH, DATABASE |
29
+
30
+ ## See also
31
+
32
+ - [Index of all MCP tools](./README.md)
@@ -0,0 +1,39 @@
1
+ # `get_neighbors`
2
+
3
+ Get import graph neighbors of a file — files it imports and files that import it. Returns nodes and edges for visualization.
4
+
5
+ ## Input schema
6
+
7
+ ```json
8
+ {
9
+ "type": "object",
10
+ "properties": {
11
+ "file": {
12
+ "type": "string",
13
+ "description": "Relative file path from project root"
14
+ },
15
+ "hops": {
16
+ "type": "number",
17
+ "description": "How many hops to traverse (default 1, max 3)"
18
+ }
19
+ },
20
+ "required": [
21
+ "file"
22
+ ]
23
+ }
24
+ ```
25
+
26
+ ## Required arguments
27
+
28
+ - `file`
29
+
30
+ ## Properties
31
+
32
+ | Name | Type | Description |
33
+ |------|------|-------------|
34
+ | `file` | string | Relative file path from project root |
35
+ | `hops` | number | How many hops to traverse (default 1, max 3) |
36
+
37
+ ## See also
38
+
39
+ - [Index of all MCP tools](./README.md)
@@ -0,0 +1,25 @@
1
+ # `get_org_architecture`
2
+
3
+ Org-wide summary: registered repos + total cross-repo edge count + edges by kind. Requires `carto org init` + `carto org sync`.
4
+
5
+ ## Input schema
6
+
7
+ ```json
8
+ {
9
+ "type": "object",
10
+ "properties": {},
11
+ "required": []
12
+ }
13
+ ```
14
+
15
+ ## Required arguments
16
+
17
+ _None._
18
+
19
+ ## Properties
20
+
21
+ _None._
22
+
23
+ ## See also
24
+
25
+ - [Index of all MCP tools](./README.md)
@@ -0,0 +1,25 @@
1
+ # `get_org_domain_mapping`
2
+
3
+ Per-repo domain list across all org repos (reads each repo's carto.db if registered).
4
+
5
+ ## Input schema
6
+
7
+ ```json
8
+ {
9
+ "type": "object",
10
+ "properties": {},
11
+ "required": []
12
+ }
13
+ ```
14
+
15
+ ## Required arguments
16
+
17
+ _None._
18
+
19
+ ## Properties
20
+
21
+ _None._
22
+
23
+ ## See also
24
+
25
+ - [Index of all MCP tools](./README.md)
@@ -0,0 +1,32 @@
1
+ # `get_pending_decisions`
2
+
3
+ Recent decisions with pending/unresolved/HIGH-risk flags in their payload. Surfaces unfinished AI work from the episodic log.
4
+
5
+ ## Input schema
6
+
7
+ ```json
8
+ {
9
+ "type": "object",
10
+ "properties": {
11
+ "hours": {
12
+ "type": "number",
13
+ "description": "Lookback window in hours (default 6)."
14
+ }
15
+ },
16
+ "required": []
17
+ }
18
+ ```
19
+
20
+ ## Required arguments
21
+
22
+ _None._
23
+
24
+ ## Properties
25
+
26
+ | Name | Type | Description |
27
+ |------|------|-------------|
28
+ | `hours` | number | Lookback window in hours (default 6). |
29
+
30
+ ## See also
31
+
32
+ - [Index of all MCP tools](./README.md)
@@ -0,0 +1,32 @@
1
+ # `get_predictive_risk`
2
+
3
+ Predictive risk score per file: P(this file causes the next incident). Combines blast radius, churn, cross-domain coupling, intervention history, test presence into a 0-1 score.
4
+
5
+ ## Input schema
6
+
7
+ ```json
8
+ {
9
+ "type": "object",
10
+ "properties": {
11
+ "file": {
12
+ "type": "string",
13
+ "description": "Optional single-file filter; otherwise scores all files."
14
+ }
15
+ },
16
+ "required": []
17
+ }
18
+ ```
19
+
20
+ ## Required arguments
21
+
22
+ _None._
23
+
24
+ ## Properties
25
+
26
+ | Name | Type | Description |
27
+ |------|------|-------------|
28
+ | `file` | string | Optional single-file filter; otherwise scores all files. |
29
+
30
+ ## See also
31
+
32
+ - [Index of all MCP tools](./README.md)
@@ -0,0 +1,25 @@
1
+ # `get_progressive_disclosure_tree`
2
+
3
+ Pre-computed hierarchy: domain → top files per domain → per-file exports. Use as a structured table-of-contents for the codebase before drilling in.
4
+
5
+ ## Input schema
6
+
7
+ ```json
8
+ {
9
+ "type": "object",
10
+ "properties": {},
11
+ "required": []
12
+ }
13
+ ```
14
+
15
+ ## Required arguments
16
+
17
+ _None._
18
+
19
+ ## Properties
20
+
21
+ _None._
22
+
23
+ ## See also
24
+
25
+ - [Index of all MCP tools](./README.md)
@@ -0,0 +1,37 @@
1
+ # `get_recent_decisions`
2
+
3
+ List recent validation decisions and architectural choices the AI has made in this project. Returns time-descending rows.
4
+
5
+ ## Input schema
6
+
7
+ ```json
8
+ {
9
+ "type": "object",
10
+ "properties": {
11
+ "time_range": {
12
+ "type": "string",
13
+ "description": "Time window like \"7d\", \"24h\", \"1h\" (default \"7d\")."
14
+ },
15
+ "kind": {
16
+ "type": "string",
17
+ "description": "Optional filter — e.g. \"validation\"."
18
+ }
19
+ },
20
+ "required": []
21
+ }
22
+ ```
23
+
24
+ ## Required arguments
25
+
26
+ _None._
27
+
28
+ ## Properties
29
+
30
+ | Name | Type | Description |
31
+ |------|------|-------------|
32
+ | `time_range` | string | Time window like "7d", "24h", "1h" (default "7d"). |
33
+ | `kind` | string | Optional filter — e.g. "validation". |
34
+
35
+ ## See also
36
+
37
+ - [Index of all MCP tools](./README.md)
@@ -0,0 +1,32 @@
1
+ # `get_risk_weighted_blast_radius`
2
+
3
+ Combine static dependents with runtime call counts (from ingest_otlp_traces or similar) to rank routes by real-world risk. `risk = dependents × runtime_calls + dependents`.
4
+
5
+ ## Input schema
6
+
7
+ ```json
8
+ {
9
+ "type": "object",
10
+ "properties": {
11
+ "otlp_path": {
12
+ "type": "string",
13
+ "description": "Optional OTLP file for runtime data."
14
+ }
15
+ },
16
+ "required": []
17
+ }
18
+ ```
19
+
20
+ ## Required arguments
21
+
22
+ _None._
23
+
24
+ ## Properties
25
+
26
+ | Name | Type | Description |
27
+ |------|------|-------------|
28
+ | `otlp_path` | string | Optional OTLP file for runtime data. |
29
+
30
+ ## See also
31
+
32
+ - [Index of all MCP tools](./README.md)
@@ -0,0 +1,25 @@
1
+ # `get_routes`
2
+
3
+ Get all API routes in this project including REST, tRPC, and webhooks.
4
+
5
+ ## Input schema
6
+
7
+ ```json
8
+ {
9
+ "type": "object",
10
+ "properties": {},
11
+ "required": []
12
+ }
13
+ ```
14
+
15
+ ## Required arguments
16
+
17
+ _None._
18
+
19
+ ## Properties
20
+
21
+ _None._
22
+
23
+ ## See also
24
+
25
+ - [Index of all MCP tools](./README.md)
@@ -0,0 +1,33 @@
1
+ # `get_safety_checklist`
2
+
3
+ Per-file safety checklist: blast radius, cross-domain coupling, missing tests, temporal hotspot, unresolved interventions. Run before writing a high-impact change.
4
+
5
+ ## Input schema
6
+
7
+ ```json
8
+ {
9
+ "type": "object",
10
+ "properties": {
11
+ "file": {
12
+ "type": "string"
13
+ }
14
+ },
15
+ "required": [
16
+ "file"
17
+ ]
18
+ }
19
+ ```
20
+
21
+ ## Required arguments
22
+
23
+ - `file`
24
+
25
+ ## Properties
26
+
27
+ | Name | Type | Description |
28
+ |------|------|-------------|
29
+ | `file` | string | |
30
+
31
+ ## See also
32
+
33
+ - [Index of all MCP tools](./README.md)
@@ -0,0 +1,34 @@
1
+ # `get_semantic_diff`
2
+
3
+ Beyond line-by-line: detect renames, symbol relocations across files, and new-domain introductions from a unified diff.
4
+
5
+ ## Input schema
6
+
7
+ ```json
8
+ {
9
+ "type": "object",
10
+ "properties": {
11
+ "diff": {
12
+ "type": "string",
13
+ "description": "Unified diff text."
14
+ }
15
+ },
16
+ "required": [
17
+ "diff"
18
+ ]
19
+ }
20
+ ```
21
+
22
+ ## Required arguments
23
+
24
+ - `diff`
25
+
26
+ ## Properties
27
+
28
+ | Name | Type | Description |
29
+ |------|------|-------------|
30
+ | `diff` | string | Unified diff text. |
31
+
32
+ ## See also
33
+
34
+ - [Index of all MCP tools](./README.md)