Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Connect AI agents to the Runware MCP server

Vendor MCP
Open markdown

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

Tools
12
What they doRead · write · destructive
9 · 2 · 19 read2 write1 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 Runware MCP connection

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

    Scalekit credentials are available for Runware 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 = 'runwaremcp'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize Runware 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: 'runwaremcp_list_capabilities',
    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
  • runwaremcp_accountRetrieve Runware account information including balance and usage.Read-only

    Account

    Retrieve Runware account information including balance and usage.

    Inputs

    operationstringrequired
    Which account operation to perform. Currently only "getDetails" is supported.one of getDetails
    includeCostboolean
    Include cost information
  • runwaremcp_get_task_detailsRetrieve the original request and response for a previously executed task.Read-only

    GetTaskDetails

    Retrieve the original request and response for a previously executed task. Useful for recovering results or auditing past generations.

    Inputs

    taskUUIDstringrequired
    UUID of the task to retrieve
  • runwaremcp_list_capabilitiesList every model capability Runware supports, with their human-readable labels.Read-only

    List Capabilities

    List every model capability Runware supports, with their human-readable labels. Use this to discover the taxonomy (e.g. "io:text-to-image", "op:upscale") before filtering list_models by capability, or to answer "what can Runware do?".

    Inputs

    This tool takes no inputs.

  • runwaremcp_list_modelsList Runware's official, curated model integrations.Read-only

    List Models

    List Runware's official, curated model integrations. Returns each model's name, AIR identifier, headline, capabilities, and pricing. Call this FIRST whenever the user names or asks about a model that could be first-party (e.g. "FLUX 2 dev", "SDXL", "Veo 3", "Gemma", "Wan 2.5", "Z-Image"), and also for open-ended "what models are available?" questions. Match the user's named model against the returned names. Only fall through to model_search if no curated entry matches.

    Inputs

    capabilitystring
    Optional capability filter (e.g. "io:text-to-image", "op:upscale"). Use list_capabilities first to discover valid ids.
    categorystring
    Optional output-modality filterone of imagevideoaudiotext3d
    creatorstring
    Optional creator id filter (e.g. "google", "alibaba")
    searchstring
    Optional free-text search across name, AIR, creator, capabilities
  • runwaremcp_model_detailsGet the full curated metadata for a single Runware model by AIR identifier — name, headline, description, capabilities, pricing, and creator.Read-only

    Get Model Details

    Get the full curated metadata for a single Runware model by AIR identifier — name, headline, description, capabilities, pricing, and creator. Use this when the user wants more depth on a model already surfaced by list_models, or to confirm an AIR matches what the user named.

    Inputs

    airstringrequired
    Model AIR identifier (e.g. "runware:400@1")
  • runwaremcp_model_examplesGet sample input/output examples for a curated Runware model.Read-only

    Get Model Examples

    Get sample input/output examples for a curated Runware model. Useful when the user wants to see what a model produces, or to crib a working request shape before constructing a run() call.

    Inputs

    airstringrequired
    Model AIR identifier
    capabilitystring
    Optional capability filter (e.g. "io:text-to-image")
  • runwaremcp_model_pricingGet pricing details for a curated Runware model — overview text plus example configurations with prices (e.g.Read-only

    Get Model Pricing

    Get pricing details for a curated Runware model — overview text plus example configurations with prices (e.g. "1024×1024 = $0.0032"). Use this when the user asks how much a specific model will cost.

    Inputs

    airstringrequired
    Model AIR identifier
  • runwaremcp_model_schemaGet the parameter schema for a specific model.Read-only

    Get Model Schema

    Get the parameter schema for a specific model. Returns the JSON Schema describing all accepted parameters, their types, defaults, and constraints. ALWAYS call this before calling run() with a model you haven't used before, so you know what parameters to pass.

    Inputs

    modelstringrequired
    Model AIR identifier (e.g., "runware:400@1", "google:3@3", "google:gemma@4-31b")