Jira MCP Server
Jira MCP 서버
Jira 통합을 위한 모델 컨텍스트 프로토콜(MCP) 서버입니다. 이 서버를 통해 Claude와 같은 AI 비서가 MCP를 사용하여 Jira와 상호 작용할 수 있습니다.
저자: Samuel Rizzo
특징
모든 Jira 프로젝트 나열
자세한 문제 정보를 얻으세요
프로젝트 및 담당자별로 문제 검색
프로젝트 멤버 목록
사용자의 프로젝트 멤버십 및 할당된 문제 확인
사용자 정의 필드로 새로운 문제 만들기
필터링 옵션을 사용하여 스프린트 나열 및 쿼리
Related MCP server: Jira MCP Server
설치
지엑스피1
구성
MCP 서버 구성
cursor/windsurf mcp 설정 파일에 다음 구성을 추가하세요.
{
"mcpServers": {
"jira-mcp": {
"command": "node",
"args": ["./dist/index.js"],
"env": {
"JIRA_HOST": "your-domain.atlassian.net",
"JIRA_EMAIL": "your-email@example.com",
"JIRA_API_TOKEN": "your-api-token-here"
}
}
}
}API 액세스 설정
Jira API 토큰을 생성합니다.
Atlassian 계정 설정 으로 이동
"API 토큰 생성"을 클릭하세요
이름을 지정하고 "만들기"를 클릭하세요.
토큰을 복사하세요(인증에 필요합니다)
Atlassian 계정과 연결된 Jira 호스트 URL(예:
your-domain.atlassian.net)과 이메일 주소를 기록해 두세요.이러한 자격 증명을 MCP 서버 구성에 추가합니다.
사용 가능한 도구
1. 프로젝트 목록( mcp_jira_list_projects )
인증된 사용자가 액세스할 수 있는 모든 Jira 프로젝트를 나열합니다.
매개변수:
jiraHost: Jira 도메인(예: 'your-domain.atlassian.net')email: Jira 이메일apiToken: Jira API 토큰
2. 문제 세부 정보 가져오기( mcp_jira_get_issue )
특정 Jira 문제에 대한 자세한 정보를 검색합니다.
매개변수:
issueKey: Jira 이슈 키(예: 'PROJECT-123')jiraHost: Jira 도메인email: Jira 이메일apiToken: Jira API 토큰
3. 검색 문제( mcp_jira_search_issues )
특정 프로젝트의 문제를 검색하며, 담당자별로 필터링할 수도 있습니다.
매개변수:
projectKey: Jira 프로젝트 키assigneeName: (선택 사항) 담당자 이름으로 문제 필터링jiraHost: Jira 도메인email: Jira 이메일apiToken: Jira API 토큰
4. 프로젝트 멤버 목록( mcp_jira_list_project_members )
특정 Jira 프로젝트의 모든 멤버를 나열합니다.
매개변수:
projectKey: Jira 프로젝트 키jiraHost: Jira 도메인email: Jira 이메일apiToken: Jira API 토큰
5. 사용자 문제 확인( mcp_jira_check_user_issues )
사용자가 프로젝트의 멤버인지 확인하고 할당된 문제를 나열합니다.
매개변수:
projectKey: Jira 프로젝트 키userName: 확인할 사용자의 표시 이름jiraHost: Jira 도메인email: Jira 이메일apiToken: Jira API 토큰
6. 이슈 생성( mcp_jira_create_issue )
지정된 세부 정보를 사용하여 Jira 프로젝트에서 새로운 이슈를 생성합니다.
매개변수:
projectKey: Jira 프로젝트 키summary: 이슈의 제목/요약description: 문제에 대한 자세한 설명issueType: (선택 사항) 문제 유형(예: '작업', '버그', '스토리'), 기본값은 '작업'입니다.assigneeName: (선택 사항) 문제를 할당할 사람의 표시 이름reporterName: (선택 사항) 문제를 보고하는 사람의 표시 이름sprintId: (선택 사항) 이슈를 추가할 스프린트의 IDjiraHost: Jira 도메인email: Jira 이메일apiToken: Jira API 토큰
7. 스프린트 목록( mcp_jira_list_sprints )
필터링 옵션을 사용하여 Jira의 현재 스프린트를 나열합니다.
매개변수:
boardId: (선택 사항) 특정 보드로 스프린트를 필터링하기 위한 Jira 보드 IDprojectKey: (선택 사항) 프로젝트와 관련된 스프린트를 찾기 위한 프로젝트 키state: (선택 사항) 필터링할 스프린트 상태(활성, 미래, 닫힘 또는 모두), 기본값은 '활성'입니다.jiraHost: Jira 도메인email: Jira 이메일apiToken: Jira API 토큰
사용 예
다음은 Claude와 함께 사용할 수 있는 몇 가지 쿼리 예시입니다.
"List all Jira projects in PROJECT"
"Get details for issue PROJECT-123"
"Search for issues assigned to John in PROJECT"
"List all members of PROJECT"
"Check what issues are assigned to Jane in PROJECT"
"Create a new bug issue titled 'Login page error' in PROJECT"
"List active sprints for PROJECT"지속적인 개발
이 프로젝트는 현재 활발하게 개발 중입니다. Jira와의 통합 기능을 확장하기 위해 새로운 도구와 기능이 정기적으로 추가되고 있습니다. 향후 업데이트 내용은 다음과 같습니다.
추가 이슈 관리 도구
스프린트 및 보드 관리
고급 검색 및 필터링 옵션
사용자 정의 필드 처리
워크플로 전환
그리고 더 많은 것들!
최신 소식을 확인하려면 저장소를 시청하거나 별표 표시를 하세요.
기여하다
이 프로젝트는 오픈소스 프로젝트이므로 여러분의 참여를 환영합니다! 참여 방법:
저장소를 포크하세요
기능 브랜치를 생성하세요
변경 사항을 만드세요
풀 리퀘스트 제출
오픈소스
이 코드는 완전히 오픈 소스입니다. 자유롭게 다음 작업을 수행할 수 있습니다.
복사
수정하다
분배하다
상업적으로 사용하다
비공개로 사용
제한 없음 - 코드를 원하는 대로 사용하세요!
특허
MIT
Available Tools
7 toolsjira_check_user_issuesC
Checks if a user is a member of a project and lists their assigned issues
| Name | Required | Description | Default |
|---|---|---|---|
| jiraHost | No | The Jira host URL (e.g., 'your-domain.atlassian.net') | |
| No | Email address associated with the Jira account | ||
| apiToken | No | API token for Jira authentication | |
| projectKey | Yes | The Jira project key (e.g., 'PROJECT') | |
| userName | Yes | The display name of the user to check for in the project |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but offers minimal behavioral insight. It mentions checking membership and listing issues but doesn't disclose authentication requirements (though schema hints at apiToken), rate limits, error conditions, or what happens if the user isn't a member. For a tool with 5 parameters and no annotation coverage, this is inadequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core functionality. It wastes no words but could be slightly more structured (e.g., separating the two main actions). Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 5 parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain the return format (e.g., structured list of issues, membership boolean), error handling, or how the two actions (check membership + list issues) relate. For a tool with authentication and data retrieval complexity, more context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, providing good parameter documentation. The description adds no additional parameter semantics beyond what's in the schema—it doesn't explain relationships between parameters (e.g., how email/userName interact) or usage nuances. Baseline 3 is appropriate since the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with specific verbs ('checks', 'lists') and resources ('user', 'project', 'assigned issues'). It distinguishes from siblings like 'jira_list_project_members' by focusing on a specific user's membership and issues rather than listing all members. However, it doesn't explicitly differentiate from 'jira_search_issues' which might also find user issues.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when to choose this over 'jira_list_project_members' for membership checking or 'jira_search_issues' for finding user issues. No prerequisites or exclusions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
jira_create_issueC
Creates a new issue in a Jira project with specified details
| Name | Required | Description | Default |
|---|---|---|---|
| jiraHost | No | The Jira host URL (e.g., 'your-domain.atlassian.net') | |
| No | Email address associated with the Jira account | ||
| apiToken | No | API token for Jira authentication | |
| projectKey | Yes | The Jira project key (e.g., 'PROJECT') | |
| summary | Yes | The title/summary of the issue | |
| description | Yes | Issue description in ADF (Atlassian Document Format). REQUIRED: Must be an object with structure: {"type": "doc", "version": 1, "content": [{"type": "paragraph", "content": [{"type": "text", "text": "Your description text"}]}]} | |
| issueType | No | Type of issue (e.g., 'Task', 'Bug', 'Story') | Task |
| assigneeName | No | The display name of the person to assign the issue to | |
| reporterName | No | The display name of the person reporting the issue | |
| sprintId | No | ID of the sprint to add the issue to |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It states the tool creates an issue but doesn't describe what happens upon creation (e.g., issue key generation, notifications, permissions required, error handling, or rate limits). For a mutation tool with zero annotation coverage, this leaves significant gaps in understanding its behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that gets straight to the point with zero waste. It's appropriately sized and front-loaded, clearly stating the core action without unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given this is a mutation tool with no annotations and no output schema, the description is incomplete. It doesn't explain what the tool returns (e.g., issue key, success status), error conditions, or behavioral nuances. For a 10-parameter tool that creates resources, more context is needed to guide effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 10 parameters thoroughly. The description adds no additional meaning beyond stating 'with specified details', which is redundant. Baseline 3 is appropriate when the schema does the heavy lifting, though the description doesn't compensate or enhance parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Creates') and resource ('new issue in a Jira project'), making the purpose unambiguous. It distinguishes from siblings like 'jira_get_issue' (read) or 'jira_search_issues' (query), though it doesn't explicitly name alternatives. The description is specific but lacks explicit sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'jira_check_user_issues' or 'jira_search_issues'. It doesn't mention prerequisites (e.g., authentication setup) or contextual constraints (e.g., project access). Usage is implied by the action but without explicit when/when-not statements.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
jira_get_issueC
Retrieves details of a specific Jira issue by key
| Name | Required | Description | Default |
|---|---|---|---|
| jiraHost | No | The Jira host URL (e.g., 'your-domain.atlassian.net') | |
| No | Email address associated with the Jira account | ||
| apiToken | No | API token for Jira authentication | |
| issueKey | Yes | The Jira issue key (e.g., 'PROJECT-123') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states it 'retrieves details' but doesn't specify what details are returned, whether it's a read-only operation, authentication requirements beyond the schema, or potential rate limits. This is inadequate for a tool with authentication parameters and no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose without unnecessary words. Every part of the sentence ('retrieves details', 'specific Jira issue', 'by key') contributes essential information, making it optimally concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (involving authentication and issue retrieval), lack of annotations, and no output schema, the description is insufficient. It doesn't explain what 'details' are returned, error conditions, or how authentication parameters interact, leaving significant gaps for an agent to use the tool effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, so the schema fully documents all four parameters. The description doesn't add any parameter-specific information beyond what's in the schema, such as clarifying the format of 'issueKey' or explaining the relationship between authentication parameters. This meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('retrieves details') and resource ('specific Jira issue by key'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'jira_search_issues' or 'jira_check_user_issues', which might also retrieve issue information but with different scopes or filters.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention that this is for single-issue lookup by key, as opposed to 'jira_search_issues' for broader queries or 'jira_check_user_issues' for user-specific issues, leaving the agent to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
jira_list_project_membersC
Lists all members of a specific Jira project
| Name | Required | Description | Default |
|---|---|---|---|
| jiraHost | No | The Jira host URL (e.g., 'your-domain.atlassian.net') | |
| No | Email address associated with the Jira account | ||
| apiToken | No | API token for Jira authentication | |
| projectKey | Yes | The Jira project key (e.g., 'PROJECT') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states it's a list operation, implying read-only behavior, but doesn't mention authentication requirements, rate limits, pagination, or what the output format looks like. This is a significant gap for a tool with authentication parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that gets straight to the point with zero waste. It's appropriately sized and front-loaded, making it easy to understand at a glance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of authentication parameters and no output schema, the description is incomplete. It doesn't explain authentication requirements, return values, or error handling. For a tool with 4 parameters (including auth) and no annotations, more context is needed to be fully helpful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, so the schema already documents all 4 parameters thoroughly. The description doesn't add any additional meaning beyond what's in the schema, such as explaining how parameters interact or providing examples. Baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Lists') and resource ('all members of a specific Jira project'), making the purpose immediately understandable. However, it doesn't explicitly differentiate from sibling tools like 'jira_list_projects' or 'jira_check_user_issues', which might also involve listing project-related information.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites like authentication, nor does it compare with siblings like 'jira_check_user_issues' for user-specific data or 'jira_list_projects' for broader project info.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
jira_list_projectsC
Lists all Jira projects the user has access to
| Name | Required | Description | Default |
|---|---|---|---|
| jiraHost | No | The Jira host URL (e.g., 'your-domain.atlassian.net') | |
| No | Email address associated with the Jira account | ||
| apiToken | No | API token for Jira authentication |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden but provides minimal behavioral context. It doesn't disclose whether this is a read-only operation (implied by 'Lists'), authentication requirements beyond the parameters, rate limits, pagination behavior, or what the output format looks like. For a tool with authentication parameters, this is inadequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with zero waste. It's appropriately sized for a simple list operation and front-loads the core purpose immediately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has authentication parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain how authentication works, what the return data includes, or any behavioral constraints. For a tool interacting with an external API like Jira, this leaves significant gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all three parameters. The description adds no additional parameter semantics beyond what's in the schema. The baseline score of 3 reflects adequate coverage through the schema alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Lists') and resource ('all Jira projects'), specifying scope with 'the user has access to'. It distinguishes from siblings like 'jira_list_project_members' by focusing on projects rather than members, but doesn't explicitly differentiate from other list tools like 'jira_list_sprints' beyond the resource name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives is provided. The description doesn't mention prerequisites like authentication setup, nor does it suggest when to use this versus 'jira_search_issues' for project-related queries. Usage context is implied but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
jira_list_sprintsC
Lists current sprints in Jira with filtering options
| Name | Required | Description | Default |
|---|---|---|---|
| jiraHost | No | The Jira host URL (e.g., 'your-domain.atlassian.net') | |
| No | Email address associated with the Jira account | ||
| apiToken | No | API token for Jira authentication | |
| boardId | No | Optional Jira board ID to filter sprints by a specific board | |
| projectKey | No | Optional project key to find sprints associated with the project | |
| state | No | Sprint state to filter by (active, future, closed, or all) | active |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'filtering options' but doesn't explain key behaviors: whether this is a read-only operation (implied by 'Lists'), what authentication is required (hinted by parameters but not stated), how results are returned (e.g., pagination, format), or any rate limits. For a tool with authentication parameters and no annotations, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose ('Lists current sprints in Jira') and adds a brief qualifier ('with filtering options'). There is no wasted language or redundancy, making it appropriately sized for the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (6 parameters, no output schema, no annotations), the description is incomplete. It doesn't address authentication requirements, result format, error handling, or how filtering parameters interact. Without annotations or output schema, the agent lacks sufficient context to use this tool effectively beyond basic parameter passing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds minimal value beyond the input schema, which has 100% coverage. It mentions 'filtering options,' which aligns with parameters like 'boardId,' 'projectKey,' and 'state,' but doesn't provide additional semantics (e.g., how filters combine or default behaviors). With high schema coverage, the baseline is 3, as the schema already documents parameters well.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Lists') and resource ('current sprints in Jira'), making the purpose understandable. However, it doesn't explicitly differentiate this tool from sibling tools like 'jira_list_projects' or 'jira_list_project_members', which reduces specificity. The mention of 'filtering options' adds some context but doesn't fully distinguish it from other list operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., authentication setup), compare it to sibling tools like 'jira_search_issues' for sprint-related queries, or specify scenarios where filtering by board or project is appropriate. This leaves the agent without clear usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
jira_search_issuesC
Searches for Jira issues by project and assignee
| Name | Required | Description | Default |
|---|---|---|---|
| jiraHost | No | The Jira host URL (e.g., 'your-domain.atlassian.net') | |
| No | Email address associated with the Jira account | ||
| apiToken | No | API token for Jira authentication | |
| projectKey | Yes | The Jira project key (e.g., 'PROJECT') | |
| assigneeName | No | The display name of the assignee to filter by (e.g., 'John Doe') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the search action but lacks critical details: it doesn't specify if this is a read-only operation (likely, but not confirmed), mention rate limits, describe the return format (e.g., list of issues with fields), or note any constraints like pagination. This leaves significant gaps for a tool with 5 parameters and no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's front-loaded with the core action and filtering criteria, making it easy to parse quickly, which is ideal for conciseness in tool selection.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of a search tool with 5 parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain the return values (e.g., what data the search yields), behavioral traits like safety or performance, or how it integrates with sibling tools, leaving the agent with insufficient context for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description mentions filtering 'by project and assignee', which aligns with the 'projectKey' and 'assigneeName' parameters in the schema. However, with 100% schema description coverage, the schema already fully documents all 5 parameters (including authentication details like 'jiraHost', 'email', and 'apiToken'), so the description adds minimal value beyond restating what's in the structured data, meeting the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Searches for') and resource ('Jira issues') with specific filtering criteria ('by project and assignee'), which provides a concrete purpose. However, it doesn't explicitly differentiate from sibling tools like 'jira_check_user_issues' or 'jira_list_projects', which might also involve issue-related queries, leaving some ambiguity about its unique role.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites like authentication (implied by parameters but not stated), nor does it compare to siblings such as 'jira_check_user_issues' for user-specific queries or 'jira_list_projects' for broader project info, leaving the agent to infer usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
7 tool updates
- First observed
jira_check_user_issues - First observed
jira_create_issue - First observed
jira_get_issue - First observed
jira_list_project_members - First observed
jira_list_projects - First observed
jira_list_sprints - First observed
jira_search_issues
TDQS
Scored across 7 tools
Every tool has a clearly distinct purpose targeting specific Jira resources and actions, such as checking user issues, creating issues, getting issue details, listing project members, listing projects, listing sprints, and searching issues. There is no overlap or ambiguity between these functions.
All tool names follow a consistent 'jira_verb_noun' pattern with snake_case, such as jira_create_issue and jira_list_projects. This predictable naming scheme makes it easy for agents to understand and select the right tool.
With 7 tools, this server is well-scoped for Jira operations, covering core functionalities like issue management, project access, and sprint tracking. Each tool earns its place without being overwhelming or insufficient for the domain.
The toolset provides good coverage for basic Jira workflows, including issue CRUD (create, get, search), project and member listing, and sprint management. A minor gap exists in missing update and delete operations for issues, which agents might need to work around.
Maintenance
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
Enable secure connectivity between Sentry issues and debugging data, and LLM clients, using a Model Context Protocol (MCP) server.
The Mercado Pago MCP Server implements the Model Context Protocol to provide AI agents and LLMs with access to Mercado Pago's APIs and tools within compatible development environments. It acts as an intermediary that translates Mercado Pago resources into executable functions (tools) that AI applications can invoke to perform actions and automate flows. The server simplifies integration, enables using documentation to implement or improve code, and optimizes operations through natural language interactions without manual implementations.
Related MCP Servers
- FlicenseDqualityDmaintenanceA Model Context Protocol server that enables integration with JIRA, allowing users to interact with JIRA tasks and issues through Claude AI assistant.33-
- AlicenseBqualityCmaintenanceA Model Context Protocol server that provides integration with Jira, allowing Large Language Models to interact with Jira projects, boards, sprints, and issues through natural language.527 npm3MIT
- AlicenseCqualityDmaintenanceA Model Context Protocol server that enables AI assistants like Claude to interact with Jira Cloud instances, providing capabilities for issue management, project listing, and JQL search.150 npm2MIT
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server for integrating JIRA with Claude, enabling AI assistants to create, search, update, and link JIRA tickets, as well as manage Zephyr test steps through natural language.358 npm7MIT