Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Pylon MCP connector

OAuth 2.1/DCRCustomer SupportProject Management

Connect to Pylon MCP. Manage customer issues, accounts, projects, milestones, and tasks from your AI workflows.

Pylon MCP connector

  1. Terminal window
    npm install @scalekit-sdk/node

    Full SDK reference: Node.js | Python

  2. 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. quickstart.ts
    import { ScalekitClient } from '@scalekit-sdk/node'
    import 'dotenv/config'
    const scalekit = new ScalekitClient(
    process.env.SCALEKIT_ENV_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)
    process.stdout.write('Press Enter after authorizing...')
    await new Promise(r => process.stdin.once('data', r))
    // Make your first call
    const result = await actions.executeTool({
    connector,
    identifier,
    toolName: 'pylonmcp_get_me',
    toolInput: {},
    })
    console.log(result)

Connect this agent connector to let your agent:

  • Files upload account — Upload one or more files to an account
  • Update task, project, milestone — Update a task title, status, assignee, due date, or other fields by its ID
  • Search tasks, projects, issues — Search tasks by text, project, account, assignee, and status
  • Get user, tasks, task — Retrieve a single user by their ID or email
  • Delete task — Permanently delete a task by its ID
  • Create task, project from template, project — Create a new task with a title

Use the exact tool names from the Tool list below when you call execute_tool. If you’re not sure which name to use, list the tools available for the current user first.

pylonmcp_create_issue#Create a new issue in Pylon with a title, body, and account. Optionally assign a requester, priority, team, and tags.8 params

Create a new issue in Pylon with a title, body, and account. Optionally assign a requester, priority, team, and tags.

NameTypeRequiredDescription
account_idstringrequiredID of the account to associate with this resource.
body_htmlstringrequiredThe HTML content of the body of the issue. Required.
titlestringrequiredThe title of the issue. Required.
assignee_idstringoptionalID of the user to assign this resource to.
prioritystringoptionalThe priority of the issue.
requester_idstringoptionalThe ID of the requester (contact) that this issue is on behalf of.
tagsarrayoptionalAn array of tags to set on the issue.
team_idstringoptionalThe ID of the team to assign the issue to.
pylonmcp_create_milestone#Create a milestone within a project. Optionally set a due date and account.4 params

Create a milestone within a project. Optionally set a due date and account.

NameTypeRequiredDescription
namestringrequiredMilestone name.
project_idstringrequiredProject ID for this milestone.
account_idstringoptionalID of the account to associate with this resource.
due_datestringoptionalDue date in RFC3339 format.
pylonmcp_create_project#Create a project for an account. Provide a name or a project_template_id to scaffold milestones and tasks from a template.10 params

Create a project for an account. Provide a name or a project_template_id to scaffold milestones and tasks from a template.

NameTypeRequiredDescription
account_idstringrequiredID of the account to associate with this resource.
customer_portal_visiblebooleanoptionalWhether this project is visible in the customer portal.
description_htmlstringoptionalProject description as HTML.
end_datestringoptionalEnd date in RFC3339 format.
namestringoptionalProject name. Required unless project_template_id is provided.
owner_idstringoptionalID of the user who owns this resource.
owner_typestringoptionalOwner type. Defaults to user when owner_id is provided.
project_template_idstringoptionalProject template ID to scaffold tasks, milestones, and subtasks from.
start_datestringoptionalStart date in RFC3339 format.
statusstringoptionalProject status.
pylonmcp_create_project_from_template#Create a project from a template, copying its milestones, tasks, and subtasks. Optionally override name, dates, owner, and status.9 params

Create a project from a template, copying its milestones, tasks, and subtasks. Optionally override name, dates, owner, and status.

NameTypeRequiredDescription
account_idstringrequiredID of the account to associate with this resource.
project_template_idstringrequiredProject template ID to use.
customer_portal_visiblebooleanoptionalOptional customer portal visibility override.
description_htmlstringoptionalOptional project description override as HTML.
end_datestringoptionalOptional end date override in RFC3339 format.
namestringoptionalOptional project name override.
owner_idstringoptionalID of the user who owns this resource.
start_datestringoptionalOptional start date override in RFC3339 format.
statusstringoptionalOptional project status override.
pylonmcp_create_task#Create a new task with a title. Optionally link it to an account, project, milestone, or parent task.10 params

Create a new task with a title. Optionally link it to an account, project, milestone, or parent task.

NameTypeRequiredDescription
titlestringrequiredThe title of the task. Required.
account_idstringoptionalID of the account to associate with this resource.
assignee_idstringoptionalID of the user to assign this resource to.
body_htmlstringoptionalThe body HTML content of the task.
customer_portal_visiblebooleanoptionalWhether the task is visible in the customer portal.
due_datestringoptionalThe due date for the task in RFC3339 format.
milestone_idstringoptionalThe ID of the milestone that this task belongs to.
parent_task_idstringoptionalThe ID of the parent task, to create this as a subtask.
project_idstringoptionalThe ID of the project that this task belongs to.
statusstringoptionalThe status of the task.
pylonmcp_delete_task#Permanently delete a task by its ID.1 param

Permanently delete a task by its ID.

NameTypeRequiredDescription
task_idstringrequiredThe ID of the task to delete. Required.
pylonmcp_get_account#Retrieve a single account by its ID or external ID.1 param

Retrieve a single account by its ID or external ID.

NameTypeRequiredDescription
accountstringrequiredThe account ID (UUID) or external ID.
pylonmcp_get_contact#Retrieve a single contact by their ID or external ID.1 param

Retrieve a single contact by their ID or external ID.

NameTypeRequiredDescription
contactstringrequiredThe contact ID (UUID).
pylonmcp_get_issue#Retrieve a single issue by its ID.1 param

Retrieve a single issue by its ID.

NameTypeRequiredDescription
issuestringrequiredThe issue ID (UUID) or issue number.
pylonmcp_get_issue_messages#Retrieve all messages and replies for a specific issue.1 param

Retrieve all messages and replies for a specific issue.

NameTypeRequiredDescription
issuestringrequiredThe issue ID (UUID) or issue number.
pylonmcp_get_me#Retrieve the profile of the currently authenticated user.0 params

Retrieve the profile of the currently authenticated user.

pylonmcp_get_milestone#Retrieve a single milestone by its ID.1 param

Retrieve a single milestone by its ID.

NameTypeRequiredDescription
milestone_idstringrequiredThe milestone ID to get details for.
pylonmcp_get_milestones#List milestones, optionally filtered by project or account.3 params

List milestones, optionally filtered by project or account.

NameTypeRequiredDescription
account_idstringoptionalID of the account to associate with this resource.
limitintegeroptionalMaximum number of items to return.
project_idstringoptionalProject ID to filter milestones by.
pylonmcp_get_project#Retrieve a single project by its ID.1 param

Retrieve a single project by its ID.

NameTypeRequiredDescription
project_idstringrequiredThe project ID to get details for. Required.
pylonmcp_get_project_templates#List available project templates, optionally filtered by name.2 params

List available project templates, optionally filtered by name.

NameTypeRequiredDescription
limitintegeroptionalMaximum number of items to return.
namestringoptionalOptional case-insensitive template name filter.
pylonmcp_get_projects#List projects, optionally filtered by account and archived status.3 params

List projects, optionally filtered by account and archived status.

NameTypeRequiredDescription
account_idstringoptionalID of the account to associate with this resource.
include_archivedbooleanoptionalWhether to include archived projects. Defaults to false.
limitintegeroptionalMaximum number of items to return.
pylonmcp_get_task#Retrieve a single task by its ID.1 param

Retrieve a single task by its ID.

NameTypeRequiredDescription
task_idstringrequiredThe task ID to get details for. Required.
pylonmcp_get_tasks#List tasks, optionally filtered by project, account, and status.4 params

List tasks, optionally filtered by project, account, and status.

NameTypeRequiredDescription
account_idstringoptionalID of the account to associate with this resource.
limitintegeroptionalMaximum number of items to return.
project_idstringoptionalThe project ID to filter tasks by.
statusesarrayoptionalFilter by task statuses.
pylonmcp_get_user#Retrieve a single user by their ID or email.1 param

Retrieve a single user by their ID or email.

NameTypeRequiredDescription
userstringrequiredThe user ID (UUID).
pylonmcp_search_accounts#Search accounts by name, domain, owner, tags, or custom field filters.8 params

Search accounts by name, domain, owner, tags, or custom field filters.

NameTypeRequiredDescription
cursorstringoptionalPagination cursor from the previous response to fetch the next page.
custom_field_filtersarrayoptionalFilter by custom fields. Each filter specifies a custom field slug, operator, and value(s). For user-type fields, pass a Pylon user name or ID as the value - names will be resolved to Pylon user IDs automatically.
domainstringoptionalFilter by domain (accounts containing this domain).
external_idstringoptionalFilter by external ID.
limitintegeroptionalMaximum number of items to return.
namestringoptionalFilter by account name (partial match).
ownerstringoptionalFilter by account owner. Accepts a user ID or name (partial match).
tagsarrayoptionalFilter by tags. Returns accounts containing any of the specified tags.
pylonmcp_search_issues#Search issues by account, assignee, state, tags, type, and date range.14 params

Search issues by account, assignee, state, tags, type, and date range.

NameTypeRequiredDescription
accountstringoptionalFilter by account. Accepts either an account ID or a name (partial match).
assigneestringoptionalFilter by assignee. Accepts either a user ID or a name (partial match).
created_afterstringoptionalFilter for issues created after this time (RFC3339 format).
created_beforestringoptionalFilter for issues created before this time (RFC3339 format).
cursorstringoptionalPagination cursor from the previous response to fetch the next page.
custom_field_filtersarrayoptionalFilter by custom fields. Each filter specifies a custom field slug, operator, and value(s). For user-type fields, pass a Pylon user name or ID as the value - names will be resolved to Pylon user IDs automatically.
is_issue_groupbooleanoptionalFilter by whether the issue is an issue group. Pass true to get only issue groups, false to exclude them.
limitintegeroptionalMaximum number of items to return.
requesterstringoptionalFilter by requester. Accepts either a contact ID or a name (partial match).
statesarrayoptionalFilter by issue states (inclusion). Accepts built-in slugs (new, waiting_on_you, waiting_on_customer, on_hold, closed) and custom state slugs.
states_not_inarrayoptionalExclude issues in these states. Accepts built-in slugs (new, waiting_on_you, waiting_on_customer, on_hold, closed) and custom state slugs.
tagsarrayoptionalFilter by tags. Returns issues containing any of the specified tags.
team_idstringoptionalFilter by team ID. Returns issues assigned to the specified team.
typestringoptionalFilter by issue type.
pylonmcp_search_projects#Search projects by text, account, owner, status, and archived state.6 params

Search projects by text, account, owner, status, and archived state.

NameTypeRequiredDescription
account_idstringoptionalID of the account to associate with this resource.
include_archivedbooleanoptionalWhether to include archived projects. Defaults to false.
limitintegeroptionalMaximum number of items to return.
owner_idstringoptionalID of the user who owns this resource.
search_textstringoptionalSearch text for project names.
statusesarrayoptionalFilter by project statuses.
pylonmcp_search_tasks#Search tasks by text, project, account, assignee, and status.6 params

Search tasks by text, project, account, assignee, and status.

NameTypeRequiredDescription
account_idstringoptionalID of the account to associate with this resource.
assignee_idstringoptionalID of the user to assign this resource to.
limitintegeroptionalMaximum number of items to return.
project_idstringoptionalThe project ID to filter tasks by.
search_textstringoptionalSearch text for full-text search across task titles.
statusesarrayoptionalFilter by task statuses.
pylonmcp_update_account#Update an account name, owner, tags, or custom fields by its ID.5 params

Update an account name, owner, tags, or custom fields by its ID.

NameTypeRequiredDescription
account_idstringrequiredID of the account to associate with this resource.
custom_fieldsobjectoptionalCustom field values to set. Keys are custom field slugs (use get_custom_fields with object_type 'account' to discover available slugs), values are the field values to set. For multi-select fields, use comma-separated values.
namestringoptionalThe new name for the account.
owner_idstringoptionalID of the user who owns this resource.
tagsarrayoptionalAn array of tags to set on the account. This replaces all existing tags.
pylonmcp_update_issue#Update an issue state, assignee, team, or tags by its ID.5 params

Update an issue state, assignee, team, or tags by its ID.

NameTypeRequiredDescription
issue_idstringrequiredThe ID or number of the issue to update. Required.
assignee_idstringoptionalID of the user to assign this resource to.
statestringoptionalThe state to set the issue to. Standard values: new, waiting_on_you, waiting_on_customer, on_hold, closed. Custom status slugs are also accepted.
tagsarrayoptionalAn array of tags to set on the issue. This replaces all existing tags.
team_idstringoptionalThe ID of the team to assign the issue to. Pass empty string to remove team assignment.
pylonmcp_update_milestone#Update a milestone name or due date by its ID.3 params

Update a milestone name or due date by its ID.

NameTypeRequiredDescription
milestone_idstringrequiredThe milestone ID to update.
due_datestringoptionalDue date in RFC3339 format. Pass empty string to clear.
namestringoptionalMilestone name.
pylonmcp_update_project#Update project details such as name, status, dates, owner, and visibility by its ID.9 params

Update project details such as name, status, dates, owner, and visibility by its ID.

NameTypeRequiredDescription
project_idstringrequiredThe project ID to update.
customer_portal_visiblebooleanoptionalWhether this project is visible in the customer portal.
description_htmlstringoptionalProject description as HTML.
end_datestringoptionalEnd date in RFC3339 format. Pass empty string to clear.
is_archivedbooleanoptionalWhether this project is archived.
namestringoptionalProject name.
owner_idstringoptionalID of the user who owns this resource.
start_datestringoptionalStart date in RFC3339 format. Pass empty string to clear.
statusstringoptionalProject status.
pylonmcp_update_task#Update a task title, status, assignee, due date, or other fields by its ID.10 params

Update a task title, status, assignee, due date, or other fields by its ID.

NameTypeRequiredDescription
task_idstringrequiredThe ID of the task to update. Required.
account_idstringoptionalID of the account to associate with this resource.
assignee_idstringoptionalID of the user to assign this resource to.
body_htmlstringoptionalThe body HTML content of the task.
customer_portal_visiblebooleanoptionalWhether the task is visible in the customer portal.
due_datestringoptionalThe due date for the task in RFC3339 format. Pass empty string to clear.
milestone_idstringoptionalThe ID of the milestone. Pass empty string to clear.
project_idstringoptionalThe ID of the project. Pass empty string to clear.
statusstringoptionalThe status of the task.
titlestringoptionalThe title of the task.
pylonmcp_upload_account_files#Upload one or more files to an account. Each file requires a filename and base64-encoded content.2 params

Upload one or more files to an account. Each file requires a filename and base64-encoded content.

NameTypeRequiredDescription
account_idstringrequiredID of the account to associate with this resource.
filesarrayrequiredFiles to upload. 1 to 5 files per call.