> For the complete documentation index, see [llms.txt](https://docs.visdom.virtuslab.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.visdom.virtuslab.com/visdom-context-fabric/user-guide/architecture-module.md).

# Architecture module

Architecture is a project-scoped module. It extracts architectural information from the project's repositories, combined, by building a service and infrastructure topology graph. The MCP tools it exposes aim to let a coding agent answer questions like:

* What dependencies and libraries does the project use, and for what: ORM, messaging, observability?
* What languages and architectural style: microservices or a single service, and which deployment model?
* How do services communicate: synchronous HTTP or gRPC, asynchronous topics?
* What are the logging and observability standards across all repositories?
* What is a given service's or repository's responsibility?
* Which service should I call for capability Y?
* Who publishes and who consumes a given topic?
* How do I talk to a given service: what API does it expose, in what technology, and is there an OpenAPI or proto contract?
* Given my current changes, what is the blast radius: which other services might break, and what has to be validated?

The module contributes a section to `AGENTS.md` with an overview of the project's repositories. That alone is useful: it is how an agent discovers which repositories exist and which ones a request should touch. Alongside it are the observability, database and messaging standards discovered across the project.

![The architecture section of the generated AGENTS.md, listing each repository and what it does](https://1398155133-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FED9nLcXxDQR0x7nt8zMS%2Fuploads%2FRWVcHp1FrEmpcJk2tZK4%2Farchitecture-agents-md.png?alt=media)

To judge how well the module has understood the project, the UI renders the derived graph.

![The derived service and infrastructure topology, rendered in the UI](https://1398155133-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FED9nLcXxDQR0x7nt8zMS%2Fuploads%2F6hoJQhgVKIcvm0PWc0Nv%2Farchitecture-graph.png?alt=media)

## MCP tools

Agents do not reach the graph directly. They use tools built on it, which can be browsed and tested from the `MCP tools` page:

* `services`: the services discovered in each repository, with a description of what each does. Where OpenAPI or protobuf specs exist, their coordinates are listed next to the service.
* `libraries`: the project's dependencies, and what other modules use to implement a given concern such as database access or security.
* `impact`: the blast radius of a change: given a repository and changed paths, the services affected.
* `topics`: who publishes and who consumes a given topic.

{% hint style="info" %}
The module is light on LLM usage. Most of the graph derivation is deterministic, which also means it can miss or misattribute things. LLMs generate the service and repository summaries, so the ongoing cost is low.
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.visdom.virtuslab.com/visdom-context-fabric/user-guide/architecture-module.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
