Skip to main content

groundworkers

groundworkers is the reusable capability layer for OMOP-grounded lookup, mapping, source planning, and knowledge-pack discovery.

It is available through three interfaces:

  • as an MCP service for discoverable tool clients
  • as a REST service for fixed workflow applications
  • as a direct Python library for in-process applications

No patient-level writes. No session state. No transport-specific business logic.

What it provides

  • OMOP concept lookup and hierarchy navigation
  • exact, normalized, full-text, and embedding-backed retrieval
  • mapping-oriented candidate bundles and context assembly
  • stateless source-planning workflows
  • bundled baseline knowledge packs for reusable mapping and planning context
  • LLM-backed text normalization and domain classification

Knowledge packs

groundworkers ships with bundled baseline knowledge packs inside the package. These packs are available by default and provide reusable guidance and rules that apply broadly across deployments.

Site-specific or localisation packs are added through the shared stack config via tools.groundworkers.knowledge_packs_root. When a configured pack has the same layer and name as a bundled baseline pack, the configured copy wins.

Runtime model

flowchart TD
    STACK[shared stack config] --> BOOT[build_app_config]
    BOOT --> CFG[AppConfig]
    CFG --> APP[build_application]
    APP --> GW[GroundworkersApp]
    GW --> SVC[services]
    GW --> ADP[adapters]
    MCP[MCP client] --> TOOLS[MCP tools]
    REST[REST client] --> API[REST transport]
    PY[Python caller] --> SVC
    TOOLS --> SVC
    TOOLS -. adapter-backed primitives .-> ADP
    API --> SVC

build_application(...) is the composition root. It builds one reusable runtime container with transport-agnostic services plus dependency-facing adapters. Most caller-facing workflows go through services; some MCP tools are intentionally adapter-backed when the capability is closer to a backend primitive than a domain service.

Quick start

Install

pip install groundworkers

Optional extras:

pip install "groundworkers[tui,embedding-pgvector]"

Configure the shared stack

omop-config configure omop_alchemy
omop-config configure omop_graph
omop-config configure groundworkers
# optional if you want embedding-backed capabilities
omop-config configure omop_emb

Start MCP

groundworkers --describe
groundworkers --transport streamable-http --host 0.0.0.0 --port 8000

Start REST

groundworkers --transport rest --host 0.0.0.0 --port 8080

Use from Python

from groundworkers.app import build_application
from groundworkers.bootstrap import build_app_config

config = build_app_config()
app = build_application(config)

mapping = app.services.mapping
bundle = mapping.concept_candidate_bundle(
    "type 2 diabetes",
    domain="Condition",
    include_normalized=True,
    include_fulltext=True,
    include_embedding=True,
)

Main surfaces

Surface Best for
MCP tools Discoverable tools and shared remote capabilities
REST routes Typed HTTP workflows such as candidate bundles and assisted source planning
app.services.* In-process Python applications and batch workflows
app.adapters.* Backend wrappers used when you intentionally need dependency-shaped primitives

Learn more

  • Docs home: docs/index.md
  • Configuration: docs/usage/configuration.md
  • Integrations: docs/usage/integrations.md
  • Architecture: docs/architecture.md

Companion repos

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

groundworkers-0.4.0.tar.gz (3.9 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

groundworkers-0.4.0-py3-none-any.whl (314.5 kB view details)

Uploaded Python 3

File details

Details for the file groundworkers-0.4.0.tar.gz.

File metadata

  • Download URL: groundworkers-0.4.0.tar.gz
  • Upload date:
  • Size: 3.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for groundworkers-0.4.0.tar.gz
Algorithm Hash digest
SHA256 275b911a92fb02ea73773ca5e590cd06e67f244fdc32f6fe5ffe878756083065
MD5 db0b1db5fddc85182aba75cb3cf1cdd5
BLAKE2b-256 719b5fb164f6b245e35144822d6a77a8e9f138a7bbffd5ac19129d8ee353f6d1

See more details on using hashes here.

Provenance

The following attestation bundles were made for groundworkers-0.4.0.tar.gz:

Publisher: publish.yml on AustralianCancerDataNetwork/groundworkers

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file groundworkers-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: groundworkers-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 314.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for groundworkers-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 956499c2f0dcb67c52d87f9f721456d54d7805793aed43abf5f3597c0cb74a59
MD5 106e7ded43e6c47352a054e4b8b7b652
BLAKE2b-256 fb510ec95abe8cf9dbeca101b40397b20ad5e10867eb09567fe1657cfac4348d

See more details on using hashes here.

Provenance

The following attestation bundles were made for groundworkers-0.4.0-py3-none-any.whl:

Publisher: publish.yml on AustralianCancerDataNetwork/groundworkers

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.4.0 This release

2 files

0.3.3

2 files

0.3.2

2 files

0.2.0

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page