Connect a bank account through Plaid

Add MCP server to your AI tool

Allow AI tools and LLMs to interact with the API documentation portal through MCP.

MCP server URL

https://docs.usehearsay.com/mcp

Standard setup for AI tools providing an mcp.json file

mcp.json
{
  "integrations MCP server": {
    "url": "https://docs.usehearsay.com/mcp"
  }
}

Close
POST /extraction/financial-data/item/public_token/exchange

Exchanges the public token from Plaid Link, saves the bank connection for the caller's extraction code, updates the case's data-source status and queues fetching the accounts. The Plaid access token is never returned. Returns 409 while the organization's Plaid onboarding is not complete.

Headers

  • extraction-code string Required

    Extraction code associated with the case

application/json

Body Required

  • publicToken string Required

    Temporary token generated by Plaid Link (expires after 30 minutes).

Responses

  • 201 application/json
    Hide response attributes Show response attributes object
    • data object Required
      Hide data attributes Show data attributes object
      • financialAccountProviderId string Required

        FinancialAccountProvider document ID

      • plaidItemId string Required

        PlaidItem document ID

      • plaidExternalItemId string Required

        Unique Plaid identifier for the Item

      • requestId string Required

        Request identifier for debugging and support

    • statusCode number Required
    • timestamp string(date-time) Required
POST /extraction/financial-data/item/public_token/exchange
curl \
 --request POST 'http://api.example.com/extraction/financial-data/item/public_token/exchange' \
 --header "Authorization: Bearer $ACCESS_TOKEN" \
 --header "Content-Type: application/json" \
 --header "extraction-code: string" \
 --data '{
  "publicToken": "string"
}'
Request examples
# Headers
extraction-code: string

# Payload
{
  "publicToken": "string"
}
Response examples (201)
{
  "data": {
    "financialAccountProviderId": "507f1f77bcf86cd799439011",
    "plaidItemId": "65a1b2c3d4e5f6a7b8c9d0e2",
    "plaidExternalItemId": "M5eVJqLnv3tbzdngLDp9FL5OlDNxlNhlE55op",
    "requestId": "Aim3b"
  },
  "statusCode": 201,
  "timestamp": "2026-01-15T10:15:00.000Z"
}