Trace dependencies
Goal
Answer three kinds of dependency question about the model: what is around an element, how two elements connect, and what hangs off an element along one relationship. For an architect or analyst. You end with a short, correct answer as a table or a diagram, with the traversal's limits read so that a truncated result is not mistaken for a complete one.
Where it runs
This scenario needs the MCP server. Its optional diagram of the answer also needs local code execution. Computer use covers its UI steps.
| Surface | How it runs |
|---|---|
| Claude Code | Fully |
| Claude Cowork | Fully, except the optional diagram of the answer, which needs local code execution on the machine where EA runs; a local session runs code in an isolated virtual machine instead. Available in local sessions only: a cloud session has no local MCP server. |
| Claude Desktop chat | Fully, except the UI steps, which you perform: starting EA and opening the model, and dismissing any dialog EA raises (you paste a screenshot of it into the conversation first). The optional diagram of the answer is not available: it needs local code execution, which Claude Desktop chat does not have. |
| VS Code with GitHub Copilot | Fully, except the UI steps, which you perform: starting EA and opening the model, and dismissing any dialog EA raises (you paste a screenshot of it into the conversation first). |
Before you start
- The start-of-session check done. This scenario reads and changes nothing, unless you ask for a diagram.
- The relationships you ask about must exist as connectors. Containment shown only by nesting, element parentage or a tagged value is not traversed.
- Element ids, or names the AI can resolve into ids.
An architect asks "what implements this requirement?", "how does the customer portal connect to the payment gateway?", or "what depends on this application?". Three read-only operations answer these, all from one engine with the same depth, node and time limits. It is operations-driven: the AI picks the operation, runs it, and presents the result. The skill most often involved is ea-modeling, with ea-stakeholder-reporting for answers in business terms. ea-model-hygiene calls the same operations for safety checks before a delete. See Impact and traceability questions.
| Question | Operation | What comes back |
|---|---|---|
| What is around this element? | trace_connectors |
A flat set of elements and connectors within N hops |
| How do these two elements connect? | find_paths |
Every shortest path, as alternating element and connector hops |
| What hangs off this element along one relationship? | get_traceability_tree |
A rooted tree, each child noting the connector that reached it |
Steps
- AI with computer use; otherwise you If EA is not running or the model is not open, start EA and open it. AI Power Tools
ea-start-hereruns the start-of-session check. - AI The AI restates your question and chooses the operation.
- You When a name matches several elements, choose among the candidates. Several elements can share a name, so the AI shows each with its package path and asks.
- AI Power Tools The AI runs the traversal. By default
trace_connectorsfollows downstream connectors four hops, stopping at 2,000 elements or eight seconds.find_pathslooks up to five hops and returns up to 20 shortest paths.get_traceability_treegoes outbound three hops and needs you to name the connector types to follow. The limit on depth is 10. - AI Power Tools The AI reads the guards in the result: whether it was truncated, how deep it reached, and how many elements it found. A truncated result may be partial, and a result that reached the depth limit is not evidence that nothing lies deeper.
- AI
ea-modeling, withea-stakeholder-reportingfor business terms, presents the answer, optionally in display terms (get_element_business_view,resolve_display_term). - You Optionally ask for a diagram of the answer. Drawing writes to the model, so the AI asks first. Engine
ea-diagram-compositioncomputes the geometry, and AI Power Tools places it.
Direction is a trap. A requirement is normally the target of the connectors that realize it, so tracing downstream from a requirement returns only the requirement. Ask for both directions, or upstream. A connector of type Realization is stored as Realisation. A connector type filter matches either the connector's stereotype or its type.
Paths run both ways. find_paths follows connectors in both directions, because a path from a business process to the system that implements it normally crosses a connector against its arrow. Each hop carries its orientation, so it can be recovered. Only the shortest paths are returned, including all paths of equal length. An empty result means the target is unreachable within the depth limit, is in a different component, or is absent.
Cycles. get_traceability_tree handles cycles per branch. A diamond shows the shared element under both parents, and a loop ends. A branch cut by a cycle is marked, so it is not mistaken for a leaf.
Prompts to use
Opening
Follow-ups
The AI asks before writing.
Recommended models
| Model | Fit | Why |
|---|---|---|
| Claude Fable 5.1 | Capable | The reasoning load is light. Strong on larger result sets |
| Claude Opus 5.5 | Capable | The same |
| Claude Sonnet 5.5 | Recommended | Picks the operation correctly and reads the guards |
| Claude Haiku 4.5 | Capable | Fine for a single traversal. More likely to miss the direction trap |
Ratings are guidance based on the kind of reasoning the skill needs, not measured benchmarks.
Checking the result
- Accurate. For a one-hop trace, the number of connectors found equals the number of connectors on the element, which you can confirm by asking for the element's connectors. A path can be walked connector by connector. A requirement-realization answer checks against the Relationships view in EA for one element.
- Complete. The result is not truncated, and the depth reached is below the depth asked for, or the answer says the limit was reached. The direction was right: a result with only the root usually means the wrong direction. If the answer covers "everything that depends on X", connector types were not filtered away.
- Nothing unintended changed. The three operations read only. If a diagram was drawn, it is in the package you named and nothing else differs.
Variations
- Before a retirement or a deletion. For a full impact report on a system, see Assess the impact of retiring a system. Before a delete,
ea-model-hygieneruns the same traces as a safety check (Clean up model decay). - Coverage questions. "Which requirements have no realizing element?" needs the whole set, not one element: see Check traceability coverage.
- Business language. Display names and
ea-stakeholder-reportingput the answer in business terms. - A cross-domain chain. Trace a requirement realized jointly by applications in two business domains to see the shared path.
Limitations
- The result is as good as the question and the AI's reading of it.
- Only connectors are followed. Parentage, nesting and tagged-value links are invisible to these operations.
- Large neighborhoods hit the node and time limits. A truncated result is a prefix, not an answer. Narrow with connector types and a smaller depth.
- An older, slower walk exists (
traverse_element_subgraph). It has been reported to return each interior edge twice, so the AI deduplicates before counting. - An empty result is a prompt to check the scope. A wrong id, a wrong direction or a type filter that matches nothing all return little or nothing.
- Connector spelling and direction trip callers.
Realisation, and the default downstream direction, are the two most common. A stereotype is spelled the way the model stores it: the Westbrook connector stereotype is the lower-caserealizes, notRealizes.