סטנדאפ שלא צריך לכתוב
Every weekday at 8:30, search Jira for issues assigned to me that are not done, group them by status, and write a short standup update I can paste into Slack.
שרת MCP מאומת: Jira
רשימת הכלים למטה היא לכידה חיה מהשרת הרץ; קריאת כלי מאומתת עדיין ממתינה להרשאות.
התשובה הקצרה
אומת לאחרונה 2026-08-03
שרת ה-MCP של Jira מאפשר לעוזר AI לחפש, לקרוא, ליצור ולהעביר משימות ב-Jira מתוך חלון צ׳אט או מתוך שגרה מתוזמנת. קיימים שניים כאלה, והם לא אותו מוצר: Atlassian מארחת שרת משלה, Rovo MCP Server, שהלקוח שלכם מגיע אליו ברשת אחרי הזדהות מול Atlassian, ואילו mcp-atlassian הוא שרת קהילתי שרץ על ה-Mac שלכם מול Atlassian API token. העמוד הזה עוסק בשני, כי הוא זה שעולה גם בלי חשבון Atlassian להתחבר אליו. הרצנו אותו, דיברנו איתו בפרוטוקול וספרנו כל כלי שההגדרה שבעמוד הזה חושפת, והטבלה למטה היא הלכידה הזו. מה שלא יכולנו לעשות הוא להשלים קריאה מאומתת: לשם כך נדרש token לאתר Jira אמיתי, ולכן העמוד מראה את הכלים ואת השגיאות המדויקות שמתקבלות בלעדיו, ועוצר שם. [1][3][6][7]
אימות
השיטה
הרצנו את השרת עם uvx על גבי stdio מול אתר Jira לדוגמה ועם פרטי גישה מדומים, השלמנו את לחיצת היד של MCP וקראנו ל-tools/list: 16 הכלים שלמטה הם התשובה הזו, מילה במילה. אחר כך ביצענו שתי קריאות כלי אמיתיות, ושתיהן נכשלו, כפי שהיה חייב לקרות. קריאות מאומתות כאן ממתינות ל-Atlassian API token לאתר Jira אמיתי, שאין לנו, ולכן שום משפט בעמוד הזה לא טוען שקריאה ל-Jira הצליחה. בנוסף שלחנו בקשה ללא אימות לנקודת הקצה המתארחת של Atlassian עצמה, והיא ענתה 401; התשובה מודפסת בקטע פתרון התקלות.
הודעת הפתיחה של השרת
╭──────────────────────────────────────────────────────────────────────────────╮
│ │
│ │
│ ▄▀▀ ▄▀█ █▀▀ ▀█▀ █▀▄▀█ █▀▀ █▀█ │
│ █▀ █▀█ ▄▄█ █ █ ▀ █ █▄▄ █▀▀ │
│ │
│ │
│ │
│ FastMCP 3.4.5 │
│ https://gofastmcp.com │
│ │
│ 🖥 Server: Atlassian MCP, 3.4.5 │
│ 🚀 Deploy free: https://horizon.prefect.io │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
[08/03/26 06:27:33] INFO Starting MCP server 'Atlassian transport.py:241
MCP' with transport 'stdio' קריאת כלי אמיתית אחת
tools/call jira_search {"jql": "assignee = currentUser() AND statusCategory != Done", "limit": 5}Error calling tool 'search': HTTPError
שורות אמיתיות מהתוצאה שנלכדה: מספיק כדי להוכיח שהקריאה נענתה.
כלים
השרת ענה ל-tools/list עם 16 כלים בתאריך 2026-08-03. השמות, התיאורים והפרמטרים למטה הם המילים שלו עצמו, מועתקים מהתשובה הזו וללא עריכה.
| כלי | מה הוא עושה |
|---|---|
| jira_get_issueissue_key*fieldsexpandcomment_limitpropertiesupdate_historyincludeuse_display_names | Get details of a specific Jira issue. Includes Epic links and relationship information. Use the ``include`` parameter to inline enrichments (remote_links, transitions, watchers, changelog, comments, worklogs) so that separate tool calls are not needed. |
| jira_searchjql*fieldslimitstart_atprojects_filterexpandpage_tokenuse_display_names | Search Jira issues using JQL (Jira Query Language). |
| jira_search_fieldskeywordlimitrefresh | Search Jira fields by keyword with fuzzy match. |
| jira_get_field_optionsfield_id*context_idproject_keyissue_typecontainsreturn_limitvalues_only | Get allowed option values for a custom field. Returns the list of valid options for select, multi-select, radio, checkbox, and cascading select custom fields. Cloud: Uses the Field Context Option API. If context_id is not provided, automatically resolves to the global context. Server/DC: Uses createmeta to get allowedValues. Requires project_key and issue_type parameters. |
| jira_get_project_issuesproject_key*limitstart_at | Get all issues for a specific Jira project. |
| jira_get_transitionsissue_key* | Get available status transitions for a Jira issue. |
| jira_create_issueproject_key*summary*issue_type*assigneedescriptioncomponentsadditional_fields | Create a new Jira issue with optional Epic link or parent for subtasks. |
| jira_batch_create_issuesissues*validate_only | Create multiple Jira issues in a batch. |
| jira_batch_get_changelogsissue_ids_or_keys*fieldslimit | Get changelogs for multiple Jira issues (Cloud only). |
| jira_update_issueissue_key*fields*additional_fieldscomponentsattachmentsreturn_fields | Update an existing Jira issue including changing status, adding Epic links, updating fields, etc. |
| jira_assign_issueissue_key*assignee | Assign a Jira issue to a user using the dedicated assignment endpoint. This is more reliable than setting assignee via update_issue, which is silently ignored by some Jira configurations. Uses PUT /issue/{key}/assignee. |
| jira_delete_issueissue_key* | Delete an existing Jira issue. |
| jira_move_issueissue_key*target_project_key* | Move a Jira issue to a different project (Jira Cloud only). Uses Jira Cloud's bulk move API to perform a cross-project move. The issue keeps its current issue type and may be assigned a new key in the target project (e.g., OLDPROJ-123 becomes NEWPROJ-456). The move is processed asynchronously on Jira's side; this tool polls until confirmed or times out after 30 seconds. |
| jira_add_commentissue_key*body*visibilitypublic | Add a comment to a Jira issue. |
| jira_edit_commentissue_key*comment_id*body*visibility | Edit an existing comment on a Jira issue. |
| jira_transition_issueissue_key*transition_id*fieldscomment | Transition a Jira issue to a new status. |
פרמטרים המסומנים ב-* הם חובה.
התקנה
העתיקו את הבלוק של האפליקציה שלכם. כל אחד מהם הוא ההגדרה המדויקת שאיתה אימתנו את השרת.
פתחו את הקובץ ~/Library/Application Support/Claude/claude_desktop_config.json (בתוך Claude Desktop: Settings, אחר כך Developer, אחר כך Edit Config) והוסיפו:
{
"mcpServers": {
"jira": {
"command": "uvx",
"args": [
"mcp-atlassian",
"--toolsets",
"default"
],
"env": {
"JIRA_URL": "https://your-company.atlassian.net",
"JIRA_USERNAME": "you@your-company.com",
"JIRA_API_TOKEN": "your_api_token"
}
}
}
}מלאו את כתובת האתר שלכם, את האימייל שאיתו אתם מתחברים ואת ה-token מ-id.atlassian.com, ואז סגרו ופתחו מחדש את Claude Desktop. אם הוא לא מוצא את uvx, כתבו את הנתיב המלא במקום, /Users/yourname/.local/bin/uvx: כך הפעלנו אותו בריצת האימות. [9][5]
פקודה אחת בטרמינל:
claude mcp add jira -e JIRA_URL=https://your-company.atlassian.net -e JIRA_USERNAME=you@your-company.com -e JIRA_API_TOKEN=your_api_token -- uvx mcp-atlassian --toolsets default
כל -e מגדיר משתנה סביבה אחד, וכל מה שאחרי המקף הכפול הוא הפקודה המדויקת ש-Claude Code יריץ. ה-token נשמר בהיסטוריית הפקודות שלכם, אז אם זה מפריע לכם, הדביקו אותו בטרמינל נקי. [10]
הוסיפו ל-~/.cursor/mcp.json עבור כל הפרויקטים, או ל-.cursor/mcp.json בתוך פרויקט אחד:
{
"mcpServers": {
"jira": {
"command": "uvx",
"args": [
"mcp-atlassian",
"--toolsets",
"default"
],
"env": {
"JIRA_URL": "https://your-company.atlassian.net",
"JIRA_USERNAME": "you@your-company.com",
"JIRA_API_TOKEN": "your_api_token"
}
}
}
}Cursor קורא את הקובץ מחדש אחרי הפעלה מחדש. קובץ .cursor/mcp.json ברמת הפרויקט כדאי להעלות ל-git רק אחרי שהוצאתם ממנו את ה-token. [11]
בלי קובץ JSON ובלי טרמינל. ב-Routines: Settings, אחר כך Assistant, אחר כך Connections, אחר כך Add MCP Server. העבירו את הטופס ל-Command (stdio) והזינו:
Name Jira Command uvx Arguments mcp-atlassian --toolsets default Environment Variables JIRA_URL=https://your-company.atlassian.net JIRA_USERNAME=you@your-company.com JIRA_API_TOKEN=your_api_token
שלושת פרטי הגישה שייכים לשדה Environment Variables, שורה לכל אחד, ולא ל-Arguments. לחצו קודם על Test Connection: שרת תקין עונה עם מספר הכלים שלו, שישה עשר בהגדרה הזו. אם התשובה היא אפס, המשתנים לא הגיעו אליו. [12]
בלי טרמינל
אם מעולם לא פתחתם את הטרמינל ואין לכם כוונה להתחיל, זה המסלול שלכם, עם עקיפה אחת בלתי נמנעת: השרת הזה דורש Atlassian API token, ולכן השלב השני הוא להשיג אחד. Routines היא אפליקציית Mac שמריצה שרתי MCP בשבילכם: ממלאים את השדות פעם אחת, והכלים של השרת זמינים ל-AI שלכם בצ׳אט ובשגרות מתוזמנות.
01
הורידו את האפליקציה מ-getroutines.ai/download, גררו אותה ל-Applications והתחברו.
02
היכנסו ל-id.atlassian.com, פתחו את Security ואז את API tokens וצרו token. העתיקו אותו למקום בטוח: Atlassian מציגה אותו פעם אחת בלבד. תצטרכו גם את כתובת ה-Jira שלכם, זו שנראית כמו https://something.atlassian.net, ואת האימייל שאיתו אתם מתחברים. ה-token יכול לעשות כל מה שהחשבון שלכם יכול, אז התייחסו אליו כמו לסיסמה.
03
לחצו על החשבון שלכם בתחתית סרגל הצד ובחרו Settings. פתחו את הקטע Assistant, אחר כך את הלשונית Connections, גללו אל MCP Servers ולחצו על Add MCP Server.
04
העבירו את הטופס ל-Command (stdio): השרת הזה הוא פקודה שרצה על ה-Mac שלכם, לא כתובת אינטרנט. קראו לו Jira. Command: uvx. Arguments: mcp-atlassian --toolsets default.
05
בשדה Environment Variables הזינו שורה לכל אחד: JIRA_URL=https://your-company.atlassian.net, אחר כך JIRA_USERNAME=you@your-company.com, ואחר כך JIRA_API_TOKEN= ואחריו ה-token שהעתקתם. שלושתם, אחרת השרת עולה בלי כלים בכלל.
06
לחצו Test Connection: Routines מפעילה את השרת ומדווחת כמה כלים היא מצאה, שישה עשר בהגדרה הזו. אחר כך לחצו Add Server. הכלים עובדים בצ׳אט מיד; כדי לתת לשגרה מתוזמנת להשתמש בהם, פתחו את השגרה, מצאו את הכרטיס Tools & connections וסמנו את השרת תחת Apps.
רעיונות לשגרות
אחרי שהשרת מחובר, שגרה מתוזמנת יכולה להשתמש בכלים שלו גם כשאתם לא מול המסך. העתיקו פרומפט, הדביקו אותו ב-Routines ובחרו שעה. הפרומפטים כתובים באנגלית בכוונה, מדביקים אותם בדיוק כפי שהם.
Every weekday at 8:30, search Jira for issues assigned to me that are not done, group them by status, and write a short standup update I can paste into Slack.
Every Friday at 16:00, search Jira for issues created this week in my project that have no assignee, list them with summary and priority, and save the list as jira-triage.md.
Every Monday at 9:00, search Jira for issues assigned to me that have not been updated in 14 days, and write a short list with one suggested next step for each.
פתרון תקלות
שגיאות אמיתיות שנלכדו בריצת האימות, מודפסות בדיוק כפי שהשרת החזיר אותן.
מה רואים
{"jsonrpc":"2.0","id":2,"result":{"tools":[]}}הפתרון
השרת עולה בלי להתלונן גם בלי שום פרטי גישה ל-Jira, ואז לא חושף כלום, ולכן זה נראה כמו חיבור תקין עם שרת שבור. שחזרנו את זה בהפעלה עם סביבה ריקה: לחיצת היד הושלמה, הבאנר הודפס כרגיל, ו-tools/list חזר עם הרשימה הריקה שלמעלה. ודאו ש-JIRA_URL, JIRA_USERNAME ו-JIRA_API_TOKEN באמת הגיעו לתהליך. בלקוח מבוסס טופס זה אומר שדה Environment Variables, לא שדה הארגומנטים.
מה רואים
Error calling tool 'search': HTTPError
הפתרון
הכלים קיימים, הקריאה יוצאת, ו-Jira מסרבת לה. גרמנו לזה בכוונה כשכיוונו את JIRA_URL אל https://example.atlassian.net, שאינו אתר Jira אמיתי: Atlassian עונה לבקשות אליו ב-404, והלקוח של Jira הופך את זה ל-HTTPError חשוף. אותה הודעה מכסה גם כתובת אתר שגויה, אימייל שגוי ו-token שפג או שהוקלד לא נכון, כי קוד הסטטוס לא מועבר הלאה. פתחו את כתובת ה-Jira שלכם בדפדפן, ודאו שהיא נטענת, ובדקו מחדש את שני הערכים האחרים.
מה רואים
HTTP/2 401
www-authenticate: Bearer resource_metadata="https://mcp.atlassian.com/.well-known/oauth-protected-resource/v1/mcp/authv2", error="invalid_token", error_description="Missing or invalid access token"
{"error":"invalid_token","error_description":"Missing or invalid access token"}הפתרון
צפוי, וכדאי לדעת את זה לפני שמבזבזים על כך ערב שלם. ה-Rovo MCP Server המתארח של Atlassian הוא מוצר אחר מזה המקומי שבעמוד הזה, והוא לא מקבל בקשה בלי פרטי הזדהות. שלחנו ל-https://mcp.atlassian.com/v1/mcp/authv2 בקשה בלי שום כותרת Authorization וקיבלנו את התשובה הזו. כדי להגיע לשרת ההוא צריך קודם להזדהות מול Atlassian: בדרך כלל בהתחברות OAuth שלקוח ה-MCP שלכם משלים בשבילכם, ואם מנהל הארגון שלכם הפעיל את האפשרות, Atlassian מתעדת גם שליחת API token ישירות בכותרת Authorization.
מה רואים
Error calling tool 'get_issue': Issue PROJ-1 not found. Verify the issue key and project access.
הפתרון
ידידותי יותר ממה שנראה, וגם פחות מדויק: השרת הופך כל כשלון בשליפת משימה למשפט האחד הזה. קיבלנו אותו כשביקשנו את PROJ-1 מאתר לדוגמה, כלומר במקרה שלנו האתר היה שגוי, לא המפתח. באתר אמיתי הסיבות הרגילות הן שגיאת הקלדה במפתח, פרויקט שהחשבון שלכם לא רואה, או משימה שהועברה לפרויקט אחר ומזוהה כעת במפתח אחר.
הפתרון
הפקודה uvx שייכת ל-uv, מריץ החבילות של Python, והשרת הזה כתוב ב-Python. אם uv לא מותקן, כל לקוח בעמוד הזה ייכשל בשלב ההפעלה עוד לפני שהשרת מספיק לומר משהו: התקינו אותו מ-astral.sh/uv והפעילו מחדש את הלקוח. יש גרסה שנייה לאותה תקלה: uv מותקן לתוך ~/.local/bin, שאפליקציות שנפתחות מה-Dock לרוב לא כוללות ב-PATH שלהן, ולכן לקוח שעובד בטרמינל יכול בכל זאת להיכשל בחלון. השתמשו בנתיב המלא /Users/yourname/.local/bin/uvx כפקודה, וכך בדיוק הפעלנו אותו בריצת האימות.
שאלות נפוצות
זו תוכנה קטנה שמעניקה לעוזר AI אוסף פעולות ב-Jira: חיפוש משימות ב-JQL, קריאת משימה בודדת, יצירה ועדכון של משימות, העברה בין סטטוסים והוספת תגובות. קיימים שניים. Atlassian מארחת שרת משלה, Rovo MCP Server, שהלקוח שלכם מגיע אליו ברשת אחרי התחברות. השרת הקהילתי, mcp-atlassian, רץ כתהליך מקומי על ה-Mac שלכם ומזדהה עם Atlassian API token. בעמוד הזה אימתנו את הקהילתי, כי הוא זה שעולה בלי חשבון Atlassian להתחבר אליו. [6][5]
הפעלנו את השרת, השלמנו את לחיצת היד של MCP וקראנו את רשימת הכלים ישירות מהחיבור. החלק הזה נמדד, והטבלה למעלה היא התשובה הגולמית. גם ביצענו שתי קריאות כלי אמיתיות, ושתיהן נכשלו, כי קריאה אמיתית דורשת Atlassian API token לאתר Jira אמיתי ואין לנו כזה. כלומר: רשימת הכלים היא ראיה; כל מה שקשור למה שמחזירה שאילתת Jira מוצלחת פשוט לא נמצא בעמוד הזה. השגיאות שכן קיבלנו מודפסות במלואן, כולל ה-401 מנקודת הקצה המתארחת של Atlassian.
ההגדרה שבעמוד הזה חושפת 16: קריאה (jira_get_issue, jira_search, jira_search_fields, jira_get_field_options, jira_get_project_issues, jira_get_transitions, jira_batch_get_changelogs), יצירה (jira_create_issue, jira_batch_create_issues), שינוי (jira_update_issue, jira_assign_issue, jira_delete_issue, jira_move_issue, jira_transition_issue) ותגובות (jira_add_comment, jira_edit_comment). בלי הדגל --toolsets default אותו שרת חשף אצלנו 63 כלי Jira, ובהם לוחות, ספרינטים, דיווחי שעות, תורי שירות וטפסי ProForma. השארנו את הסט הקטן בכוונה: 63 תיאורי כלים הם הרבה מאוד הקשר להעביר לעוזר בכל תור מחדש.
לא בשביל החיבור עצמו. ב-Routines ממלאים שם, פקודה, ארגומנטים ושלושה משתני סביבה ולוחצים Test Connection; המדריך למעלה מראה כל לחיצה. Claude Desktop ו-Cursor דורשים עריכה חד-פעמית של קובץ JSON אחד. כן צריך ש-uv יהיה מותקן על ה-Mac כדי שהפקודה uvx תתקיים בכלל, וההתקנה של uv היא שלב בטרמינל. [12][9]
כן. בהגדרת ה-Cloud שבעמוד הזה זה אומר את כתובת ה-Jira שלכם, את האימייל שאיתו אתם מתחברים, ו-Atlassian API token שנוצר ב-id.atlassian.com תחת Security ואז API tokens. השרת מתעד גם OAuth 2.0, ובהתקנות Server או Data Center משתמשים ב-Personal Access Token במקום. התייחסו ל-token כמו לסיסמה: הוא יכול לקרוא ולשנות כל מה שהחשבון שלכם יכול, והשרת הזה כולל בין כליו את jira_delete_issue, כך ששגרה שנכתבה ברישול יכולה לגרום נזק אמיתי. [8]
שני המספרים אמיתיים ולכדנו את שניהם. ב-PyPI החבילה mcp-atlassian מתפרסמת בגרסה 0.23.0, והפקודה uvx mcp-atlassian --version מסכימה. על גבי MCP התהליך הרץ מדווח על עצמו כ-Atlassian MCP בגרסה 3.4.5, וזו הגרסה של FastMCP, המסגרת שעליה הוא בנוי: הבאנר שלמעלה מדפיס 3.4.5 לצד השם FastMCP, וגם חבילת fastmcp שמותקנת לצדו באותה סביבה מדווחת 3.4.5. לקרוא את 3.4.5 כגרסה של שרת ה-Jira עצמו יהיה פשוט לא נכון. [1]
לא. ב-Routines כבר יש מחבר Jira שמופעל בהתחברות בלחיצה אחת, והוא מדבר בשבילכם עם השרת המתארח של Atlassian, כך שאין מה להתקין ואין token להדביק. התקינו את השרת הקהילתי הזה אם אתם רוצים את מגוון הכלים הרחב שלו, או אם ה-Jira שלכם היא התקנת Server או Data Center ולא Cloud. [12]
מקורות
כל מה שבעמוד הזה שלא ראינו בעצמנו בריצה מקושר כאן, עם התאריך שבו קראנו אותו. לגבי השאר, הריצה עצמה היא הקבלה.
[1]
Latest version 0.23.0, uploaded 2026-07-18. Requires Python 3.10 or newer.
[2]
357,922 downloads in the last week, 1,902,768 in the last month.
[3]
5,686 stars and a push dated 2026-08-02 at access time, per the GitHub API.
[4]
MIT, as reported by the GitHub API for the repository.
[5]
The uvx command shape and the JIRA_URL, JIRA_USERNAME and JIRA_API_TOKEN variable names.
[6]
Atlassian's own hosted server and its current URL, https://mcp.atlassian.com/v1/mcp/authv2.
[7]
If an organization admin enables it, a client may authenticate to Atlassian's hosted server with an API token in an Authorization header instead of an interactive OAuth consent screen.
[8]
Where an Atlassian API token is created for the community server.
[9]
The claude_desktop_config.json shape, including the env object.
[10]
The claude mcp add syntax, including -e for environment variables.
[11]
[12]
The built-in Jira connector and how Routines runs any MCP server.
העמוד הזה מתאר את Jira כפי שהתנהג בריצה מתוארכת אחת על Mac אחד. גרסאות משתנות: אם משהו כאן כבר לא תואם למה שאתם רואים, תאריך הלכידה בראש העמוד אומר בן כמה הצילום.
מאחורי המדריך הזה
Routines, האפליקציה שמאחורי המדריך הזה, מריצה שרתי MCP כמו זה בלי טרמינל: כך עובדים המחברים. הפתקים שלכם נשארים קובצי markdown על ה-Mac שלכם, אין חשבון ענן לשלם, והיא עובדת גם בלי אינטרנט. להורדת Routines