Workflow Studio · Integration design
Connect reviewed AI workflows to core systems and CRM.
How Workflow Studio connects to core banking, core insurance and CRM platforms, and to your AI agents, with the controls a bank or insurer expects and human review before any result leaves.
Design preview, version 0.1, 4 November 2026. This describes the planned integration surface. It is not available yet. Integrations are delivered today as engagement work, through your own integration layer.
The short version
Workflow Studio offers one governed integration surface through two interfaces:
- An Integration API with signed webhooks. Your integration team connects it to core systems and CRM through your API gateway or integration platform, such as MuleSoft, Boomi, Azure API Management or Kong. That is how most banks and insurers expect a vendor to connect.
- An MCP server over the same operations, so your approved AI agents (for example Microsoft Copilot Studio, Salesforce Agentforce, Claude or ChatGPT Enterprise) can find and run governed workflows and read reviewed results.
Three rules hold for every interface.
- Results leave only after human review. No interface can accept, reject or correct a run. A named person decides in Workflow Studio.
- Meaning travels with the data. Inputs and outputs are keyed by approved term IDs from a pinned Ontology Studio release, so mapping to Salesforce or ClaimCenter fields means mapping to agreed meaning.
- We never hold your system credentials. Your systems call Workflow Studio, or receive its signed webhooks. Workflow Studio does not log in to yours.
Architecture
One surface, three kinds of caller.
Your systems, your agents and your reviewers each reach Workflow Studio through controls at the edge. Behind them, the workflow engine runs under per-workspace row-level security, keeps cited evidence, pins the approved ontology release and records an audit log. Model steps only draft.
Interface 1
Integration API (REST)
JSON over HTTPS under /api/v1, with an OpenAPI 3.1 specification your team can import into its gateway or iPaaS.
| Operation | What it does | Scope |
|---|---|---|
| Get a token | OAuth 2.0 client credentials; 15-minute tokens; optional mutual TLS | none |
| List workflows | Workflow versions this integration may use, with input and output term IDs and the pinned ontology release | workflows:read |
| Start a run | Send documents (text, PDF, Word) and structured inputs keyed by term ID; an idempotency key is required | runs:create |
| Run status | Status, times, review due time and reviewer assignment; no content | runs:read |
| Reviewed result | Only once accepted: mapped outputs with citations, reviewer, decision time, workflow version and ontology fingerprint | results:read |
| Review packet | The self-contained review record, for filing in your document system | results:read |
| Cancel | Before review only; recorded in run history | runs:create |
Deliberately absent: accept, reject, return and correct. Those stay with a named person in Workflow Studio.
Start a run
POST /api/v1/workflows/{workflowId}/runs
Authorization: Bearer <token>
Idempotency-Key: 6b0f2c9e-…
Content-Type: application/json
{
"externalRef": { "system": "salesforce-fsc", "object": "Claim", "id": "a0X5e00000ABC" },
"inputs": { "claim.id": "CL-9055", "policy.number": "GP-2201" },
"documents": [ { "title": "claim-file.pdf", "contentType": "application/pdf", "base64": "…" } ]
}
Read the reviewed result
{
"runId": "3f2a…", "status": "accepted",
"workflow": { "version": 4, "ontologyRelease": { "version": "2.0.0", "fingerprint": "9ec69e11" } },
"review": { "decision": "accepted", "reviewer": "j.alvarez@client.example",
"at": "2026-11-12T15:04:11Z", "separateReviewer": true },
"outputs": {
"claimant.id": { "value": "P-217", "citations": [ { "document": "claim-file.pdf", "quote": "member P-217" } ] },
"prior_claims": { "value": ["CL-7012", "CL-8130"], "corrected": false, "citations": [ … ] }
},
"externalRef": { "system": "salesforce-fsc", "object": "Claim", "id": "a0X5e00000ABC" }
}
Conventions: problem-details errors with stable codes; idempotent starts (the same key and body return the original run); the major version in the path, with 12 months’ notice before retirement; per-integration rate limits; a request ID on every response, recorded in the audit log.
Signed webhooks
| Event | When | Payload |
|---|---|---|
| run.needs_review | A run reaches the review point | Run ID, workflow version, due time, your external reference; no content |
| run.exception | A live step is held as an exception | As above, with the exception category |
| run.decided | Accepted or rejected | As above, with the decision; you fetch the result with your own credentials |
Each delivery is signed with HMAC-SHA256 over a timestamp and the body, and is rejected if older than five minutes. Delivery is at least once, retried with backoff for 24 hours, and logged for administrators. Events carry an ID so you can discard duplicates. Content is never pushed: if an endpoint is misconfigured, no claim or customer data goes with it.
Interface 2
An MCP server for your AI agents
Your teams are deploying internal agents. An MCP server lets those agents use approved workflows and approved meaning instead of improvising their own. It is a second door onto the same governed operations, never a side door.
It is a remote server using the Streamable HTTP transport, with authorization following the MCP specification’s OAuth-based model. Tokens are issued for an integration or for a signed-in person, scoped to this server, and never passed through to other services.
| Tool | What it does |
|---|---|
| list_workflows | Purpose, required inputs as term IDs and the review policy, written for agents |
| start_workflow_run | Starts a run with an idempotency key, and says that a person will review the result |
| get_run_status | Where the run is, and whether it is waiting for review |
| get_reviewed_result | Returns nothing until a person has accepted the run |
| lookup_term | The approved definition, aliases and scoped meanings of a term, such as what “customer” means in claims |
Not available through MCP: review decisions, corrections, workflow or ontology editing, library administration, and anything that writes to your systems.
- Documents and tool arguments are treated as untrusted data. Instructions found inside a document are never followed, and exact-quotation checks stay in force.
- Tool descriptions are fixed and versioned with the server, so data can’t change them.
- Every call is scoped, rate-limited and written to the same audit log, with the agent’s client ID and, when present, the person.
- A read-only MCP server for Ontology Studio’s approved terms is planned alongside it.
Security model
| Control | Design |
|---|---|
| Identity | Each integration is a service account created by a workspace administrator, with a secret shown once and stored as a hash; optional mutual TLS and IP allow-lists |
| Authorization | Scoped tokens with an allow-list of workflows. Calls run as the service account under the same row-level security as people. It can start runs and read accepted results; it cannot review, edit or administer |
| Least data | Status and webhook payloads carry no content; results return mapped outputs and citations, not whole source documents |
| Secrets | Client and signing secrets hashed or encrypted at rest; server keys held only in protected secret settings |
| Isolation | Workspace scoping enforced in the database; an integration cannot cross workspaces |
| Abuse | Payload size limits, file-type checks, rate limits and lockout after repeated authentication failures |
| Model use | Live steps run only when an administrator has enabled them and processing consent is recorded. The model drafts; people decide |
Evidence for risk, audit and compliance teams
- Audit log for every call: time, request ID, integration, person if any, operation, workflow version, run, outcome and source address. Content is never logged. Retention is configurable and the log can be exported.
- Run record: frozen inputs, step results with exact citations, model and token counts, reviewer, decision, corrections with reasons and the ontology release fingerprint. Also available as the review packet.
- Change control: workflow versions are immutable, and test-case gates can stop an untested version from running on other documents.
The platform supplies access control, logging, data minimization, human oversight and model change records, designed to support obligations such as NYDFS Part 500, FFIEC guidance, GLBA safeguards and the NAIC model bulletin on AI. Certifications and agreements (SOC 2, penetration testing, a data processing agreement, data residency and SSO) are on the roadmap below. We will not describe the service as compliant with any regulation or standard before the evidence exists.
Map to meaning, once
The API speaks approved term IDs. Your integration maps them to system fields once, versioned against the ontology release. When a new release changes a mapped term, Workflow Studio names the affected fields before you upgrade.
| Approved term | Salesforce Financial Services Cloud | Guidewire ClaimCenter |
|---|---|---|
| claim.id | Claim.Name | Claim.ClaimNumber |
| claimant.id | ClaimParticipant with the Claimant role | ClaimContact with the claimant role |
| policyholder.id | InsurancePolicy.NameInsuredId | Policy insured |
| policy.date | InsurancePolicy.EffectiveDate | Policy.EffectiveDate |
| prior_claims | Related Claim records for the claimant | Claims where the contact holds the claimant role |
Field names are illustrative and are confirmed against each client’s configured objects.
Example: Salesforce Financial Services Cloud
- An adjuster opens a claim. A record-triggered Flow calls your integration layer.
- The integration layer obtains a token and starts a run with the claim reference, mapped inputs and the claim file.
- Workflow Studio runs the steps. The assigned examiner sees the run in the reviewer inbox.
- On acceptance, the
run.decidedwebhook reaches your integration layer, which verifies the signature, reads the reviewed result and writes the mapped outputs to the claim with your own Salesforce credentials. - The review packet is attached to the claim, and the ontology release fingerprint is stored with the update.
Roadmap
| Phase | What it adds |
|---|---|
| 1. Integration API | Service accounts, the token endpoint, the REST operations, idempotency, the OpenAPI specification and the audit log |
| 2. Webhooks and MCP | Signed events with retries and a delivery log; the MCP server and the approved-term lookup |
| 3. Enterprise trust | SSO for people, SOC 2 readiness, an external penetration test, a data processing agreement, residency options, an incident runbook and an optional client-hosted deployment |
| Engagement recipes | Salesforce FSC, Dynamics 365 (Power Automate connector from the OpenAPI specification), Guidewire ClaimCenter through your gateway, and MuleSoft and Boomi templates, delivered in your sandbox |
What the design will not do
- Hold credentials for your core systems or CRM.
- Let any machine interface approve, reject or correct a run.
- Push document content in webhooks.
- Let agents edit workflows or ontologies.
- Claim compliance or certifications before they exist.