Components.
A tooling map for state-grade agentic systems, grouped by layer: what has been observed in referenced public-sector PoCs, what to add, and what to weigh as an alternative. Names link to the projects. None of this is an institutional endorsement, and none of it changes the rule that the public service decides.
- In use
- Observed in referenced public-sector PoCs
- Add
- Recommended addition for state-grade agentic use
- Evaluate
- Alternative to evaluate
Agent orchestration, harnesses, protocols
- In use: LangGraph
- In use: LangChaincreate_agent, middleware
- Add: deepagentsplanning, filesystem context, subagents, skills; Python and JavaScript
- In use: DSPy
- In use: MCP specification
- In use: FastMCP
- In use: langchain-mcp-adapters
- Add: MCP Registrybuilding-block discoverability
- In use: A2A protocol
- In use: a2a-sdkPython
- Add: Agent Skills specificationportable skill folders, used by deepagents
- Add: Claude Agent SDK
- Evaluate: Pydantic AItyped agents; pairs with pydantic-evals below
- Evaluate: Google ADK
- Evaluate: OpenAI Agents SDK
LLM access, inference, embeddings
- In use: LiteLLM proxy
- In use: vLLM
- In use: OpenRouter
- In use: Azure AI FoundryEU regions
- In use: FastEmbed
- In use: multilingual-e5-large
- In use: BGE-M3
- Add: Ollamalocal development
Retrieval, storage, document parsing
- In use: Qdrant
- Evaluate: pgvectorif collapsing to one datastore
- In use: SQLAlchemy
- In use: Alembic
- In use: pypdf
- In use: python-docx
- Add: Doclinglayout-aware PDF and DOCX to structured output; replaces ad-hoc parsing
- Add: OCRmyPDF with Tesseract
- In use: WeasyPrint
- In use: PlaywrightHTML to PDF, end-to-end tests
- In use: PptxGenJS
- In use: SearXNG
PII, guardrails, Estonian NLP
- In use: Microsoft Presidio
- In use: EstBERTTartuNLP named-entity recognition
- In use: EstNLTK
- Add: NeMo GuardrailsColang rails on gateway egress
- Evaluate: LLM Guardprompt-injection and leak scanners as LiteLLM middleware
Speech and voice
- In use: Speechmaticsbatch and real-time speech to text with EU processing; English and Estonian; the loop on /try transcribes with it · example: medical transcription
Evaluation, tracing, observability
- In use: MLflowtraces, evaluations
- In use: pydantic-evals
- Add: Langfuseself-hosted, OpenTelemetry-native; data stays in a national cloud such as Riigipilv, where LangSmith is SaaS in the US
- In use: OpenTelemetry GenAI semantic conventions
- In use: Prometheus
- In use: Grafana Loki
- In use: Grafana Alloy
- Add: Inspect AIthe UK AI Security Institute’s evaluation framework
- Add: Promptfooregression and red-team checks in CI
- Evaluate: RAGASretrieval-specific metrics
Identity, authorization, secrets, signing
- In use: OpenFGA
- In use: SPIFFE/SPIRE
- In use: HashiCorp VaultTransit
- Evaluate: OpenBaoMPL fork of Vault; procurement-friendlier licence
- In use: TARA
- In use: Authlib
- In use: Web eID
- In use: undersignASiC-E and XAdES in Node
- Evaluate: digidoc4jRIA-maintained, Java; if a JVM signing service is acceptable
- Add: EUDI Wallet reference implementationthe citizen-agent SD-JWT VC path
- Add: sd-jwt-python
- Add: OpenID Shared Signals and CAEPpush revocation
- Add: OWASP Top 10 for LLM Applications
Interoperability, GovStack, registries
- In use: X-Road (NIIS)
- Add: GovStack specifications
- In use: RHR, the public procurement register
- In use: RHR open data
- In use: TED API
- In use: Riigi Teataja
- In use: Äriregister open data
Jobs, runtime, API
- In use: FastAPI
- In use: sse-starlette
- In use: Pydantic v2
- In use: ProcrastinatePostgres-backed queue
- Evaluate: arqRedis
- Evaluate: Temporaldurable execution for multi-day agent runs; evaluate only if LangGraph checkpointing proves insufficient
- In use: httpx
Frontend
Development tooling
- In use: uv
- In use: ruff
- In use: pytest
- In use: Vitest
- In use: import-linterenforces the dependency matrix
- In use: Docker Compose
- In use: Ansible
- In use: Terraform