%% Reusable MCP pattern: host to product APIs %% Reference architecture: a reusable pattern, not a live client integration flowchart TB subgraph z0["Your AI host environment"] user["User
named person"] host["AI host application
chat app, IDE or agent"] clients["MCP clients
one per server"] approve["Human approval
sensitive actions"] end subgraph z1["GeekMidst reference pattern (proposed)"] gw["Identity and policy gateway
proposed"] audit["Audit log and monitoring
every call"] registry["MCP server registry
internal allowlist"] adapters["GeekMidst adapters
proposed, not built"] end subgraph z2["Vendor servers and product platforms"] vendor["Vendor-hosted MCP servers
Salesforce, MCE, Data 360, Braze"] sfapi["Salesforce APIs
REST, Apex, Flow"] mcapi["Marketing Cloud APIs
Engagement"] d360api["Data 360 APIs
query, segments"] brazeapi["Braze REST API
endpoint-scoped keys"] custom["Custom APIs
your services"] end user -->|"question or request"| host host -->|"tool selection"| clients clients -->|"MCP requests"| gw gw -.->|"approval request"| approve approve -->|"decision"| gw gw -->|"call record"| audit gw -->|"server lookup"| registry gw -->|"vendor server calls"| vendor gw -->|"adapter calls"| adapters vendor -->|"Salesforce"| sfapi vendor -->|"Marketing Cloud"| mcapi vendor -->|"Data 360"| d360api vendor -->|"Braze"| brazeapi adapters -->|"scoped calls"| sfapi adapters -->|"scoped calls"| brazeapi adapters -->|"custom calls"| custom classDef salesforce stroke:#125BD8,fill:#e8f0fd class sfapi salesforce classDef data stroke:#2f8a3a,fill:#e9f6ea class d360api data classDef engagement stroke:#5747AF,fill:#efedfa class mcapi,brazeapi engagement classDef ai stroke:#5747AF,fill:#f6f4fd class host,clients ai classDef integration stroke:#334155,fill:#eef2f6 class registry,adapters integration classDef security stroke:#1f2937,fill:#f3f4f6 class gw,audit security classDef external stroke:#64748b,fill:#ffffff class vendor,custom external classDef people stroke:#125BD8,fill:#ffffff class user,approve people