1639 lines
43 KiB
JSON
1639 lines
43 KiB
JSON
{
|
|
"schema_version": "v1",
|
|
"tools": [
|
|
{
|
|
"name": "add_attachment",
|
|
"description": "Attach a base64-encoded file to a Jira issue.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"issue_key": {
|
|
"description": "Jira issue key, for example MOCK-1",
|
|
"pattern": "^[A-Z][A-Z0-9_]*-\\d+$",
|
|
"type": "string"
|
|
},
|
|
"filename": {
|
|
"type": "string"
|
|
},
|
|
"content_base64": {
|
|
"pattern": "^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$",
|
|
"type": "string"
|
|
},
|
|
"mime_type": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"issue_key",
|
|
"filename",
|
|
"content_base64"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "add_comment",
|
|
"description": "Add a comment to a Jira issue.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"issue_key": {
|
|
"description": "Jira issue key, for example MOCK-1",
|
|
"pattern": "^[A-Z][A-Z0-9_]*-\\d+$",
|
|
"type": "string"
|
|
},
|
|
"comment": {
|
|
"type": "string"
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"issue_key",
|
|
"comment"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "add_watcher",
|
|
"description": "Add a watcher to a Jira issue.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"issue_key": {
|
|
"description": "Jira issue key, for example MOCK-1",
|
|
"pattern": "^[A-Z][A-Z0-9_]*-\\d+$",
|
|
"type": "string"
|
|
},
|
|
"account_id": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"issue_key",
|
|
"account_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "add_worklog",
|
|
"description": "Log time spent on a Jira issue.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"issue_key": {
|
|
"description": "Jira issue key, for example MOCK-1",
|
|
"pattern": "^[A-Z][A-Z0-9_]*-\\d+$",
|
|
"type": "string"
|
|
},
|
|
"time_spent": {
|
|
"pattern": "^(?:\\d+\\s*[wdhm]\\s*)+$",
|
|
"type": "string"
|
|
},
|
|
"comment": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"started": {
|
|
"anyOf": [
|
|
{
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:?\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"issue_key",
|
|
"time_spent"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "create_board",
|
|
"description": "Create a Jira board for an existing project. Requires is_admin=true.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"project_key": {
|
|
"description": "Jira project key, for example MOCK",
|
|
"pattern": "^[A-Z][A-Z0-9_]*$",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"maxLength": 255,
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"board_type": {
|
|
"default": "scrum",
|
|
"enum": [
|
|
"scrum",
|
|
"kanban"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"filter_jql": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"project_key",
|
|
"name"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "create_issue",
|
|
"description": "Create a new Jira issue.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"project_key": {
|
|
"description": "Jira project key, for example MOCK",
|
|
"pattern": "^[A-Z][A-Z0-9_]*$",
|
|
"type": "string"
|
|
},
|
|
"summary": {
|
|
"type": "string"
|
|
},
|
|
"issue_type": {
|
|
"description": "Jira issue type name. Common defaults include Task, Bug, Story, Epic, and Sub-task; custom issue types are allowed.",
|
|
"examples": [
|
|
"Task",
|
|
"Bug",
|
|
"Story",
|
|
"Epic",
|
|
"Sub-task"
|
|
],
|
|
"maxLength": 255,
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"assignee": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"description": {
|
|
"default": "",
|
|
"type": "string"
|
|
},
|
|
"components": {
|
|
"default": "",
|
|
"type": "string"
|
|
},
|
|
"additional_fields": {
|
|
"default": "{}",
|
|
"type": "string"
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"project_key",
|
|
"summary",
|
|
"issue_type"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "create_sprint",
|
|
"description": "Create Jira sprint for a board.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"board_id": {
|
|
"description": "Jira board ID, for example 1000",
|
|
"pattern": "^\\d+$",
|
|
"type": "string"
|
|
},
|
|
"sprint_name": {
|
|
"type": "string"
|
|
},
|
|
"start_date": {
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:?\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
"end_date": {
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:?\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
"goal": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"board_id",
|
|
"sprint_name",
|
|
"start_date",
|
|
"end_date"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "create_status",
|
|
"description": "Create a Jira status. Requires is_admin=true in imported state.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"status_id": {
|
|
"pattern": "^\\d+$",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"maxLength": 255,
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"status_category": {
|
|
"enum": [
|
|
"new",
|
|
"indeterminate",
|
|
"done",
|
|
"undefined"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"color_name": {
|
|
"anyOf": [
|
|
{
|
|
"maxLength": 255,
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"status_id",
|
|
"name",
|
|
"status_category"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "create_user",
|
|
"description": "Create a Jira user. Requires is_admin=true.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"account_id": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"display_name": {
|
|
"maxLength": 255,
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"email_address": {
|
|
"anyOf": [
|
|
{
|
|
"format": "email",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"active": {
|
|
"default": true,
|
|
"type": "boolean"
|
|
},
|
|
"time_zone": {
|
|
"anyOf": [
|
|
{
|
|
"description": "IANA time zone name, for example America/New_York.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": "America/New_York"
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"account_id",
|
|
"display_name"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "delete_issue",
|
|
"description": "Delete an existing Jira issue.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"issue_key": {
|
|
"description": "Jira issue key, for example MOCK-1",
|
|
"pattern": "^[A-Z][A-Z0-9_]*-\\d+$",
|
|
"type": "string"
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"issue_key"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "export_state",
|
|
"description": "Export the full Jira state as JSON.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_attachments",
|
|
"description": "List all attachments on a Jira issue.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"issue_key": {
|
|
"description": "Jira issue key, for example MOCK-1",
|
|
"pattern": "^[A-Z][A-Z0-9_]*-\\d+$",
|
|
"type": "string"
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"issue_key"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_boards",
|
|
"description": "Get Jira boards, optionally filtered by project key or board type.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"project_key": {
|
|
"anyOf": [
|
|
{
|
|
"description": "Jira project key, for example MOCK",
|
|
"pattern": "^[A-Z][A-Z0-9_]*$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"board_type": {
|
|
"anyOf": [
|
|
{
|
|
"enum": [
|
|
"scrum",
|
|
"kanban"
|
|
],
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"startAt": {
|
|
"default": 0,
|
|
"description": "Starting index for pagination",
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"limit": {
|
|
"default": 10,
|
|
"description": "Maximum number of results",
|
|
"maximum": 50,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_current_user",
|
|
"description": "Get the Jira user whose account is currently authenticated for tool calls.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_epic_issues",
|
|
"description": "Get all issues linked to a specific epic.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"epic_key": {
|
|
"description": "Jira issue key, for example MOCK-1",
|
|
"pattern": "^[A-Z][A-Z0-9_]*-\\d+$",
|
|
"type": "string"
|
|
},
|
|
"limit": {
|
|
"default": 10,
|
|
"description": "Maximum number of results",
|
|
"maximum": 50,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"startAt": {
|
|
"default": 0,
|
|
"description": "Starting index for pagination",
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"epic_key"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_issue",
|
|
"description": "Get details of a specific Jira issue.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"issue_key": {
|
|
"description": "Jira issue key, for example MOCK-1",
|
|
"pattern": "^[A-Z][A-Z0-9_]*-\\d+$",
|
|
"type": "string"
|
|
},
|
|
"fields": {
|
|
"default": "summary,status,assignee,issuetype,priority,created,updated,description,labels",
|
|
"description": "Fields to return",
|
|
"type": "string"
|
|
},
|
|
"expand": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Optional fields to expand"
|
|
},
|
|
"comment_limit": {
|
|
"default": 10,
|
|
"description": "Maximum number of comments",
|
|
"type": "integer"
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"issue_key"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_link_types",
|
|
"description": "Get all available issue link types.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_project_issues",
|
|
"description": "Get all issues for a specific Jira project.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"project_key": {
|
|
"description": "Jira project key, for example MOCK",
|
|
"pattern": "^[A-Z][A-Z0-9_]*$",
|
|
"type": "string"
|
|
},
|
|
"limit": {
|
|
"default": 10,
|
|
"description": "Maximum number of results",
|
|
"maximum": 50,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"startAt": {
|
|
"default": 0,
|
|
"description": "Starting index for pagination",
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"project_key"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_sprint_issues",
|
|
"description": "Get Jira issues from sprint.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"sprint_id": {
|
|
"description": "Jira sprint ID, for example 1001",
|
|
"pattern": "^\\d+$",
|
|
"type": "string"
|
|
},
|
|
"fields": {
|
|
"default": "summary,status,assignee,issuetype,priority,created,updated,description,labels",
|
|
"type": "string"
|
|
},
|
|
"startAt": {
|
|
"default": 0,
|
|
"description": "Starting index for pagination",
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"limit": {
|
|
"default": 10,
|
|
"description": "Maximum number of results",
|
|
"maximum": 50,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"sprint_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_sprints_from_board",
|
|
"description": "Get Jira sprints from board by state.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"board_id": {
|
|
"default": "1000",
|
|
"description": "Jira board ID, for example 1000",
|
|
"pattern": "^\\d+$",
|
|
"type": "string"
|
|
},
|
|
"state": {
|
|
"anyOf": [
|
|
{
|
|
"enum": [
|
|
"active",
|
|
"closed",
|
|
"future"
|
|
],
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"startAt": {
|
|
"default": 0,
|
|
"description": "Starting index for pagination",
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"limit": {
|
|
"default": 10,
|
|
"description": "Maximum number of results",
|
|
"maximum": 50,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_transitions",
|
|
"description": "Get available workflow transitions for an issue.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"issue_key": {
|
|
"description": "Jira issue key, for example MOCK-1",
|
|
"pattern": "^[A-Z][A-Z0-9_]*-\\d+$",
|
|
"type": "string"
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"issue_key"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_users",
|
|
"description": "Get Jira users, optionally filtered by query text or active status.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"query": {
|
|
"default": "",
|
|
"type": "string"
|
|
},
|
|
"active": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"startAt": {
|
|
"default": 0,
|
|
"description": "Starting index for pagination",
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"limit": {
|
|
"default": 10,
|
|
"description": "Maximum number of results",
|
|
"maximum": 50,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_watchers",
|
|
"description": "Get all watchers of a Jira issue.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"issue_key": {
|
|
"description": "Jira issue key, for example MOCK-1",
|
|
"pattern": "^[A-Z][A-Z0-9_]*-\\d+$",
|
|
"type": "string"
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"issue_key"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_worklogs",
|
|
"description": "Get all work logs for a Jira issue.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"issue_key": {
|
|
"description": "Jira issue key, for example MOCK-1",
|
|
"pattern": "^[A-Z][A-Z0-9_]*-\\d+$",
|
|
"type": "string"
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"issue_key"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "import_state",
|
|
"description": "Replace the full Jira state with provided JSON.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"state": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"state"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": {
|
|
"type": "boolean"
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "link_issues",
|
|
"description": "Create a bidirectional link between two Jira issues.\n\nlink_type may be a configured link type name or one of its inward/outward\nlabels, such as Blocks, blocks, or is blocked by. Inward labels resolve to\nthe same canonical link type with direction reversed. Default link types are\nBlocks, Cloners, Duplicate, and Relates; call get_link_types to inspect the\ncurrent world's configured link types.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"inward_issue_key": {
|
|
"description": "Jira issue key, for example MOCK-1",
|
|
"pattern": "^[A-Z][A-Z0-9_]*-\\d+$",
|
|
"type": "string"
|
|
},
|
|
"outward_issue_key": {
|
|
"description": "Jira issue key, for example MOCK-1",
|
|
"pattern": "^[A-Z][A-Z0-9_]*-\\d+$",
|
|
"type": "string"
|
|
},
|
|
"link_type": {
|
|
"type": "string"
|
|
},
|
|
"comment": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"inward_issue_key",
|
|
"outward_issue_key",
|
|
"link_type"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "list_sites",
|
|
"description": "List available Jira sites in the loaded mock state.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "remove_watcher",
|
|
"description": "Remove a watcher from a Jira issue.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"issue_key": {
|
|
"description": "Jira issue key, for example MOCK-1",
|
|
"pattern": "^[A-Z][A-Z0-9_]*-\\d+$",
|
|
"type": "string"
|
|
},
|
|
"account_id": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"issue_key",
|
|
"account_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "search",
|
|
"description": "Search Jira issues using the mock's supported JQL subset.\n\nSupported filters include project, key, status, assignee, reporter, priority,\nissue type, labels, components, sprint/customfield_10002, fixVersion,\nstatusCategory, parent, created, updated, due/duedate, summary ~,\ndescription ~, and text ~. Equality, inequality, IN, NOT IN, IS EMPTY,\nIS NOT EMPTY, date comparisons, top-level OR, and ORDER BY are supported.\n\nUnsupported JQL fields/operators are reported in warningMessages and may be\nignored rather than treated as hard errors. Parenthesized OR clauses are not\nsupported and return no results with a warning. Use fields to request a\ncomma-separated field subset, or *all for the full issue fields.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"jql": {
|
|
"description": "JQL query string",
|
|
"type": "string"
|
|
},
|
|
"fields": {
|
|
"default": "summary,status,assignee,issuetype,priority,created,updated,description,labels",
|
|
"description": "Comma-separated fields to return",
|
|
"type": "string"
|
|
},
|
|
"limit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": 10,
|
|
"description": "Maximum number of results (1-50)"
|
|
},
|
|
"startAt": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": 0,
|
|
"description": "Starting index for pagination"
|
|
},
|
|
"projects_filter": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Comma-separated project keys to filter"
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"jql"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "search_fields",
|
|
"description": "Search Jira fields by keyword.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"keyword": {
|
|
"default": "",
|
|
"type": "string"
|
|
},
|
|
"limit": {
|
|
"default": 10,
|
|
"description": "Maximum number of results",
|
|
"maximum": 50,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"refresh": {
|
|
"default": false,
|
|
"type": "boolean"
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"properties": {
|
|
"result": {
|
|
"items": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"required": [
|
|
"result"
|
|
],
|
|
"type": "object",
|
|
"x-fastmcp-wrap-result": true
|
|
}
|
|
},
|
|
{
|
|
"name": "transition_issue",
|
|
"description": "Move an issue through a workflow transition.\n\ntransition_id must be one of the transitions currently available for the\nissue's status. Call get_transitions(issue_key) immediately before this tool\nto discover valid transition IDs and their target statuses.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"issue_key": {
|
|
"description": "Jira issue key, for example MOCK-1",
|
|
"pattern": "^[A-Z][A-Z0-9_]*-\\d+$",
|
|
"type": "string"
|
|
},
|
|
"transition_id": {
|
|
"description": "Jira workflow transition ID",
|
|
"pattern": "^\\d+$",
|
|
"type": "string"
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"issue_key",
|
|
"transition_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "update_estimate",
|
|
"description": "Set or update time estimates for an issue.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"issue_key": {
|
|
"description": "Jira issue key, for example MOCK-1",
|
|
"pattern": "^[A-Z][A-Z0-9_]*-\\d+$",
|
|
"type": "string"
|
|
},
|
|
"original_estimate": {
|
|
"pattern": "^(?:\\d+\\s*[wdhm]\\s*)+$",
|
|
"type": "string"
|
|
},
|
|
"remaining_estimate": {
|
|
"anyOf": [
|
|
{
|
|
"pattern": "^(?:\\d+\\s*[wdhm]\\s*)+$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"issue_key",
|
|
"original_estimate"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "update_issue",
|
|
"description": "Update editable Jira issue fields. Use transition_issue for status/workflow changes.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"issue_key": {
|
|
"description": "Jira issue key, for example MOCK-1",
|
|
"pattern": "^[A-Z][A-Z0-9_]*-\\d+$",
|
|
"type": "string"
|
|
},
|
|
"fields": {
|
|
"description": "JSON object string of editable issue fields. Supports summary, description, priority, assignee, and labels. Example: {\"summary\":\"New title\",\"description\":\"Updated details\",\"labels\":[\"backend\"]}. Do not use this for status changes; use get_transitions and transition_issue instead.",
|
|
"type": "string"
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"issue_key",
|
|
"fields"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "update_sprint",
|
|
"description": "Update Jira sprint.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"sprint_id": {
|
|
"description": "Jira sprint ID, for example 1001",
|
|
"pattern": "^\\d+$",
|
|
"type": "string"
|
|
},
|
|
"sprint_name": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"state": {
|
|
"anyOf": [
|
|
{
|
|
"enum": [
|
|
"active",
|
|
"closed",
|
|
"future"
|
|
],
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"start_date": {
|
|
"anyOf": [
|
|
{
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:?\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"end_date": {
|
|
"anyOf": [
|
|
{
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:?\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"goal": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"sprint_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "upsert_workflow_transition",
|
|
"description": "Create or update a workflow transition between configured Jira statuses. Requires is_admin=true.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"from_status": {
|
|
"maxLength": 255,
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"transition_id": {
|
|
"pattern": "^\\d+$",
|
|
"type": "string"
|
|
},
|
|
"transition_name": {
|
|
"maxLength": 255,
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"to_status": {
|
|
"maxLength": 255,
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"site_id": {
|
|
"default": "default",
|
|
"description": "Jira site ID. Defaults to the default site.",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"from_status",
|
|
"transition_id",
|
|
"transition_name",
|
|
"to_status"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
}
|
|
],
|
|
"toolsets": {
|
|
"read": [
|
|
"get_attachments",
|
|
"get_boards",
|
|
"get_current_user",
|
|
"get_epic_issues",
|
|
"get_issue",
|
|
"get_link_types",
|
|
"get_project_issues",
|
|
"get_sprint_issues",
|
|
"get_sprints_from_board",
|
|
"get_transitions",
|
|
"get_users",
|
|
"get_watchers",
|
|
"get_worklogs",
|
|
"list_sites",
|
|
"search",
|
|
"search_fields"
|
|
],
|
|
"write": [
|
|
"add_attachment",
|
|
"add_comment",
|
|
"add_watcher",
|
|
"add_worklog",
|
|
"create_board",
|
|
"create_status",
|
|
"create_issue",
|
|
"create_sprint",
|
|
"create_user",
|
|
"delete_issue",
|
|
"link_issues",
|
|
"remove_watcher",
|
|
"transition_issue",
|
|
"update_estimate",
|
|
"update_issue",
|
|
"update_sprint",
|
|
"upsert_workflow_transition"
|
|
],
|
|
"users": [
|
|
"create_user",
|
|
"get_current_user",
|
|
"get_users"
|
|
],
|
|
"sites": [
|
|
"list_sites"
|
|
],
|
|
"issues": [
|
|
"create_issue",
|
|
"delete_issue",
|
|
"get_epic_issues",
|
|
"get_issue",
|
|
"get_link_types",
|
|
"get_project_issues",
|
|
"link_issues",
|
|
"search",
|
|
"search_fields",
|
|
"update_issue"
|
|
],
|
|
"workflow": [
|
|
"create_status",
|
|
"get_transitions",
|
|
"transition_issue",
|
|
"upsert_workflow_transition"
|
|
],
|
|
"sprints": [
|
|
"create_board",
|
|
"create_sprint",
|
|
"get_boards",
|
|
"get_sprint_issues",
|
|
"get_sprints_from_board",
|
|
"update_sprint"
|
|
],
|
|
"time": [
|
|
"add_worklog",
|
|
"get_worklogs",
|
|
"update_estimate"
|
|
],
|
|
"collaboration": [
|
|
"add_attachment",
|
|
"add_comment",
|
|
"add_watcher",
|
|
"get_attachments",
|
|
"get_watchers",
|
|
"remove_watcher"
|
|
],
|
|
"admin": [
|
|
"create_board",
|
|
"create_status",
|
|
"create_user",
|
|
"create_sprint",
|
|
"delete_issue",
|
|
"update_sprint",
|
|
"upsert_workflow_transition"
|
|
],
|
|
"core": [
|
|
"add_comment",
|
|
"create_issue",
|
|
"get_issue",
|
|
"get_project_issues",
|
|
"get_transitions",
|
|
"get_current_user",
|
|
"get_users",
|
|
"search",
|
|
"transition_issue",
|
|
"update_issue",
|
|
"create_sprint",
|
|
"delete_issue",
|
|
"get_epic_issues",
|
|
"get_link_types",
|
|
"get_sprint_issues",
|
|
"get_sprints_from_board",
|
|
"link_issues",
|
|
"search_fields",
|
|
"update_sprint"
|
|
],
|
|
"toolathlon_legacy": [
|
|
"add_comment",
|
|
"create_issue",
|
|
"create_sprint",
|
|
"delete_issue",
|
|
"get_epic_issues",
|
|
"get_boards",
|
|
"get_current_user",
|
|
"get_issue",
|
|
"get_link_types",
|
|
"get_project_issues",
|
|
"get_users",
|
|
"get_sprint_issues",
|
|
"get_sprints_from_board",
|
|
"link_issues",
|
|
"search",
|
|
"search_fields",
|
|
"update_issue",
|
|
"update_sprint"
|
|
],
|
|
"state": [
|
|
"export_state",
|
|
"import_state"
|
|
]
|
|
}
|
|
}
|