Skip to content

resolvers

resolvers

Auth resolvers for the crew-dcs MCP server.

env_auth_resolver is the default standalone resolver: a single Domo instance configured via DOMO_INSTANCE / DOMO_ACCESS_TOKEN. Multi-tenant deployments inject their own resolver (dc_ token -> stored per-instance credential).

env_auth_resolver async

env_auth_resolver(
    instance: str, dc_token: str | None = None
) -> DomoTokenAuth

Resolve auth from environment for a single standalone Domo instance.

The instance argument is accepted for interface parity with multi-tenant resolvers but standalone mode always uses the env-configured instance.

Source code in src/crew_dcs/mcp_server/resolvers.py
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
async def env_auth_resolver(
    instance: str, dc_token: str | None = None
) -> DomoTokenAuth:
    """Resolve auth from environment for a single standalone Domo instance.

    The `instance` argument is accepted for interface parity with multi-tenant
    resolvers but standalone mode always uses the env-configured instance.
    """
    domo_instance = os.environ.get("DOMO_INSTANCE")
    access_token = os.environ.get("DOMO_ACCESS_TOKEN")
    if not domo_instance or not access_token:
        raise RuntimeError(
            "DOMO_INSTANCE and DOMO_ACCESS_TOKEN must be set for the standalone "
            "crew-dcs MCP server (env_auth_resolver)."
        )
    return DomoTokenAuth(domo_access_token=access_token, domo_instance=domo_instance)