55 lines
2.5 KiB
Markdown
55 lines
2.5 KiB
Markdown
# Library Registry
|
|
|
|
## Summary
|
|
|
|
The Aetos ecosystem provides internal libraries for the shared concerns of
|
|
every application. **Use them.** Writing a private copy of any capability below
|
|
is a defect.
|
|
|
|
Each library also exposes its own documentation as an MCP server. An AI agent
|
|
can read a library's full API by connecting to its MCP and reading
|
|
`docs://index`, `docs://nav`, and `docs://modules/{module}`.
|
|
|
|
---
|
|
|
|
## Catalog
|
|
|
|
| Library | Import | Purpose | Use instead of | MCP |
|
|
|---|---|---|---|---|
|
|
| DAG Pipe | `dagpipe` | Deterministic state-transformation DAG engine | hand-rolled orchestration/topological ordering | `:8006` |
|
|
| Hexa | `hexa` | Declarative DI / composition-root tooling | manual wiring, hand-written factories | *(see note)* |
|
|
| Mongo Ops | `mongo_ops` | Async MongoDB repositories, cache, populate, transactions | raw Motor CRUD and connection lifecycle | `:8007` |
|
|
| Omniread | `omniread` | Format-agnostic fetch + parse (HTML, PDF, CSV, XLSX) | custom scrapers/parsers | `:8003` |
|
|
| OpenAPI First | `openapi_first` | Spec-first FastAPI bootstrap, client, codegen | decorator routers and hand-written clients | `:8004` |
|
|
| Mail Intake | `mail_intake` | Provider-agnostic read-only email ingestion | Gmail OAuth + MIME parsing | `:8002` |
|
|
| Py JWT | `jwtlib` | JWT auth primitives (register/login/introspect) | password hashing + token code | `:8005` |
|
|
| Doc Forge | `docforge` | Docstring compiler → MkDocs + MCP docs | custom doc generators | `:8001` |
|
|
| Auth Server | *(service)* | Central identity service (register/login/me/introspect) | building auth endpoints yourself | — |
|
|
|
|
## How to choose
|
|
|
|
| You need to… | Use |
|
|
|---|---|
|
|
| persist and query documents | Mongo Ops |
|
|
| compose dependencies | Hexa |
|
|
| run a multi-step transformation | DAG Pipe |
|
|
| read/parse an arbitrary input format | Omniread |
|
|
| expose a contract-first HTTP API | OpenAPI First |
|
|
| ingest email | Mail Intake |
|
|
| authenticate users / verify tokens | Py JWT (+ Auth Server) |
|
|
| generate documentation | Doc Forge |
|
|
|
|
## Discovery
|
|
|
|
A single **standards MCP** exposes `find_library(capability)`, which returns the
|
|
matching library, its import name, its "use instead of" guidance, and its MCP
|
|
endpoint. Query it before writing any infrastructure.
|
|
|
|
## Notes
|
|
|
|
- **Hexa** ships an MCP bundle but is not yet assigned a dedicated port in the
|
|
hub config; it is reachable via the standards registry entry and will be
|
|
wired to a port.
|
|
- Library MCP servers expose **documentation resources** (not executable tools):
|
|
they tell an agent the available API surface so it does not invent code.
|