Back to Investor Brief

Investor brief · MCP server

Pause as a tool surface for every AI agent

Pause-Health.ai exposes its MuleSoft Experience APIs through a Model Context Protocol (MCP) server. Claude Desktop and Cursor connect over stdio; Salesforce Agentforce 3.0 Registry and any other HTTP-based MCP client connect over Streamable HTTP at https://pause-health.ai/api/mcp. Both transports run today off a single tool registration. Backing Experience APIs are mocked in the prototype; the npm-published stdio one-liner lands in Phase 1.

The four tools

Shape-stable today, customer-deployed in Phase 2

Pills: Wired in prototype tool wired in the prototype today (against the mocked Experience APIs); the Mule Process API name shown is the production target, design-stage.

Wired in prototype

get_patient_timeline

Production target: pause-patient-bundle-process-api

Returns a FHIR R5 Bundle (Patient + raw wearable Observations + DBDP-computed feature Observation with derivedFrom provenance). Wired today against the mocked Experience API at /api/mulesoft/patient/[id]/timeline.

Wired in prototype

get_patient_intake

Production target: pause-intake-process-api

Returns the structured intake record produced by the Salesforce Agentforce Service Agent — chief complaint, symptom cluster, red-flag screen, triage recommendation. Wired today against /api/mulesoft/patient/[id]/intake.

Wired in prototype

find_menopause_providers

Production target: pause-provider-directory-experience-api

Searches Pause's provider directory by ZIP and menopause-certified flag. Returns providers ranked by Pause's internal graph score. Wired today against /api/mulesoft/providers (deterministic fixture).

Wired in prototype

experience_api_health

Production target: pause-patient-bundle-process-api (root)

Liveness check for the Experience API plane. Use before larger tool calls. Wired today against /api/mulesoft/health.

Why MCP

Four reasons the agent-side contract is MCP

Pills: Wired in prototype wired in the prototype today · Today · partial partly wired, partly roadmap · Designed design decision, activates with the first design partner.

Designed

One server, every modern agent

Claude Desktop, Cursor, OpenAI Responses API, and the Salesforce Agentforce Service Agent all speak MCP. Exposing Pause's MuleSoft Experience APIs as MCP tools makes them callable from every relevant AI runtime — no per-client adapter, no custom plugin format. Today the Pause MCP server is in-repo; once it's npm-published (Phase 1), the multi-runtime distribution lands.

Today · partial

Shape-stable contract today, swap the base URL tomorrow

The tool surface is identical between the mocked Experience APIs (today) and a customer's MuleSoft Anypoint deployment (Phase 2). Switching is a single environment variable: PAUSE_MCP_BASE_URL. Every agent integration built against the mock works against production with no client changes. The shapes are wired today; the distribution (npm + Anypoint gateway) is roadmap.

Designed

Layers cleanly on top of MuleSoft

MCP is the agent-side contract. MuleSoft is the integration-side contract. They compose: Mule Experience APIs become MCP tools 1:1, and Mule's API policies (rate limit, OAuth, observability) apply transparently to every MCP call. This composition is design-stage — see /proposal/mulesoft for what's currently mocked vs deployed.

Wired in prototype

Auditable provenance

Each tool call returns a meta block including which Process / Experience API would serve it in production, plus FHIR derivedFrom references for computed features. The same audit trail that will satisfy HIPAA-compliant logging is visible to the agent at call time. Today the meta block references Mule API names symbolically; real correlation IDs land in Phase 2.

Touch the architecture

Four live surfaces you can hit right now

The MCP server lives at mcp/ in this repo. It speaks stdio (the standard transport for local AI clients) and fronts the mocked Experience APIs under /api/mulesoft/*. The descriptor is published at /.well-known/mcp.json so any MCP-aware registry or gateway can discover the tool surface.

GET /.well-known/mcp.jsonMocked Experience APITry the provider directoryMCP server source on GitHub

Install today · clone the repo

The five-minute path that works right now

Wired in prototypeWorks against the live mocked Experience APIs at https://pause-health.ai/api/mulesoft/*. No credentials needed.

1. Clone, build, smoke-test:

# 1. Clone Pause-Health.ai
git clone https://github.com/hucmaggie/pause-health.ai.git
cd pause-health.ai/mcp

# 2. Install + build
npm install
npm run build

# 3. Run a smoke test against the live mocked APIs
PAUSE_MCP_BASE_URL=https://pause-health.ai \
  node dist/server.js < <(echo '{"jsonrpc":"2.0","id":1,"method":"tools/list"}')

2. Register with Claude Desktop — add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "pause-health": {
      "command": "node",
      "args": ["/absolute/path/to/pause-health.ai/mcp/dist/server.js"],
      "env": {
        "PAUSE_MCP_BASE_URL": "https://pause-health.ai"
      }
    }
  }
}

Cursor uses the same shape in ~/.cursor/mcp.json. Both clients spawn node dist/server.js as a child process and talk MCP over stdio.

After Phase 1 ships · npm one-liner

The two-minute path, once @pause-health/mcp is published

DesignedPhase 1 (2 weeks): flip private: true off in mcp/package.json, npm publish --access public, submit to the MCP registry. Then the snippet below works.

Claude Desktop / Cursor — once published:

{
  "mcpServers": {
    "pause-health": {
      "command": "npx",
      "args": ["-y", "@pause-health/mcp"],
      "env": {
        "PAUSE_MCP_BASE_URL": "https://pause-health.ai"
      }
    }
  }
}

Production deployment · Agentforce

How a customer Salesforce org will consume Pause as an MCP tool source

DesignedPhase 2 (4–6 weeks with first design partner): the gateway, connector, and Anypoint policies land together — see /proposal/agentforce.
// Salesforce Agentforce 3.0 — register the Pause MCP server with the
// Agentforce Registry (the June 2025 release introduced a native MCP
// client; the legacy "External Services connector" pattern is obsolete
// for MCP intake).
//
// 1. Setup -> Agentforce Registry -> New MCP server.
//    Paste the Streamable HTTP URL:
//      https://pause-health.ai/api/mcp
//    Salesforce calls tools/list against it and auto-populates the
//    four Pause tools.
// 2. Allowlist the tools you want. Each one is persisted to the
//    Agentforce Asset Library as a callable action; the tool's
//    description becomes the agent's reasoning instructions.
// 3. Agentforce Builder -> your agent -> Topic ->
//    This Topic's Actions -> Add from Asset Library. Validate in
//    Plan Canvas.
// 4. Tool calls flow:
//      Agentforce agent -> Agentforce Registry / Gateway ->
//      https://pause-health.ai/api/mcp ->
//      MuleSoft Experience API -> JupyterHealth / DBDP.
//
// For a customer-managed Anypoint deployment, set PAUSE_MCP_BASE_URL
// on the Vercel deployment to the customer's Experience-tier base URL
// and the same four tools transparently call the customer's APIs.
// The registration URL doesn't change.

Pause as an MCP host · the other direction

Pause's Care Router agent now CALLS external MCP servers, not just exposes its own

Wired in prototypeShipped 2026-06-24. The Care Router task endpoint at /api/agents/care-router/tasks runs an MCP client per request, registers a loopback to /api/mcp (always-on) and any external slots configured via PAUSE_MCP_HOST_REMOTES, and resolves provider recommendations through find_menopause_providers tool calls instead of direct HTTP. End-to-end identical to the legacy direct-call path; a routing decision against zip=92614 returns the same provider order + distance rankings either way.

Why ship both directions:

Configuration + flow:

// Vercel env (or .env.local) on the prototype:
PAUSE_MCP_HOST_ENABLED=on
// Optional — add external MCP servers the Care Router can also call:
PAUSE_MCP_HOST_REMOTES=[
  { "id": "salesforce", "url": "https://customer-mcp.example/mcp",
    "headers": { "Authorization": "Bearer …" } }
]

// Inside frontend/app/api/agents/care-router/tasks/route.ts:
//   const host = createMCPHostFromRequest(req);
//   const decision = await route(intake, grounding, {
//     providerLookup: providerLookupViaMcpHost({ host })
//   });
//   await host.close();

// Behavior:
//   1. Care Router task arrives at /api/agents/care-router/tasks
//   2. Host spins up an MCP Streamable HTTP client per registered remote
//   3. Tool calls iterate: loopback (https://pause-health.ai/api/mcp)
//      first, then each external slot in order. First ok() wins.
//   4. If every remote errors, host returns the last error and the
//      adapter falls back to the legacy direct-call ProviderLookup so
//      the routing decision NEVER regresses on host failure.
//   5. Trace span carries mcpHostEnabled, mcpHostRemoteCount, and a
//      per-attempt array { remoteId, ok, error? } so /demo/agent-fabric
//      shows which MCP server served the provider list.

The host opens a fresh MCP client per request (no module-level state, no cold-start staleness) and tears it down in a finally block when the routing decision finishes. 17 tests cover the host + adapter — config parsing, fallback chains, JSON payload parsing, an in-process integration test using InMemoryTransport that pins the wire contract — and the existing Care Router route tests still pass unchanged. See frontend/lib/mcp/host.ts and frontend/lib/mcp/provider-lookup.ts.

Prototype vs production

What changes between the two install paths

AspectPrototype todayCustomer deployment
MCP server transportBoth transports run today off a single tool registration: stdio (npx @pause-health/mcp; private:true today, npm-published in Phase 1) for Claude Desktop / Cursor, AND Streamable HTTP at https://pause-health.ai/api/mcp for Agentforce 3.0 Registry / any HTTP-based MCP client.Same two transports. Streamable HTTP fronted by the customer's Anypoint API gateway and tied to their identity provider; stdio still works locally for developer tooling.
Backing Experience APIsMocked endpoints under /api/mulesoft/* served by the Next.js frontend (deterministic fixtures).Real MuleSoft Anypoint Experience APIs on the customer's Runtime Fabric or CloudHub 2.0. Same JSON shapes.
AuthenticationNone. Public read of synthetic demo data.Bearer token via PAUSE_MCP_API_KEY, validated by Mule API policies and tied to the customer's OAuth provider.
Tool surfaceFour tools: timeline, intake, providers, health.Same four tools; additional tools added as new Experience APIs ship (e.g. orders, referrals).
ProvenanceMocked meta blocks reference the production Mule API names symbolically.Real Mule correlation IDs, HIPAA audit IDs, and API instance identifiers returned in the meta block.
Distributiongit clone + local build (today).Published npm package + Anypoint Exchange listing (Phase 1).

Phased plan

From reference implementation to multi-tenant plane

Wired in prototype

Phase 0 — Reference implementation + Streamable HTTP endpoint

Today

Pause MCP server committed under mcp/ with two transports running off a single tool registration: stdio (Claude Desktop, Cursor, local clients) via `npx @pause-health/mcp`, and Streamable HTTP at https://pause-health.ai/api/mcp (Agentforce 3.0 Registry, server-to-server) via a Next.js route handler. Four tools backed by mocked Experience APIs. A parity test pins the two transport copies of the tool definitions byte-identical so a description tweak can't ship to one path and not the other.

Designed

Phase 1 — Publish to the registry

2 weeks

Publish @pause-health/mcp to npm (today: package is `private: true`). Submit to the public MCP server registry alongside the existing https://pause-health.ai/api/mcp HTTP endpoint.

Designed

Phase 2 — Customer-managed gateway

4–6 weeks with first design partner

Deploy the MCP server behind the customer's MuleSoft Anypoint API gateway. Wire OAuth via PingFederate / Azure AD. The Agentforce Service Agent registers it as a tool source.

Future

Phase 3 — Multi-tenant MCP plane

Ongoing

One Pause MCP package, N customer deployments. Tools auto-expand as new MuleSoft Experience APIs ship. Telemetry rolled up across deployments for product analytics.

Why investors should care

The four compounding advantages

Read deeper

Where the MCP server sits in the bigger picture