Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Connect AI agents to the Vantage MCP server

Vendor MCP
Open markdown

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

Tools
153
What they doRead · write · destructive
79 · 25 · 4979 read25 write49 destructive
Users sign in with
OAuth app
Your own Vantage MCP server app

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 Vantage MCP connection

    In AgentKit > Connections, create a Vantage MCP connection and copy its redirect URI. The name you give it is the connection_name your code passes. See Configure connections.

  4. Register an OAuth app

    Vantage MCP server connections use your own OAuth app. Register one with Vantage MCP server and add the redirect URI you copied.

    Then enter the app's Client ID and Client Secret on the Vantage MCP connection.

  5. 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 = 'vantagemcp'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize Vantage 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: 'vantagemcp_get_myself',
    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
  • vantagemcp_get_anomalyGets a specific anomaly alert by its token.Read-only

    Get Anomaly

    Gets a specific anomaly alert by its token.

    Inputs

    anomaly_alert_tokenstringrequired
    Anomaly Alert token (`anmly_alrt_*`).
  • vantagemcp_get_billing_ruleGets a specific Billing Rule by its token.Read-only

    Get Billing Rule

    Gets a specific Billing Rule by its token. Returns details about the rule including its type, configuration, and applicable dates.

    Inputs

    billing_rule_tokenstringrequired
    Billing Rule token (`bllng_rule_*`).
  • vantagemcp_get_budgetGets a specific Budget by its token.Read-only

    Get Budget

    Gets a specific Budget by its token. Optionally includes performance data showing actual spend vs. budget amounts by period. The token of a budget can be used to link the user to the budget in the Vantage Web UI. Build the link like this: https://console.vantage.sh/go/<BudgetToken>

    Inputs

    budget_tokenstringrequired
    Budget token (`bdgt_*`).
    include_performanceboolean
    If true, includes performance data showing actual spend vs. budget amounts by period.
  • vantagemcp_get_budget_alertGet a specific Budget Alert by token.Read-only

    Get Budget Alert

    Get a specific Budget Alert by token. Budget Alerts monitor Budget objects.

    Inputs

    budget_alert_tokenstringrequired
    Budget Alert token (`bdgt_alrt_*`).
  • vantagemcp_get_business_metricGet a specific BusinessMetric by token.Read-only

    Get Business Metric

    Get a specific BusinessMetric by token. BusinessMetrics can be attached to Cost Reports for per-unit cost analysis, and their values can be retrieved with get-business-metric-values or get-business-metric-forecasted-values.

    Inputs

    business_metric_tokenstringrequired
    Business Metric token (`bsnss_mtrc_*`).
  • vantagemcp_get_business_metric_forecasted_valuesGet forecasted values for a BusinessMetric.Read-only

    Get Business Metric Forecasted Values

    Get forecasted values for a BusinessMetric. Values are returned in descending date order by the Vantage API and can include optional labels. Use start_date to limit results to values on or after a YYYY-MM-DD date. This endpoint is paginated. If the user asks for all values, complete data, or values for a date range such as a month, keep calling this tool with pagination.nextPage until pagination.hasNextPage is false before answering. The API only supports a start_date lower bound. For bounded ranges, such as a specific month, fetch all pages from the requested start date and then filter the returned values to the requested end date locally.

    Inputs

    business_metric_tokenstringrequired
    Business Metric token (`bsnss_mtrc_*`).
    pagenumber
    The page number to return, defaults to 1.default 1
    start_datestring
    Query BusinessMetric values by the first date to filter from. Must be YYYY-MM-DD format.
  • vantagemcp_get_business_metric_valuesGet historical values for a BusinessMetric.Read-only

    Get Business Metric Values

    Get historical values for a BusinessMetric. Values default to monthly sums grouped by label. Use day for daily sums or raw to preserve original timestamps, including hourly values; binned sums may not suit gauges or percentages. Values are returned in descending date order by the Vantage API and can include optional labels. When a request depends on labels but exact values are not confirmed, call list-business-metric-labels first and pass the selected values through label_values. Skip label discovery when exact values are already supplied. Use start_date to limit results to values on or after a YYYY-MM-DD date. This endpoint is paginated. If the user asks for all values, complete data, or values for a date range such as a month, keep calling this tool with pagination.nextPage until pagination.hasNextPage is false before answering. The API only supports a start_date lower bound. For bounded ranges, such as a specific month, fetch all pages from the requested start date and then filter the returned values to the requested end date locally.

    Inputs

    business_metric_tokenstringrequired
    Business Metric token (`bsnss_mtrc_*`).
    date_binstring
    Time aggregation. Defaults to month. Day and month sum amounts by UTC bucket and label; raw preserves original timestamps, including hourly values. Use raw for gauges or percentages when summing is not appropriate.one of rawdaymonthdefault month
    label_valuesarray
    Return values matching any exact label value. For multi-label metrics, matches values under any label key. If exact values are not confirmed, call list-business-metric-labels first.
    pagenumber
    The page number to return, defaults to 1.default 1
    start_datestring
    Query BusinessMetric values by the first date to filter from. Must be YYYY-MM-DD format.
  • vantagemcp_get_canvasGets a specific Canvas by its token.Read-only

    Get Canvas

    Gets a specific Canvas by its token. Returns the canvas details including its title, prompt, status, and structured table data. The token of a canvas can be used to link the user to the canvas in the Vantage Web UI. Build the link like this: https://console.vantage.sh/go/<CanvasToken>

    Inputs

    canvas_tokenstringrequired
    Canvas token (`cnvs_*`).