12. חיבור לכלים חיצוניים (MCP)
Claude Code יודע לקרוא ולערוך קבצים מהיום הראשון, אבל בעולם האמיתי העבודה שלכם לא נמצאת רק בקבצים: היא ב-Gmail, ב-GitHub, במסד נתונים, בפיגמה. MCP הוא הפרוטוקול שמחבר בין קלוד לכלים האלה. בפרק הזה נחבר שרת MCP ראשון, נכיר את סוגי החיבורים וההיקפים, ונדבר על הסיכונים שכדאי להכיר לפני שמתחברים לשרת של מישהו אחר.
מה זה MCP, במילים פשוטות
Model Context Protocol (MCP) הוא תקן פתוח לחיבור בין כלי AI לכלים חיצוניים. שרת MCP הוא תוכנה — שרצה על המחשב שלכם או כשירות מתארח — שחושפת בפני קלוד כלים ספציפיים: לחפש issue ב-Jira, לשלוח שאילתה למסד נתונים, לנווט בדפדפן. ברגע שמחברים שרת, קלוד יכול לפעול ישירות מול המערכת הזו במקום לעבוד רק ממה שאתם מדביקים לצ'אט.
דוגמאות לדברים שאפשר לבקש אחרי חיבור השרתים המתאימים:
- "תממש את הפיצ'ר שמתואר ב-JIRA-4521 ותפתח PR ב-GitHub"
- "תבדוק ב-Sentry אם יש שגיאות חדשות מהפיצ'ר האחרון"
- "תמצא לי 10 לקוחות שלא קנו ב-90 הימים האחרונים, לפי מסד הנתונים ב-PostgreSQL"
- "תעדכן את תבנית המייל שלנו לפי עיצוב הפיגמה שפורסם בסלאק"
חיבור שרת ראשון: שלב אחר שלב
נדגים עם שרת התיעוד הרשמי של Claude Code — לא דורש הרשאות ולא הרשמה, ולכן נוח לתרגול. אותו תהליך עובד לכל שרת.
- מוסיפים את השרת: בטרמינל, מחוץ לשיחת קלוד:
claude mcp add --transport http claude-code-docs https://code.claude.com/docs/mcpclaude-code-docsהוא שם שאתם בוחרים לשרת. Claude Code מדפיס אישור ושורה שמראה איזה קובץ הגדרות הוא עדכן. - בודקים את הסטטוס:
רוצים לראותclaude mcp list✔ Connected. סטטוסים אחרים אפשריים:! Needs authentication(דורש התחברות בדפדפן),✘ Failed to connect, או⏸ Pending approvalלשרתי פרויקט שעוד לא אישרתם. - משתמשים בשרת: פותחים שיחה ומבקשים משהו שדורש אותו:
קריאות לכלים מסומנות בפלט של קלוד עם שם השרת, כך שרואים מאיפה התשובה הגיעה. בדרך כלל אין צורך לנקוב בשם השרת — קלוד בוחר כלים רלוונטיים בעצמו.תשתמש בשרת claude-code-docs כדי לבדוק מה עושה MCP_TIMEOUT - מסירים (אופציונלי):
כל שרת מחובר תופס מקום בהקשר, כי שמות הכלים שלו נטענים בכל שיחה. שרת שלא בשימוש כדאי להסיר.claude mcp remove claude-code-docs
ארבע דרכים לחבר שרת
| סוג חיבור | מתי משתמשים | דוגמה |
|---|---|---|
| HTTP (מומלץ) | שירות מתארח בענן | claude mcp add --transport http notion https://mcp.notion.com/mcp |
| SSE (מיושן) | שרתים ישנים שתומכים רק ב-SSE | claude mcp add --transport sse asana https://mcp.asana.com/sse |
| stdio (מקומי) | תוכנית שרצה על המחשב שלכם, למשל דפדפן או גישה לקבצים | claude mcp add playwright -- npx -y @playwright/mcp@latest |
| WebSocket | שרת שדוחף אירועים בעצמו, לא רק עונה לבקשות | מוגדר ב-JSON עם "type":"ws" |
בשרת מקומי (stdio), כל מה שאחרי -- מועבר לשרת בדיוק כפי שהוא, בלי ש-Claude Code ינסה לפרש את הדגלים שלו:
claude mcp add --env AIRTABLE_API_KEY=מפתח-שלכם --transport stdio airtable
-- npx -y airtable-mcp-server
שרת שדורש התחברות (OAuth), כמו Sentry או Notion, מוסיפים באותה פקודה, ואז פותחים /mcp בתוך שיחה, בוחרים בשרת ומאשרים דרך הדפדפן:
/mcp
אם מצאתם הוראות התקנה שנכתבו ל-Claude Desktop, Cursor או כלי אחר, אין צורך לתרגם ידנית. בלוק JSON בפורמט mcpServers אפשר להעביר ישירות: claude mcp add-json <שם> '{"command":"npx","args":[...]}'. ל-URL, זה פשוט claude mcp add --transport http עם הכתובת.
הוספה ידנית מול Connectors גרפיים
claude mcp add בטרמינל היא לא הדרך היחידה:
- אפליקציית הדסקטופ של Claude Code: מוסיפים שרתים דרך ממשק ה-Connectors, בלי שורת פקודה.
- Claude Desktop (אפליקציית הצ'אט, לא Claude Code): אפליקציה נפרדת. כדי להעתיק שרתים משם ל-CLI:
claude mcp add-from-claude-desktop(זמין ב-macOS וב-WSL). - VS Code: חיבור דרך ההרחבה.
- claude.ai: Connectors שמוסיפים ב-claude.ai/customize/connectors נטענים אוטומטית ב-CLI כשמתחברים עם אותו חשבון — ראו בהמשך.
כל דרך כותבת בסוף לאותם קובצי הגדרות, כך שאפשר לערבב בין שיטות ולראות את כל השרתים יחד ב-/mcp.
היקפים (scope): למי השרת שייך
| היקף | נטען ב… | משותף עם הצוות | נשמר ב… |
|---|---|---|---|
| local (ברירת מחדל) | רק בפרויקט הנוכחי | לא | ~/.claude.json |
| project | רק בפרויקט הנוכחי | כן, דרך Git | .mcp.json בשורש הפרויקט |
| user | כל הפרויקטים שלכם | לא | ~/.claude.json |
ב-Windows, ~/.claude.json הוא C:Usersשם-המשתמש.claude.json. קובעים היקף עם --scope:
# לכל הפרויקטים שלכם, פרטי
claude mcp add --scope user --transport http hubspot https://mcp.hubspot.com/anthropic
# משותף לצוות, נכנס ל-.mcp.json
claude mcp add --scope project --transport http shared-server https://example.com/mcp
שרת שהוגדר ב-project דורש אישור בתחילת שיחה, כדי שמאגר קוד ששיכפלתם לא יריץ תהליכים על המחשב שלכם בלי ידיעתכם. אם השרת מוגדר בכמה היקפים בו-זמנית, סדר העדיפות הוא: local, אחריו project, אחריו user, אחריו שרתי Plugin, ולבסוף Connectors מ-claude.ai.
ניהול שרתים עם /mcp
| פקודה | שימוש |
|---|---|
claude mcp list | רשימת כל השרתים המוגדרים וסטטוס שלהם |
claude mcp get <שם> | פרטים על שרת ספציפי, כולל באיזה היקף הוא מוגדר |
claude mcp remove <שם> | הסרה. מוחק גם טוקני OAuth שנשמרו עבורו |
/mcp (בתוך שיחה) | סטטוס, התחברות מחדש, אימות והתנתקות — בלי לצאת מהשיחה |
claude mcp login <שם> | מריץ את תהליך ההתחברות (OAuth) ישירות מהטרמינל |
Connectors מ-claude.ai
אם התחברתם ל-Claude Code עם חשבון claude.ai, שרתים שהוספתם שם ב-claude.ai/customize/connectors (נקראים Connectors) זמינים אוטומטית ב-Claude Code, בלי הגדרה נוספת. הם מופיעים ב-/mcp עם סימון שמראה שהם הגיעו מ-claude.ai. Connectors שלא התחברתם אליהם מעולם מוסתרים מאחורי "Show unused connectors" כדי שלא יעמיסו על הרשימה.
שימו לב: Connectors נטענים רק כשאמצעי ההתחברות הפעיל הוא כניסה עם מנוי claude.ai — לא כשמשתמשים במפתח API, ב-Bedrock, ב-Google Cloud, או בטוקן ארוך-טווח. לכבות אותם לגמרי אפשר עם ההגדרה disableClaudeAiConnectors.
אבטחה: לסמוך רק על שרתים ידועים
Anthropic לא מבצעת ביקורת אבטחה על שרתי MCP של צד שלישי. שרת ששולף תוכן מהאינטרנט חושף אתכם ל-Prompt Injection: הוראות זדוניות שמוסתרות בתוכן שהשרת מחזיר. חברו רק שרתים ממקורות שאתם מכירים, בדקו את ה-URL או הפקודה לפני שמאשרים, והשתמשו במשתמש read-only למסדי נתונים כשאפשר (כמו בדוגמת ה-PostgreSQL למעלה).
עקרונות נוספים מ-פרק 7: הרשאות ובטיחות: כללי deny תקפים גם על כלי MCP (למשל mcp__github__*), ואפשר להגביל שרת ספציפי מבלי להסיר אותו לגמרי דרך /mcp.
Tool Search: למה שרתים רבים לא מייקרים כל שיחה
כפי שראינו בפרק 8: מודלים, רמות מאמץ, עלויות ומגבלות שימוש, כל כלי שנטען לתוך ההקשר עולה טוקנים. בלי מנגנון חכם, חיבור עשרות שרתי MCP היה מציף כל שיחה בהגדרות כלים שלא בשימוש. Tool Search פותר את זה: בברירת המחדל, רק שמות הכלים והוראות השרת נטענים בתחילת השיחה, וההגדרה המלאה של כלי נטענת רק כשקלוד באמת מחפש ומשתמש בו.
אפשר לשלוט בהתנהגות עם משתנה הסביבה ENABLE_TOOL_SEARCH:
| ערך | התנהגות |
|---|---|
| (לא מוגדר, ברירת מחדל) | כל הכלים נטענים לפי דרישה |
auto | טוען מראש כל עוד ההגדרות פחות מ-10% מחלון ההקשר, ואז עובר לטעינה לפי דרישה |
false | כל הכלים נטענים מראש, בלי דחייה |
שרת עם כמה כלים שקלוד צריך בכל תור אפשר לסמן עם "alwaysLoad": true בהגדרות שלו ב-.mcp.json, כדי שהוא תמיד ייטען מראש בלי חיפוש.
עריכת .mcp.json ידנית
הקובץ הזה בשורש הפרויקט הוא הדרך הכי טובה לשתף הגדרות עם הצוות, כי הוא נכנס ל-Git:
{
"mcpServers": {
"claude-code-docs": {
"type": "http",
"url": "https://code.claude.com/docs/mcp"
},
"playwright": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@playwright/mcp@latest"]
}
}
}
אחרי שמירה, פותחים שיחה חדשה בפרויקט. בפעם הראשונה Claude Code מבקש לאשר את השרתים החדשים.
הרחבת משתני סביבה
.mcp.json תומך בהרחבה של משתני סביבה, כדי שאפשר לשתף קובץ אחד עם צוות שלם בלי לחשוף מפתחות:
{
"mcpServers": {
"api-server": {
"type": "http",
"url": "${API_BASE_URL:-https://api.example.com}/mcp",
"headers": { "Authorization": "Bearer ${API_KEY}" }
}
}
}
שימו לב: משתנים שמכילים אישורים של Claude Code עצמו או של ספק הענן (כמו ANTHROPIC_API_KEY) נקראים תמיד כריקים בכתובת ובכותרות של שרת מרוחק — הגנה מפני מאגר קוד או Plugin ששולח את האישורים שלכם לשרת חיצוני.
שרתים כ-Channel
שרת MCP יכול גם לפעול כ-Channel שדוחף הודעות לתוך השיחה שלכם, כך שקלוד מגיב להודעות טלגרם, דיסקורד או Webhook גם כשאתם לא ליד המקלדת. ראו את התיעוד הרשמי על Channels להרחבה.
שימוש ב-Claude Code כשרת MCP
אפשר להפוך את Claude Code עצמו לשרת MCP שכלים אחרים מתחברים אליו, ולהריץ אותו כתהליך stdio: claude mcp serve. שימושי כשרוצים לחשוף את היכולות של קלוד לאפליקציה חיצונית.
Prompts של MCP כפקודות
שרת MCP יכול לחשוף Prompts מוכנים, ו-Claude Code הופך אותם אוטומטית לפקודות זמינות בשיחה — עוד דרך שדרכה שרת MCP "מתנהג" כמו Skill.
- MCP מחבר את קלוד לכלים חיצוניים: issue trackers, מסדי נתונים, Gmail, פיגמה ועוד.
- מוסיפים עם
claude mcp add --transport http <שם> <url>(מרוחק) או עם--ופקודת הרצה (מקומי, stdio). - היקף
localפרטי לפרויקט,projectמשותף דרך.mcp.json,userלכל הפרויקטים שלכם. - Connectors מ-claude.ai נטענים אוטומטית כשמתחברים עם חשבון claude.ai.
- חברו רק שרתים ממקורות מהימנים — Anthropic לא מבקרת שרתי צד שלישי. Tool Search שומר על הקשר קטן גם עם הרבה שרתים.
התוכן באתר נועד למידע כללי בלבד ואינו מהווה ייעוץ מקצועי, הצעה או התחייבות. נעשה מאמץ לדייק, אך ייתכנו שינויים, טעויות או חוסר עדכניות, והשימוש במידע הוא באחריות המשתמש. ככל שהדין מתיר, האתר ובעליו אינם אחראים לנזק שייגרם מהסתמכות על המידע. קישורים לאתרים חיצוניים הם באחריות אותם אתרים, וככל שקיימים קישורי שותפים, ייתכן שהאתר יקבל עמלה ללא תוספת עלות עבורכם. התוכן מוגן בזכויות יוצרים (חוק זכות יוצרים, התשס״ח-2007) ואין להעתיקו ללא רשות. שמות מותגים וסימני מסחר שייכים לבעליהם. ראו גם תקנון האתר ומדיניות הפרטיות.