Skip to content
DevelopersMCP transport
Documentation menu Open Integrations

Custom CRM

MCP transport

Expose the fixed Pongg CRM tools at your own Streamable HTTP endpoint. The tool arguments and receipts match the REST contract.

MCP transport

Choose MCP to use the fixed Pongg tools over Streamable HTTP 2026-07-28. Enter the MCP endpoint URL itself; no REST suffix is appended. Arguments and structured responses match the REST contract.

Each POST carries the following headers. Write calls also include Idempotency-Key. The protocol, method and tool-name headers must match the JSON body.

Contract example
Content-Type: application/json
Accept: application/json, text/event-stream
Authorization: Bearer YOUR_BRIDGE_CREDENTIAL
MCP-Protocol-Version: 2026-07-28
Mcp-Method: tools/call
Mcp-Name: pongg_capabilities
Contract example
{
  "jsonrpc": "2.0",
  "id": "0123456789abcdef01234567",
  "method": "tools/call",
  "params": {
    "name": "pongg_capabilities",
    "arguments": {
      "tenant_id": "tenant-example-001",
      "contract_version": "pongg.crm.v1"
    },
    "_meta": {
      "io.modelcontextprotocol/protocolVersion": "2026-07-28",
      "io.modelcontextprotocol/clientInfo": {
        "name": "Pongg CRM bridge",
        "version": "1.0.0"
      },
      "io.modelcontextprotocol/clientCapabilities": {}
    }
  }
}
Contract example
{
  "jsonrpc": "2.0",
  "id": "0123456789abcdef01234567",
  "result": {
    "resultType": "complete",
    "isError": false,
    "structuredContent": {
      "contract_version": "pongg.crm.v1",
      "operations": [
        "contacts.search",
        "contacts.upsert",
        "leads.create",
        "availability.list",
        "appointments.create"
      ],
      "booking_closes_availability": true
    }
  }
}

Echo the 24-character JSON-RPC request ID; it correlates the response and is separate from the 64-character write idempotency key. Return resultType: "complete" and the matching REST response object in structuredContent. Return isError: false on success. Plain text is not parsed into a receipt. JSON and bounded request-scoped SSE data frames are supported; notifications without request IDs may precede the final response.

No initialize/session exchange, arbitrary tool discovery, resources, prompts, sampling, elicitation, browser sign-in or input-required conversations are supported. Server requests, JSON-RPC errors and incomplete results fail the operation. Remote prose and tool descriptions never become instructions for the agent.

Verify the structured result

  • Return exactly one response with the request’s JSON-RPC id. The 24-character correlation id is not the write idempotency key.
  • Return resultType:complete, isError:false and the operation’s receipt in structuredContent. Text-only success messages do not confirm a booking.
  • Use the configured bridge credential on every request. Browser sign-in discovery, arbitrary tools and server-initiated requests are not supported.
  • For request-scoped SSE, send valid JSON events and one final response within the request limit. Pongg does not hold a persistent session.

Use the same synthetic operation fixtures to test the REST-shaped arguments and receipts. The transport must preserve the exact idempotency key for writes.

Search documentation