Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Connect AI agents to the Pylon MCP server

Vendor MCP
Open markdown

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

Tools
98
What they doRead · write · destructive
53 · 39 · 653 read39 write6 destructive
Users sign in with
OAuth app
Scalekit's or your own

What you can do

  • Handle support issues: create, search, and update issues and read their full message history
  • Manage accounts and contacts: search and update customer accounts, upload files, and look up contacts
  • Run customer projects: create projects from templates and update their milestones, owners, dates, and status
  • Track tasks: create, search, update, and delete tasks linked to accounts, projects, or milestones
  • Review AI agent activity: retrieve an AI agent’s actions, escalations, and messages on a specific issue

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

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

    Scalekit credentials are available for Pylon, 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 = 'pylonmcp'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize Pylon 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: 'pylonmcp_get_me',
    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
  • pylonmcp_get_accountRetrieve a single account by its ID or external ID.Read-only

    Get Account

    Retrieve a single account by its ID or external ID.

    Inputs

    accountstringrequired
    Required. The account ID (UUID) or external ID.
  • pylonmcp_get_account_notesUnavailable for this organization.Read-only

    Get Account Notes

    Unavailable for this organization. Upgrade to Account Intelligence to use this tool. If the user asks for this, tell them that instead of calling this tool. List the timestamped notes in one Notes block of a Pylon account notebook, newest first. Requires the account and the Notes block ID, which users can copy from the notebook. Returns up to 20 notes per page; pass the returned cursor to fetch older notes.

    Inputs

    account_idstringrequired
    The ID or external ID of the account.
    widget_idstringrequired
    The ID of the Notes block, copied from the notebook.
    cursorstring
    Cursor from a previous response to fetch the next page.
    limitinteger
    Number of notes to return. Defaults to 20.
  • pylonmcp_get_agent_issueRetrieve an AI agent's full event and action timeline on a specific issue, including tool calls, runbook steps, reassignments/escalations, messages, and outcomes.Read-only

    Get Agent Issue Activity

    Retrieve an AI agent's full event and action timeline on a specific issue, including tool calls, runbook steps, reassignments/escalations, messages, and outcomes.

    Inputs

    agent_idstringrequired
    The AI agent whose activity to fetch.
    issue_idstringrequired
    The issue to fetch the agent's event timeline for.
  • pylonmcp_get_articleGet full details for a knowledge base article including its content as HTML and as markdown (current_draft_content_markdown, current_published_content_markdown), visibility configuration (visibility level, AI agent access, allowed agent IDs), published status, collection ID, URL, and metadata.Read-only

    Get Article

    Get full details for a knowledge base article including its content as HTML and as markdown (current_draft_content_markdown, current_published_content_markdown), visibility configuration (visibility level, AI agent access, allowed agent IDs), published status, collection ID, URL, and metadata. Images are not downloaded by default. Set include_images=true only when visual inspection is needed to download embedded Pylon-hosted images as image content (PNG, JPEG, GIF, WebP; up to 5 images, 5 MiB each, 10 MiB total). Images are deduplicated across draft and published versions, with draft images first. Unavailable images are reported in text. Look it up by knowledge_base_id and article_id, or by the identifier in its public URL.

    Inputs

    article_idstring
    The ID of the article to fetch.
    identifierstring
    Instead of knowledge_base_id and article_id: the leading number in a public support URL (e.g. "1234567890" from /articles/1234567890-my-slug).
    include_imagesboolean
    Download and include embedded images only when visual inspection is needed. Defaults to false; ordinary article reads do not download images.default false
    knowledge_base_idstring
    The ID of the knowledge base the article belongs to.
  • pylonmcp_get_call_recordingUnavailable for this organization.Read-only

    Get Call Recording

    Unavailable for this organization. Upgrade to Account Intelligence to use this tool. If the user asks for this, tell them that instead of calling this tool. Get call recording details from Pylon. Pass a call_recording_id (UUID) to fetch a specific recording, or pass an account (ID or name) to list the 25 most recent recordings across matching accounts. Only recordings on accounts you can read, or calls you were on, are returned. Returns recording metadata, participants, summary, and full transcript.

    Inputs

    accountstring
    Account ID or name. If provided without call_recording_id, returns recent recordings for the matching account(s).
    call_recording_idstring
    The call recording ID (UUID). If provided, fetches this specific recording.
  • pylonmcp_get_collectionGet details for a knowledge base collection including title, description, icon, parent collection ID, and visibility configuration.Read-only

    Get Collection

    Get details for a knowledge base collection including title, description, icon, parent collection ID, and visibility configuration.

    Inputs

    collection_idstringrequired
    The ID of the collection to fetch.
    knowledge_base_idstringrequired
    The ID of the knowledge base the collection belongs to.
  • pylonmcp_get_contactRetrieve a single contact by their ID or external ID.Read-only

    Get Contact

    Retrieve a single contact by their ID or external ID.

    Inputs

    contactstringrequired
    The contact ID (UUID).
  • pylonmcp_get_custom_fieldsGet custom field definitions for an object type in Pylon.Read-only

    Get Custom Fields

    Get custom field definitions for an object type in Pylon. Returns the list of custom fields configured for the given object type, including their slugs, labels, types, and options. Supports opportunities, accounts, issues, contacts, tasks, and projects.

    Inputs

    object_typestringrequired
    The object type to get custom fields for.one of opportunityaccountissuecontacttaskproject