Jira Service Desk ACTION
Transition Request
Transitions a Jira Service Desk request to a new workflow status. Use List Request Transitions first to get valid
transitionId values for the request. Use List Sites to obtain the required cloudId. Use List My Requests or Get Request to find the issueKey (e.g. IT-42). Optionally include a comment to explain the transition. See the documentation- Action
- Writes data
- OAuth
- SDK
- MCP
IMPLEMENTATION
Call this tool
Connect a user's Jira Service Desk account once, then configure and run Transition Request from your backend or agent.
import { PipedreamClient } from "@pipedream/sdk"
const pd = new PipedreamClient({
projectId: process.env.PIPEDREAM_PROJECT_ID!,
clientId: process.env.PIPEDREAM_CLIENT_ID!,
clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
projectEnvironment: "production",
})
const result = await pd.actions.run({
id: "jira_service_desk-transition-request",
externalUserId: "{external_user_id}", // any stable ID for this user in your system
configuredProps: {
jira_service_desk: { authProvisionId: "apn_xxxxxxx" },
cloudId: "Cloud ID",
issueIdOrKey: "Issue ID or Key",
},
})
console.log(result)curl -X POST https://api.pipedream.com/v1/connect/{project_id}/actions/run \
-H "Content-Type: application/json" \
-H "X-PD-Environment: production" \
-H "Authorization: Bearer {access_token}" \
-d '{
"external_user_id": "{external_user_id}",
"id": "jira_service_desk-transition-request",
"configured_props": {
"jira_service_desk": { "authProvisionId": "apn_xxxxxxx" },
"cloudId": "Cloud ID",
"issueIdOrKey": "Issue ID or Key"
}
}'// accessToken: mint a short-lived token with the Connect SDK — see the MCP guide
const transport = new StreamableHTTPClientTransport(
new URL("https://remote.mcp.pipedream.net/v3"),
{
requestInit: {
headers: {
Authorization: `Bearer ${accessToken}`,
"x-pd-project-id": "{project_id}",
"x-pd-environment": "production",
"x-pd-external-user-id": "{external_user_id}", // any stable ID for this user in your system
"x-pd-app-slug": "jira_service_desk",
},
},
},
)
const mcp = new Client({ name: "my-agent", version: "1.0.0" })
await mcp.connect(transport)
const { tools } = await mcp.listTools()
// listTools() hands your model this tool's input schema, so it can
// fill the arguments itself:
const result = await mcp.callTool({
name: "jira_service_desk-transition-request",
arguments: {
cloudId: "Cloud ID",
issueIdOrKey: "Issue ID or Key",
},
})SCHEMA
Inputs
Pipedream supplies the connected account. Your application provides the operation-specific values below. Dynamic inputs are resolved against that user's account.
| Property | Type | Description |
|---|---|---|
cloudId Cloud ID | string | The Atlassian site (cloud) ID, e.g. 822faf0d-5427-420e-9016-999d3dc76918. Run List Sites to get the id of every site you can access. Required |
issueIdOrKey Issue ID or Key | string | The ID or key of the Jira Service Desk request (e.g. IT-42 or 10001). Use List My Requests to find the issueKey of a request (in its requests array). Required |
transitionId Transition ID | string | The ID of the transition to perform. Use List Request Transitions to retrieve available transition IDs and names (in its transitions array). Required |
additionalComment Additional Comment | string | Optional comment to add when performing the transition. Optional |
REFERENCE
Tool details
Behavior hints are published with the component in the Pipedream registry and surface as MCP tool annotations, so an agent can reason about a tool before it calls it.
- Registry key
- jira_service_desk-transition-request
- Version
- 0.1.5
- App
- Jira Service Desk
- Authentication
- OAuth
- Read-only
- No
- Destructive
- No
- Open world
- Yes
- Source
- View on GitHub ↗