Skip to content

Job Agents

Deploy domain-specific AI assistants for a professional services firm using a bounded MCP surface with pluggable domain knowledge across finance, engineering, science, law, and medicine.

Illustrative end-to-end example

A worked illustration of the job-agent surface — every component and operation named below is real (each domain agent exposes a fixed enum of ~26 ops, not a free-form task param; call get_capabilities to list them). It is not a copy-paste script. The substantive domain ops are attestation-gated, not API-key-gated: they return blocked-escalated until you supply a signed context["attestation"] (credential_id, jurisdiction, issuer) — the safety floor for regulated work, not a paywall.

GoalInput

{
  "goal": "Deploy domain-specific AI assistants for a professional services firm",
  "context": "A multi-disciplinary consultancy needs AI assistants tailored to each practice area — finance, engineering, science, law, and surgical medicine. Each assistant must expose a compact MCP interface for session management, tool invocation, and context retrieval, while applying domain-specific knowledge, terminology, and safety constraints.",
  "constraints": [
    "All agents share a compact MCP surface registered by job_framework",
    "Each domain agent must enforce its own regulatory and safety requirements",
    "Session state must persist across invocations within a client engagement",
    "No cross-domain data leakage between practice areas"
  ],
  "resource_bounds": {
    "max_execution_seconds": 240,
    "max_tokens_per_hour": 150000
  },
  "guardrails": [
    {
      "name": "token_budget",
      "predicate": "resource_limit",
      "params": {"max_tokens_per_hour": 150000},
      "message": "Halt if hourly token budget exceeded"
    }
  ],
  "subtasks": [
    {
      "goal": "Initialise session management and register the MCP tool surface",
      "context": "Use job_framework to create a session, register all domain-agnostic tools (session CRUD, tool discovery, context injection, result formatting), and prepare the shared tool registry that each domain agent will inherit.",
      "constraints": ["The relevant MCP tools must be registered before domain agents start", "Session ID must be unique per engagement"]
    },
    {
      "goal": "Run financial analysis: portfolio analysis, risk assessment, compliance checking",
      "context": "Use job_finance to analyse a client portfolio. Compute sector allocation, run Monte Carlo VaR, and check positions against regulatory limits (concentration, leverage, restricted securities).",
      "constraints": ["Risk models must use at least 1000 Monte Carlo simulations", "Compliance must check against current regulatory thresholds"]
    },
    {
      "goal": "Run software-engineering analysis: system design, tradeoff evaluation, code review",
      "context": "Use job_engineer to evaluate a payment-service architecture proposal. Design the service, evaluate datastore and build-vs-buy tradeoffs, and review the implementation code for correctness.",
      "constraints": ["Design must meet the stated availability and latency targets", "Tradeoff evaluation must account for operational cost and team skills"]
    },
    {
      "goal": "Run scientific analysis: experiment design, hypothesis testing, literature search",
      "context": "Use job_scientist to design a clinical trial for a new compound. Define control/treatment groups, compute required sample size for statistical power, and search literature for prior studies on the same mechanism.",
      "constraints": ["Statistical power must be >= 0.80", "Literature search must cover at least 3 databases"]
    },
    {
      "goal": "Run legal analysis: contract review, clause extraction, regulatory compliance",
      "context": "Use job_lawyer to review a vendor agreement. Extract key clauses (indemnification, limitation of liability, IP assignment, termination), flag non-standard terms, and check against applicable regulations.",
      "constraints": [
        "All material clauses must be extracted",
        "Flag any clause deviating from market standard",
        "Legal outputs require jurisdiction, structured professional attestation, and qualified lawyer review before client-facing use"
      ],
      "breakpoints": [
        {
          "name": "legal_safety_review",
          "description": "Pause for lawyer review before relying on contract, compliance, filing, or legal-risk output",
          "active": true
        }
      ]
    },
    {
      "goal": "Run clinical analysis: clinical decision support, surgical planning, drug interaction checking",
      "context": "Use job_medical_surgical to plan a laparoscopic procedure. Review patient history, check drug interactions for current medications against anaesthesia agents, and generate a step-by-step surgical plan with risk scores.",
      "constraints": ["All drug interactions must be checked against a verified database", "Surgical plan must include risk scores per step"],
      "breakpoints": [
        {
          "name": "clinical_safety_review",
          "description": "Pause for clinician review before executing surgical plan",
          "active": true
        }
      ]
    }
  ]
}

Pipeline Diagram

graph TD
    A[job_framework<br/>session + MCP tools] -->|shared surface| B[job_finance<br/>portfolio + risk + compliance]
    A -->|shared surface| C[job_engineer<br/>system design + tradeoffs + code]
    A -->|shared surface| D[job_scientist<br/>experiment + hypothesis + lit]
    A -->|shared surface| E[job_lawyer<br/>contracts + clauses + regs]
    A -->|shared surface| F[job_medical_surgical<br/>clinical + surgical + drugs]
    B --> G((Domain Reports))
    C --> G
    D --> G
    E --> G
    F --> G

What You Need

  • Tier: Researcher
  • Components: job_framework, job_finance, job_engineer, job_scientist, job_lawyer, job_medical_surgical

Step-by-Step

Step 1: Initialise the Framework

{
  "component": "job_framework",
  "operation": "get_capabilities",
  "params": {}
}

job_framework is the shared base every domain agent extends — it exposes a bounded set of cross-agent ops (get_capabilities, create_proposal, delegate_task, store_artifact, track_progress, report_status, review_deliverable, ...). There is no init_session op: call get_capabilities to discover the surface, then pass your own engagement/session_id in each domain call's params. Domain-specific behaviour comes from each agent's knowledge base and handlers, not a separate registration step.

Bounded MCP Surface

Job agents use compact, predictable tool sets, usually 25 tools, with explicit exceptions where a domain implements additional operations. Domain-specific behaviour comes from the knowledge base, safety constraints, and the agent's implemented handlers. This means onboarding a new domain is mostly configuration, but production readiness still depends on the specific domain agent.

Pilot readiness varies by agent

Several job agents, including job_researcher, are now suitable for early pilot workflows when run through a verified MCP or direct-block path. Do not read this as a GA claim for every domain agent. Before paid-user or client-facing deployment, verify the clean MCP install, persistent store configuration, connector availability/rate limits, explicit failure handling, and the required human-review path for the target domain.

Legal agent scope

job_lawyer is an MVP/pilot workflow assistant for research, drafting, review checklists, and triage. It is not a law firm, legal-opinion engine, compliance certification system, court-filing authority, or substitute for advice from a lawyer licensed in the relevant jurisdiction. Use jurisdiction, structured professional attestation, source verification, audit logs, and qualified legal review before relying on its output in production or client-facing work.

Step 2: Financial Analysis

{
  "component": "job_finance",
  "operation": "analyze_portfolio",
  "params": {
    "session_id": "ps-firm-2026-q1",
    "portfolio": {
      "positions": [
        {"ticker": "AAPL", "shares": 500, "sector": "technology"},
        {"ticker": "JNJ", "shares": 300, "sector": "healthcare"},
        {"ticker": "JPM", "shares": 200, "sector": "financials"}
      ]
    }
  }
}

Then run risk assessment:

{
  "component": "job_finance",
  "operation": "assess_risk",
  "params": {
    "session_id": "ps-firm-2026-q1",
    "method": "monte_carlo_var",
    "simulations": 10000,
    "confidence_level": 0.95
  }
}

Then check compliance:

{
  "component": "job_finance",
  "operation": "audit_compliance",
  "params": {
    "session_id": "ps-firm-2026-q1",
    "rules": ["concentration_limit", "leverage_ratio", "restricted_securities"]
  }
}

Returns sector allocation breakdown, 95% VaR estimate, and a pass/fail compliance report with specific rule violations if any.

Step 3: Engineering Analysis

{
  "component": "job_engineer",
  "operation": "design_system",
  "params": {
    "session_id": "ps-firm-2026-q1",
    "system": "payment processing service",
    "requirements": ["99.95% availability", "p99 latency < 200ms", "PCI-DSS scope minimised"]
  }
}

Then evaluate design tradeoffs:

{
  "component": "job_engineer",
  "operation": "evaluate_tradeoffs",
  "params": {
    "session_id": "ps-firm-2026-q1",
    "decision": "primary datastore",
    "options": ["PostgreSQL", "DynamoDB"],
    "criteria": ["consistency", "operational_cost", "team_familiarity"]
  }
}

Then review the implementation code:

{
  "component": "job_engineer",
  "operation": "review_code",
  "params": {
    "session_id": "ps-firm-2026-q1",
    "code": "... payment service source code ...",
    "focus": ["error_handling", "concurrency_safety", "input_validation"]
  }
}

Design Quality Gates

The engineering agent flags designs that miss stated non-functional targets — availability, latency, security scope. If a proposed design cannot meet a hard requirement, it is flagged with recommended changes before proceeding.

Engineering outputs require qualified review

job_engineer is a software-engineering assistant (system design, code review, tradeoff analysis) — not civil/structural engineering. Treat its system designs, tradeoff analyses, code reviews, and risk assessments as reliability aids, not sign-off. Do not ship to production, security, or compliance approval without independent review by a qualified senior engineer. For customer-facing work, inspect the structured result artifact and any metadata.integration_status degradation, not just the short summary message.

Step 4: Scientific Analysis

{
  "component": "job_scientist",
  "operation": "design_experiment",
  "params": {
    "session_id": "ps-firm-2026-q1",
    "hypothesis": "Compound X reduces biomarker Y by >= 20% vs placebo",
    "design": "randomized_controlled_trial",
    "groups": ["treatment", "placebo"],
    "target_power": 0.80,
    "alpha": 0.05
  }
}

Then compute sample size:

{
  "component": "job_scientist",
  "operation": "test_hypothesis",
  "params": {
    "session_id": "ps-firm-2026-q1",
    "test": "two_sample_t",
    "effect_size": 0.5,
    "power": 0.80,
    "alpha": 0.05
  }
}

Then search the literature:

{
  "component": "job_scientist",
  "operation": "literature_review",
  "params": {
    "session_id": "ps-firm-2026-q1",
    "query": "Compound X mechanism of action biomarker Y",
    "databases": ["pubmed", "semantic_scholar", "arxiv"],
    "max_results": 50
  }
}

Returns experiment protocol, required sample size (e.g., 64 per group for d=0.5), and ranked literature hits with relevance scores.

{
  "component": "job_lawyer",
  "operation": "review_document",
  "params": {
    "session_id": "ps-firm-2026-q1",
    "document": "... vendor agreement text ...",
    "contract_type": "vendor_services_agreement"
  }
}

Then extract specific clauses:

{
  "component": "job_lawyer",
  "operation": "analyze_case",
  "params": {
    "session_id": "ps-firm-2026-q1",
    "target_clauses": [
      "indemnification",
      "limitation_of_liability",
      "ip_assignment",
      "termination_for_convenience",
      "data_protection"
    ]
  }
}

Then check regulatory compliance:

{
  "component": "job_lawyer",
  "operation": "assess_compliance",
  "params": {
    "session_id": "ps-firm-2026-q1",
    "jurisdictions": ["US", "EU"],
    "regulations": ["GDPR", "CCPA", "SOX"]
  }
}

Clause Deviation Detection

The legal agent compares extracted clauses against a library of market-standard terms. Non-standard deviations — such as uncapped liability, unilateral IP assignment, or missing data breach notification windows — are flagged with severity ratings and suggested alternative language.

Step 6: Clinical and Surgical Analysis

{
  "component": "job_medical_surgical",
  "operation": "diagnose_condition",
  "params": {
    "session_id": "ps-firm-2026-q1",
    "patient": {
      "age": 62,
      "conditions": ["type_2_diabetes", "hypertension"],
      "current_medications": ["metformin", "lisinopril", "aspirin"]
    },
    "procedure": "laparoscopic_cholecystectomy"
  }
}

Then check drug interactions:

{
  "component": "job_medical_surgical",
  "operation": "evaluate_diagnostics",
  "params": {
    "session_id": "ps-firm-2026-q1",
    "current_medications": ["metformin", "lisinopril", "aspirin"],
    "proposed_agents": ["propofol", "rocuronium", "sevoflurane"]
  }
}

Then generate the surgical plan:

{
  "component": "job_medical_surgical",
  "operation": "plan_procedure",
  "params": {
    "session_id": "ps-firm-2026-q1",
    "procedure": "laparoscopic_cholecystectomy",
    "patient_risk_factors": ["type_2_diabetes", "hypertension", "age_over_60"],
    "include_risk_scores": true
  }
}

Drug Interaction Severity

The medical agent classifies interactions as contraindicated, major, moderate, or minor. Contraindicated combinations halt the pipeline and require clinician override before proceeding. This is a hard safety gate, not a suggestion.

What Happened

G6 orchestrated six domain agents through a shared infrastructure layer:

  1. job_framework initialised a session and registered the relevant MCP surface shared by the selected agents
  2. job_finance analysed portfolio allocation, ran Monte Carlo VaR, and checked regulatory compliance
  3. job_engineer (software) designed the service architecture, evaluated datastore/build-vs-buy tradeoffs, and reviewed the implementation code
  4. job_scientist designed an RCT protocol, computed sample sizes for statistical power, and searched literature
  5. job_lawyer reviewed a vendor agreement, extracted material clauses, and checked multi-jurisdictional regulatory compliance
  6. job_medical_surgical evaluated patient fitness, checked drug interactions against anaesthesia agents, and produced a risk-scored surgical plan

Each agent operated on the same MCP surface with domain-specific knowledge injected at session init. Session state persisted across all invocations within the engagement, and no data leaked between practice areas.

Why G6 Over a Bare LLM

A capable LLM can role-play domain experts and answer specialised questions. G6 adds compact MCP tool surfaces with regulatory safety gates, persistent session state across invocations, domain isolation between practice areas, and auditable tool invocation logs. Prebuilt job agent templates combine LLM reasoning with deterministic enforcement — one GoalInput JSON activates the full framework with no prompt engineering required.