אם אתם עובדים עם Claude Code ב-2025, כבר בטח נתקלתם במונח MCP — Model Context Protocol. זה הפרוטוקול הפתוח שפיתחה Anthropic, שמאפשר לתת לClaude ידיים — כלים שהוא יכול להשתמש בהם כדי לעשות דברים בעולם האמיתי.
כבר קיימים שרתי MCP מוכנים לשירותים פופולריים כמו Notion, GitHub, Slack. אבל מה אם יש לכם אתר WordPress מותאם אישית, מערכת CRM, או API פנימי? אז אתם בונים אחד בעצמכם — וזה יותר פשוט ממה שנשמע.
הרעיון הגדול בשתי שורות
Claude ←──→ שרת MCP שלכם ←──→ כל שירות / API שתרצו
השרת שלכם הוא המתווך. Claude שואל, השרת עושה, ומחזיר תשובה — כמו לשלוח פקיד לבנק.
שלב 0: מכינים את הסביבה (חד פעמי)
קודם כל, בדקו שיש לכם Node.js מותקן. פתחו טרמינל וכתבו:
node --version
אם קיבלתם מספר גרסה כמו v20.11.0 — מעולה, אתם מוכנים. אם לא — כנסו ל-nodejs.org והורידו את הגרסה הנוכחית (LTS).
שלב 1: יוצרים תיקייה לפרויקט
mkdir my-first-mcp
cd my-first-mcp
npm init -y
פתחו את package.json שנוצר ותוסיפו שורה אחת חשובה: "type": "module" — בלי זה הכל יתפרק. לאחר מכן התקינו את התלויות:
npm install @modelcontextprotocol/sdk zod
שלב 2: השלד — הקוד הכי בסיסי שיש
צרו קובץ server.js עם הקוד הבסיסי ביותר:
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
import { z } from "zod";
const server = new McpServer({
name: "My First MCP",
version: "1.0.0",
});
// כאן נוסיף כלים בהמשך...
const transport = new StdioServerTransport();
await server.connect(transport);
כל שרת MCP שתבנו אי פעם יתחיל ויסתיים בדיוק כך. השינוי האמיתי הוא מה שתכניסו באמצע.
שלב 3: מוסיפים Tool ראשון
Tool הוא פעולה שClaude יכול לבצע. המבנה תמיד אותו הדבר:
server.tool(
"add-todo", // שם הכלי
"Add a new task to the to-do list", // תיאור — Claude קורא את זה!
{
task: z.string().min(1).describe("Description of the task"),
priority: z.enum(["low", "medium", "high"]).default("medium"),
},
async ({ task, priority }) => {
// הלוגיקה שלכם כאן
return {
content: [{ type: "text", text: `נוסף: "${task}" | עדיפות: ${priority}` }],
};
}
);
טיפ חשוב: ה-description שאתם כותבים לכל כלי — Claude קורא אותו כדי להחליט מתי ואיך להשתמש בו. השקיעו בתיאורים!
שלב 4: עוד כלים — Claude כבאטמן
כלי אחד זה טוב, אבל הכוח האמיתי הוא כשיש רצף של כלים שClaude יכול לשרשר יחד. הוסיפו כלי לצפייה ברשימה וכלי לסימון כ"בוצע" — ופתאום Claude יכול לנהל מטלות שלמות בשבילכם.
כל כלי נוסף עם אותה תבנית בדיוק: server.tool(שם, תיאור, פרמטרים, פונקציה).
שלב 5: מחברים ל-Claude Code
אחרי שכתבתם את השרת, נגיד לClaude Code שהוא קיים:
claude mcp add my-todo-mcp -- node /הנתיב/המלא/server.js
אם צריכים environment variables (למשל API keys):
claude mcp add my-api-mcp \
-e API_KEY=המפתח_שלכם \
-e API_URL=https://api.example.com \
-- node /נתיב/server.js
בדקו שהכל עובד:
claude mcp list
שלב 6: בודקים שזה עובד!
פתחו Claude Code ונסו:
"תוסיף לי מטלה: לקנות חלב, עדיפות גבוהה"
אם הכל עובד, Claude ישתמש בכלי שלכם ויחזיר תשובה שנוצרה מהקוד שלכם. זה רגע מרגש — Claude פשוט השתמש בכלי שבניתם!
כשדברים לא עובדים — מדריך הצלה מהיר
| שגיאה | סיבה | פתרון |
|---|---|---|
| Cannot use import statement | חסר "type": "module" | הוסיפו ב-package.json |
| spawn ENOENT | Claude לא מצא node | ציינו נתיב מלא |
| כלים לא מופיעים | קובץ .mcp.json שגוי | בדקו עם claude mcp list |
| Missing env vars | משתני סביבה לא הוגדרו | הוסיפו -e בפקודת ה-add |
טיפ זהב: כל process.stderr.write("הודעה\n") שתכניסו בקוד יופיע בלוגים של Claude Code — כך תראו מה קורה מאחורי הקלעים.
למה זה משנה לכם — בתמונה הגדולה
בלי MCP: אתם מדביקים טקסט לClaude, הוא מחזיר טקסט, אתם עושים משהו עם זה ידנית.
עם MCP: אתם אומרים לClaude מה אתם רוצים להשיג, והוא מבצע את שרשרת הפעולות הנדרשת בעצמו.
לדוגמה — שרת MCP לWordPress שבנינו כאן מאפשר לClaude לכתוב פוסט, להעלות תמונה, וליצור טיוטה מוכנה — בפקודה אחת. המגבלה היחידה? אם יש API לזה — אפשר לבנות MCP לזה.
נכתב על בסיס נסיון אישי בבניית שרת MCP מותאם אישית לניהול תוכן WordPress — כולל יצירת פוסטים, עדכון, חיפוש, והעלאת מדיה.