Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Connect AI agents to the Privacy MCP server

Vendor MCP
Open markdown

The Privacy MCP connector routes your AI agent's tool calls to Privacy's own MCP server through Scalekit. Each user signs in to Privacy once, and Scalekit stores and refreshes their tokens, so your agent never handles credentials. It comes with 10 tools.

Tools
10
What they doRead · write · destructive
4 · 1 · 54 read1 write5 destructive
Users sign in with
OAuth app
Scalekit's or your own

Setup

  1. Install the SDK

    Terminal window
    npm install @scalekit-sdk/node dotenv
  2. Set your credentials

    Add your Scalekit credentials to your .env file. Find values in app.scalekit.com > Developers > API Credentials.

    .env
    SCALEKIT_ENVIRONMENT_URL=<your-environment-url>
    SCALEKIT_CLIENT_ID=<your-client-id>
    SCALEKIT_CLIENT_SECRET=<your-client-secret>
  3. Create the Privacy MCP connection

    In AgentKit > Connections, create a Privacy MCP connection. The name you give it is the connection_name your code passes. See Configure connections.

    Scalekit credentials are available for Privacy MCP server, so you don't need to register an OAuth app.

  4. Authorize a user and make your first call

    quickstart.mts
    import { ScalekitClient } from '@scalekit-sdk/node'
    import 'dotenv/config'
    import { createInterface } from 'node:readline/promises'
    const scalekit = new ScalekitClient(
    process.env.SCALEKIT_ENVIRONMENT_URL,
    process.env.SCALEKIT_CLIENT_ID,
    process.env.SCALEKIT_CLIENT_SECRET,
    )
    const actions = scalekit.actions
    const connector = 'privacymcp'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize Privacy MCP:', link)
    const rl = createInterface({ input: process.stdin, output: process.stdout })
    await rl.question('Press Enter after authorizing...')
    rl.close()
    // Make your first call
    const result = await actions.executeTool({
    connector,
    identifier,
    toolName: 'privacymcp_list_cards',
    toolInput: {},
    })
    console.log(result)
    Terminal window
    npx tsx quickstart.mts

    Each user signs in once. See Authorize a user for the full flow and statuses.

Tools

Pass the exact name to execute_tool
Try in PlaygroundRequest a tool
  • privacymcp_get_cardRetrieve details for a specific virtual card by its token, including type, state, and spend limits.Read-only

    Get Card

    Retrieve details for a specific virtual card by its token, including type, state, and spend limits.

    Inputs

    card_tokenstringrequired
    Token of the card to retrieve
  • privacymcp_get_panRetrieve the full card number (PAN), CVV2, and expiration date for a virtual card.Read-only

    Get Pan

    Retrieve the full card number (PAN), CVV2, and expiration date for a virtual card. Returns sensitive data.

    Inputs

    card_tokenstringrequired
    Token of the card to retrieve
  • privacymcp_list_cardsList all virtual cards on your Privacy.com account with optional pagination.Read-only

    List Cards

    List all virtual cards on your Privacy.com account with optional pagination.

    Inputs

    pageinteger
    Page number for pagination (1-indexed)default 1
    page_sizeinteger
    Number of cards per page (1-100, default 20)default 20
  • privacymcp_list_transactionsList transactions on your Privacy.com account, with optional filters for card, date range, and result.Read-only

    List Transactions

    List transactions on your Privacy.com account, with optional filters for card, date range, and result.

    Inputs

    account_tokenstring
    Filter transactions by account token
    beginstring
    Start date (inclusive) in YYYY-MM-DD format
    card_tokenstring
    Filter transactions by card token
    endstring
    End date (exclusive) in YYYY-MM-DD format
    pageinteger
    Page number for pagination (1-indexed)default 1
    page_sizeinteger
    Number of transactions per page (1-1000, default 20)default 20
    resultstring
    Filter by transaction resultone of APPROVEDDECLINED
  • privacymcp_update_card_memoUpdate the memo (friendly name) on a virtual card.Write

    Update Card Memo

    Update the memo (friendly name) on a virtual card.

    Inputs

    card_tokenstringrequired
    Token of the card to update
    memostringrequired
    New friendly name for the card
  • privacymcp_close_cardPermanently close a virtual card, blocking all future transactions.Destructive

    Close Card

    Permanently close a virtual card, blocking all future transactions. This action is irreversible.

    Inputs

    card_tokenstringrequired
    Token of the card
  • privacymcp_create_cardCreate a new virtual card on your Privacy.com account with optional spend limits and memo.Destructive

    Create Card

    Create a new virtual card on your Privacy.com account with optional spend limits and memo.

    Inputs

    typestringrequired
    Card type: SINGLE_USE (closes after first use), MERCHANT_LOCKED (locks to first merchant)one of SINGLE_USEMERCHANT_LOCKED
    memostring
    Friendly name for the card
    spend_limitnumber
    Spend limit in dollars (e.g. 25.00)
    spend_limit_durationstring
    How the spend limit resets: per TRANSACTION, MONTHLY, ANNUALLY, or FOREVER (lifetime)one of TRANSACTIONMONTHLYANNUALLYFOREVER
    statestring
    Initial card state (default: OPEN)one of OPENPAUSED
  • privacymcp_pause_cardPause a virtual card to temporarily block all transactions until it is unpaused.Destructive

    Pause Card

    Pause a virtual card to temporarily block all transactions until it is unpaused.

    Inputs

    card_tokenstringrequired
    Token of the card