Skip to content
Scalekit Docs
Talk to an EngineerDashboard

Dart AI MCP connector

OAuth2.1/DCRProject ManagementAIProductivity

AI-native project management tool for task and document management with deep AI integration.

Dart AI 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 = 'dartaimcp'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize Dart AI 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: 'dartaimcp_get_config',
    toolInput: {},
    })
    console.log(result)

Connect this agent connector to let your agent:

  • Update task description, task, doc text — Apply targeted text updates to a task’s description
  • Title retrieve skill by — Retrieve a skill by its title
  • Issue report — Create a concise markdown issue report for Dart Support
  • Task move — Move a task to a specific position by placing it before or after another task
  • List tasks, help center articles, docs — List tasks with powerful filtering options
  • Get view, task, folder — Retrieve an existing view by its ID

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.

dartaimcp_add_task_attachment_from_url#Attach a file from a provided URL to a task.5 params

Attach a file from a provided URL to a task.

NameTypeRequiredDescription
idstringrequiredThe ID of the task.
urlstringrequiredThe URL of the file to attach.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
namestringoptionalOptional display name for the attachment.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_add_task_comment#Record a new comment that the user intends to add to a given task.3 params

Record a new comment that the user intends to add to a given task.

NameTypeRequiredDescription
itemobjectrequiredComment details.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_add_task_time_tracking#Record an additional time tracking entry on a task.6 params

Record an additional time tracking entry on a task.

NameTypeRequiredDescription
finishedAtstringrequiredISO 8601 end datetime of the time tracking entry.
idstringrequiredThe ID of the task.
startedAtstringrequiredISO 8601 start datetime of the time tracking entry.
userstringrequiredThe identifier (email) of the user logging time.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_create_agent#Create a new agent in the workspace with a name and optional description or instructions.12 params

Create a new agent in the workspace with a name and optional description or instructions.

NameTypeRequiredDescription
item_namestringrequiredThe display name of the new agent.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
item_executionModestringoptionalHow the agent runs when triggered.
item_forwarding_bodystringoptionalCustom request body template for the forwarding webhook.
item_forwarding_responseKeystringoptionalKey in the webhook response to extract as the agent's output.
item_forwarding_urlstringoptionalWebhook URL to forward tasks to (used when executionMode is Forwarding).
item_instructions_markdownstringoptionalMarkdown instructions for the agent (used when executionMode is Instructions).
item_instructions_modelstringoptionalLLM model to use for the agent's instructions.
item_instructions_thinkingLevelstringoptionalThinking depth level for the agent's LLM.
item_instructions_webEnabledbooleanoptionalWhether the agent can browse the web.
item_local_agentstringoptionalLocal CLI agent to use when executionMode is Local.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_create_doc#Record a new doc that the user intends to write down.5 params

Record a new doc that the user intends to write down.

NameTypeRequiredDescription
item_titlestringrequiredThe title of the doc.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
item_dartboardDuidstringoptionalThe ID of the dartboard to place the doc in.
item_textstringoptionalThe doc content in markdown format.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_create_task#Record a new task that the user intends to do.3 params

Record a new task that the user intends to do.

NameTypeRequiredDescription
itemobjectrequiredThe task object to create.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_delete_agent#Delete an agent by its ID.3 params

Delete an agent by its ID.

NameTypeRequiredDescription
duidstringrequiredThe ID of the agent to delete.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_delete_doc#Move an existing doc to the trash.3 params

Move an existing doc to the trash.

NameTypeRequiredDescription
duidstringrequiredThe ID of the doc to delete.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_delete_task#Move an existing task to the trash.3 params

Move an existing task to the trash.

NameTypeRequiredDescription
duidstringrequiredThe ID of the task to delete.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_get_agent#Retrieve an existing agent by its ID, including its name and current description.3 params

Retrieve an existing agent by its ID, including its name and current description.

NameTypeRequiredDescription
idstringrequiredThe ID of the agent.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_get_config#Get information about the user's space, including all possible values.2 params

Get information about the user's space, including all possible values.

NameTypeRequiredDescription
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_get_dartboard#Retrieve an existing dartboard.3 params

Retrieve an existing dartboard.

NameTypeRequiredDescription
idstringrequiredThe ID of the dartboard.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_get_doc#Retrieve an existing doc.3 params

Retrieve an existing doc.

NameTypeRequiredDescription
idstringrequiredThe ID of the doc.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_get_folder#Retrieve an existing folder by its ID.3 params

Retrieve an existing folder by its ID.

NameTypeRequiredDescription
idstringrequiredThe ID of the folder.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_get_task#Retrieve an existing task by its ID.3 params

Retrieve an existing task by its ID.

NameTypeRequiredDescription
idstringrequiredThe ID of the task.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_get_view#Retrieve an existing view by its ID.3 params

Retrieve an existing view by its ID.

NameTypeRequiredDescription
idstringrequiredThe ID of the view.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_list_agents#List all agents in the workspace.2 params

List all agents in the workspace.

NameTypeRequiredDescription
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_list_comments#List comments for a task with filtering options.5 params

List comments for a task with filtering options.

NameTypeRequiredDescription
task_idstringrequiredThe ID of the task.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
limitintegeroptionalMax number of comments to return.
offsetintegeroptionalNumber of comments to skip.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_list_docs#List docs with filtering and search capabilities.6 params

List docs with filtering and search capabilities.

NameTypeRequiredDescription
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
dartboardDuidstringoptionalFilter by dartboard ID.
limitintegeroptionalMax number of docs to return.
offsetintegeroptionalNumber of docs to skip.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
textstringoptionalSearch text.
dartaimcp_list_help_center_articles#Search for up to two help center articles by semantic similarity to a query.3 params

Search for up to two help center articles by semantic similarity to a query.

NameTypeRequiredDescription
textstringrequiredThe search query text.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_list_tasks#List tasks with powerful filtering options.9 params

List tasks with powerful filtering options.

NameTypeRequiredDescription
assigneeDuidstringoptionalFilter by assignee user ID.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
dartboardDuidstringoptionalFilter by dartboard ID.
limitintegeroptionalMax number of tasks.
offsetintegeroptionalNumber of tasks to skip.
prioritystringoptionalFilter by priority.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
statusDuidstringoptionalFilter by status ID.
textstringoptionalSearch text.
dartaimcp_move_task#Move a task to a specific position by placing it before or after another task. Exactly one of beforeTaskId or afterTaskId must be provided.5 params

Move a task to a specific position by placing it before or after another task. Exactly one of beforeTaskId or afterTaskId must be provided.

NameTypeRequiredDescription
idstringrequiredThe ID of the task to move.
afterTaskIdstringoptionalMove this task immediately after the task with this ID.
beforeTaskIdstringoptionalMove this task immediately before the task with this ID.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_report_issue#Create a concise markdown issue report for Dart Support. Provide the full report as markdown text in the item.text field.3 params

Create a concise markdown issue report for Dart Support. Provide the full report as markdown text in the item.text field.

NameTypeRequiredDescription
itemobjectrequiredThe issue report in markdown format.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_retrieve_skill_by_title#Retrieve a skill by its title.3 params

Retrieve a skill by its title.

NameTypeRequiredDescription
titlestringrequiredThe title of the skill to retrieve.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_update_agent#Update an agent's name and/or description. Only the fields provided will be changed.13 params

Update an agent's name and/or description. Only the fields provided will be changed.

NameTypeRequiredDescription
duidstringrequiredThe ID of the agent to update.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
item_executionModestringoptionalHow the agent runs when triggered.
item_forwarding_bodystringoptionalUpdated custom request body for the forwarding webhook.
item_forwarding_responseKeystringoptionalUpdated key in the webhook response to extract.
item_forwarding_urlstringoptionalUpdated webhook URL for forwarding mode.
item_instructions_markdownstringoptionalUpdated markdown instructions for the agent.
item_instructions_modelstringoptionalUpdated LLM model for the agent.
item_instructions_thinkingLevelstringoptionalUpdated thinking depth level for the agent's LLM.
item_instructions_webEnabledbooleanoptionalWhether the agent can browse the web.
item_local_agentstringoptionalUpdated local CLI agent for Local execution mode.
item_namestringoptionalNew display name for the agent.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_update_doc#Update certain properties of an existing doc.4 params

Update certain properties of an existing doc.

NameTypeRequiredDescription
idstringrequiredThe ID of the doc to update.
itemobjectrequiredThe doc fields to update.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_update_doc_text#Apply targeted text updates to a doc's content.4 params

Apply targeted text updates to a doc's content.

NameTypeRequiredDescription
duidstringrequiredThe ID of the doc.
operationsarrayrequiredList of text update operations to apply.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_update_task#Update properties of an existing task.4 params

Update properties of an existing task.

NameTypeRequiredDescription
idstringrequiredThe ID of the task to update.
itemobjectrequiredThe task fields to update.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dartaimcp_update_task_description#Apply targeted text updates to a task's description.4 params

Apply targeted text updates to a task's description.

NameTypeRequiredDescription
duidstringrequiredThe ID of the task.
operationsarrayrequiredList of text update operations.
conversation_idstringoptionalConversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstringoptionalBrief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.