שרת ה-MCP של Apple Notes, הכלים שלו נספרו בריצה חיה על Mac אמיתי.
הכלים נספרו2026-08-03·macOS 15.7.7
חבילהapple-mcp 1.0.0
מדווח על עצמוApple MCP tools 1.0.0
פרוטוקול MCP2024-11-05
סביבת ריצהv24.18.0, bun 1.3.14
רשימת הכלים למטה היא לכידה חיה מהשרת הרץ; קריאת כלי מאומתת עדיין ממתינה להרשאות.
התשובה הקצרה
אומת לאחרונה 2026-08-03
שרת ה-MCP של Apple Notes מחבר עוזר AI לאפליקציית Notes שכבר יושבת על ה-Mac שלכם, ובאותה חבילה גם ל-Reminders, ל-Calendar, ל-Mail, ל-Messages, ל-Contacts ול-Maps. זו חבילה קהילתית, apple-mcp מאת Dhravya Shah, שמפורסמת ל-npm תחת רישיון MIT, והיא מפעילה את האפליקציות האלה דרך AppleScript כפי ש-Shortcuts ו-Automator עושים ולא דרך API בענן, ולכן אין חשבון לפתוח ואין מפתח להדביק בשום מקום. הנה בדיוק מה שאימתנו ומה שלא. הרצנו אותו עם bunx ובלי שום אישור גישה: השרת השלים את לחיצת היד של MCP וענה ל-tools/list עם 7 כלים, אחד לכל אפליקציה של Apple, והתשובה הזו היא הטבלה שלמטה, מילה במילה. קריאת הכלי האמיתית היחידה שביצענו, notes עם operation בערך list, היא הסיבה שהעמוד הזה אומר שהכלים נספרו ולא שהשרת אומת: אחרי 120 שניות היא החזירה תשובה שנראית נקייה, המילים No notes exist., בזמן שה-stderr של אותה ריצה עצמה הראה שה-AppleScript שמתחת נכשל בשגיאת AppleEvent timed out, והקוד של החבילה עצמה הופך את הכישלון הזה בשקט לרשימה ריקה. שחזרנו את אותה שגיאה בדיוק עם פקודת osascript חשופה ועם חבילת Notes מתחרה על אותו Mac, כך שזהו מצב של המכונה ושל הרשאת ה-Automation שלה ולא באג של חבילה אחת, ואנחנו מעדיפים לומר זאת מאשר להלביש את התשובה כהצלחה. שני דברים שכדאי לדעת לפני ההתקנה: מאגר ה-GitHub נמצא בארכיון והדחיפה האחרונה אליו הייתה באוגוסט 2025, ושרת צר יותר שמתמקד ב-Notes בלבד, apple-notes-mcp, ממשיך לשחרר גרסאות מדי שבוע ומקבל בערך פי שישה הורדות. [1][3][5][6]
התקנו את bun דרך Homebrew, הפעלנו את השרת עם bunx --no-cache apple-mcp@latest על גבי stdio, בלי משתני סביבה ובלי שום אישור גישה, והשלמנו את לחיצת היד של MCP: הוא ענה בשם Apple MCP tools בגרסה 1.0.0, ועם גרסת פרוטוקול 2024-11-05 למרות שהלקוח שלנו ביקש 2025-06-18, שדרוג לאחור שכדאי להכיר. אחר כך קראנו ל-tools/list, שענה עם 7 כלים, אחד לכל אפליקציה של Apple, והטבלה שלמטה היא התשובה הזו, מילה במילה. ביצענו גם קריאת כלי אמיתית אחת, notes עם operation בערך list. היא ארכה 120.3 שניות וחזרה במראה של הצלחה, isError שקרי והטקסט No notes exist., אבל ה-stderr של אותה ריצה הדפיס מתחתיה את הכישלון עצמו, שגיאת AppleEvent timed out מול Notes, והפונקציה getAllNotes של החבילה הופכת כל כישלון כזה לרשימה ריקה. לכן איננו סופרים אותה כקריאה מוצלחת: הכלים נספרו בריצה חיה, כל שגיאה בעמוד הזה היא פלט אמיתי, וקריאה שבאמת קוראת את הפתקים שלכם עדיין ממתינה להרשאת ה-Automation של macOS שאתם מאשרים על ה-Mac שלכם. שחזרנו את אותה שגיאה בדיוק עם פקודת osascript חשופה ועם חבילת Notes שנייה ולא קשורה על אותו Mac ובאותו זמן, כשהמסך פתוח והתצוגה ערה, כך שהמצב שייך למכונה ולא לחבילה מסוימת.
הודעת הפתיחה של השרת
Resolving dependencies
Resolved, downloaded and extracted [2]
Saved lockfile
Starting apple-mcp server...
Attempting to eagerly load modules...
- Contacts module loaded successfully
- Notes module loaded successfully
- Message module loaded successfully
- Mail module loaded successfully
- Reminders module loaded successfully
- Calendar module loaded successfully
- Maps module loaded successfully
All modules loaded successfully, using eager loading mode
Initializing server in standard mode...
Setting up MCP server transport...
Initializing transport...
Setting up stdout filter...
Connecting transport to server...
Server connected successfully!
קריאת כלי אמיתית אחת
tools/call notes {"operation": "list"}
No notes exist.
132:137: execution error: Notes got an error: AppleEvent timed out. (-1712)
...
שורות אמיתיות מהתוצאה שנלכדה: מספיק כדי להוכיח שהקריאה נענתה.
כלים
הכלים, כפי שנספרו מהשרת הרץ.
השרת ענה ל-tools/list עם 7 כלים בתאריך 2026-08-03. השמות, התיאורים והפרמטרים למטה הם המילים שלו עצמו, מועתקים מהתשובה הזו וללא עריכה.
כלי
מה הוא עושה
contactsname
Search and retrieve contacts from Apple Contacts app
notesoperation*searchTexttitlebodyfolderName
Search, retrieve and create notes in Apple Notes app
Search locations, manage guides, save favorites, and get directions using Apple Maps
פרמטרים המסומנים ב-* הם חובה.
התקנה
הגדרות שעובדות, אחת לכל אפליקציה.
העתיקו את הבלוק של האפליקציה שלכם. כל אחד מהם הוא ההגדרה המדויקת שאיתה אימתנו את השרת.
Claude Desktop
פתחו את הקובץ ~/Library/Application Support/Claude/claude_desktop_config.json (בתוך Claude Desktop: Settings, אחר כך Developer, אחר כך Edit Config) והוסיפו:
אין כאן בלוק env כי לשרת הזה אין אישורי גישה בכלל. מה שכן צריך זה bun, שלא מגיע עם ה-Mac: התקינו אותו פעם אחת עם brew install oven-sh/bun/bun. אחר כך סגרו ופתחו מחדש את Claude Desktop, וצפו לכך ש-macOS ישאל אם Claude רשאי לשלוט ב-Notes בפעם הראשונה שכלי באמת ירוץ. [9][4]
Claude Code
פקודה אחת בטרמינל:
claude mcp add apple-mcp -- bunx --no-cache apple-mcp@latest
כל מה שאחרי המקף הכפול הוא הפקודה המדויקת ש-Claude Code יריץ, וזו הפקודה המדויקת שאימתנו. ה-README של החבילה ממליץ על bunx ולא על npx, לכן התקינו קודם את bun אם אין לכם: brew install oven-sh/bun/bun. [10][4]
Cursor
הוסיפו ל-~/.cursor/mcp.json עבור כל הפרויקטים, או ל-.cursor/mcp.json בתוך פרויקט אחד:
Cursor קורא את הקובץ מחדש אחרי הפעלה מחדש. macOS נותן את הרשאת ה-Automation לכל אפליקציה בנפרד ולא לכל שרת, ולכן אישור של Notes עבור Claude Desktop אינו מאשר אותו עבור Cursor: צפו לענות על אותה שאלה שוב כאן. [11][4]
Routines
בלי קובץ JSON ובלי טרמינל, ברגע ש-bun מותקן. ב-Routines: Settings, אחר כך Assistant, אחר כך Connections, אחר כך Add MCP Server. העבירו את הטופס ל-Command (stdio) והזינו:
Name Apple Notes
Command bunx
Arguments --no-cache apple-mcp@latest
השאירו את Environment Variables ריק: לשרת הזה אין משתנים כאלה. דבר אחד שכדאי לתכנן, כי הוא שונה מרוב המחברים במדריך הזה: השרת מגיע ל-Notes ול-Reminders דרך macOS עצמו, ולכן הוא עובד רק כש-Routines רצה על אותו Mac שבו נמצאות האפליקציות האלה. לחצו קודם על Test Connection: שרת תקין עונה עם מספר הכלים שלו. [12][4]
בלי טרמינל
איך מגדירים את שרת ה-MCP Apple Notes בלי טרמינל.
אם מעולם לא פתחתם את הטרמינל ואין לכם כוונה להתחיל, זה המסלול שלכם, עם חריג אחד והוגן: השרת הזה עולה דרך bun, ש-Mac לא מגיע איתו, והתקנת bun היא פקודה אחת. Routines היא אפליקציית Mac שמריצה שרתי MCP בשבילכם: ממלאים שלושה שדות פעם אחת, והכלים של השרת זמינים ל-AI שלכם בצ׳אט ובשגרות מתוזמנות.
01
התקינו את Routines
הורידו את האפליקציה מ-getroutines.ai/download, גררו אותה ל-Applications והתחברו.
02
התקינו את bun פעם אחת
זה השלב היחיד שדורש טרמינל, ועושים אותו פעם אחת. פתחו את Terminal והריצו brew install oven-sh/bun/bun, וכך תקבלו את הפקודה bunx שאיתה השרת עולה. ה-README של החבילה ממליץ על bunx ולא על npx, ו-bunx הוא מה שהרצנו.
03
פתחו את הגדרות ה-MCP
לחצו על החשבון שלכם בתחתית סרגל הצד ובחרו Settings. פתחו את הקטע Assistant, אחר כך את הלשונית Connections, גללו אל MCP Servers ולחצו על Add MCP Server.
04
בחרו Command (stdio) ומלאו שלושה שדות
העבירו את הטופס ל-Command (stdio): השרת הזה הוא פקודה שה-Mac שלכם מריץ, לא כתובת אינטרנט. Name: Apple Notes. Command: bunx. Arguments: --no-cache apple-mcp@latest. השאירו את Environment Variables ריק, השרת הזה לא צריך משתנים.
05
בדקו, ואז הוסיפו
לחצו Test Connection: Routines מפעילה את השרת ומדווחת כמה כלים היא מצאה, שבעה עבור השרת הזה, אחד לכל אפליקציה של Apple. ההפעלה הראשונה גם מורידה את החבילה, אז תנו לה רגע. אחר כך לחצו Add Server.
06
אשרו את בקשת ההרשאה של macOS, ואז השתמשו בו
בפעם הראשונה שכלי באמת מגיע ל-Notes או ל-Reminders, macOS שואל אם Routines רשאית לשלוט באפליקציה הזו. אשרו, ותוכלו לשנות את דעתכם בהמשך ב-System Settings, אחר כך Privacy and Security, אחר כך Automation. הכלים עובדים בצ׳אט מיד, וכדי לתת לשגרה מתוזמנת להשתמש בהם, פתחו את השגרה, מצאו את הכרטיס Tools & connections וסמנו את השרת תחת Apps.
רעיונות לשגרות
שגרות ששווה לתזמן.
אחרי שהשרת מחובר, שגרה מתוזמנת יכולה להשתמש בכלים שלו גם כשאתם לא מול המסך. העתיקו פרומפט, הדביקו אותו ב-Routines ובחרו שעה. הפרומפטים כתובים באנגלית בכוונה, מדביקים אותם בדיוק כפי שהם.
תוכנית ליום, נכתבת לתוך Notes
פרומפט
Every weekday at 7:30, list today's events from my Apple Calendar and everything due today in Apple Reminders, then create a note in Apple Notes called Plan for today that puts the three things that matter most at the top, with the rest underneath and a one-line reason for the order.
להפוך את הפתקים של היום לתזכורות
פרומפט
Every weekday at 18:00, search my Apple Notes for the notes I wrote today, pull out every line that reads like a promise or a next step, and create a reminder in Apple Reminders for each one with a sensible due date. Then reply with the exact list you created so I can correct it.
סריקת קצוות פתוחים ביום שישי
פרומפט
Every Friday at 16:30, search Apple Reminders for anything still open that was due this week, look for a matching note in Apple Notes about each item, and create one note called Loose ends this week that says, in plain English, what is unfinished and what my own notes already say about it.
שגיאות אמיתיות שנלכדו בריצת האימות, מודפסות בדיוק כפי שהשרת החזיר אותן.
קריאה ל-Notes עונה No notes exist. כשברור שיש שם פתקים
מה רואים
Error getting all notes: Command failed: osascript -e
tell application "Notes"
set notesList to {}
set noteCount to 0
-- Get all notes from all folders
set allNotes to notes
repeat with i from 1 to (count of allNotes)
if noteCount >= 50 then exit repeat
try
set currentNote to item i of allNotes
set noteName to name of currentNote
set noteContent to plaintext of currentNote
-- Limit content for preview
if (length of noteContent) > 200 then
set noteContent to (characters 1 thru 200 of noteContent) as string
set noteContent to noteContent & "..."
end if
set noteInfo to {name:noteName, content:noteContent}
set notesList to notesList & {noteInfo}
set noteCount to noteCount + 1
on error
-- Skip problematic notes
end try
end repeat
return notesList
end tell
132:137: execution error: Notes got an error: AppleEvent timed out. (-1712)
הפתרון
זה הדבר השימושי ביותר בעמוד, אז קראו אותו לפני שאתם סומכים על תשובה ריקה. ה-AppleScript שלמעלה הוא זה ש-apple-mcp שולח ל-Notes עבור פעולת list, וכשהוא נכשל החבילה תופסת את השגיאה, מדפיסה אותה ל-stderr ומחזירה מערך ריק, שהכלי מדווח עליו כ-No notes exist. בלי סימון שגיאה. תשובה ריקה מהשרת הזה היא לכן דו משמעית מעצם התכנון. שלושה דברים פותרים את זה בפועל. תנו את ההרשאה: פתחו את System Settings, אחר כך Privacy and Security, אחר כך Automation, מצאו את האפליקציה שמפעילה את השרת וסמנו את Notes. השאירו את ה-Mac פתוח וער לקריאה הראשונה, כי על הבקשה הזו צריך לענות אדם. והעדיפו בקשה צרה על פני בקשה גורפת: הסקריפט שלמעלה עובר על כל פתק בספרייה, וזה איטי מספיק כדי לפוג בזמן, בעוד חיפוש של מונח אחד חזר אצלנו מהר על אותו Mac.
העוזר קורא לכלי שאין לשרת
מה רואים
Unknown tool: notess
הפתרון
יש כאן בדיוק שבעה כלים, אחד לכל אפליקציה: contacts, notes, messages, mail, reminders, calendar ו-maps. כל דבר אחר, כולל טעות קטנה כמו שגיאת ההקלדה ששלחנו בכוונה, חוזר מיד ככלי לא מוכר בלי שום AppleScript. אם העוזר שלכם ממציא שמות כמו create_note או list_folders, אמרו לו שכל מה שקשור לפתקים עובר דרך הכלי notes, עם operation בערך search, list או create.
כל ארגומנט שגוי מחזיר את אותה שגיאה לא מועילה
מה רואים
Error: Invalid arguments for notes tool
הפתרון
גרמנו להודעה הזו בשלוש דרכים שונות והיא לא השתנתה: בלי operation בכלל, עם operation שאינו ברשימה, ובבקשת search בלי searchText. בדיקת הסכמה רצה לפני כל AppleScript, ולכן התשובה מיידית, וזה לפחות מלמד שהתקלה בארגומנטים ולא ב-Notes. כשאתם רואים אותה, ציינו את הפעולה ואת השדה שהיא צריכה: search מקבל searchText, create מקבל title ו-body ובאופן אופציונלי folderName, ו-list לא מקבל שום דבר נוסף.
חיפוש תזכורות חוזר ריק
מה רואים
No matching reminders found
הפתרון
זו שגיאה הוגנת, והיא גם דרך מהירה לבדוק שהאוטומציה עובדת בכלל. ביקשנו תזכורת שאינה קיימת, והשרת ענה בהרבה פחות מדקה וסימן את התוצאה כשגיאה במקום להעמיד פנים שלא מצא כלום. אם חיפושים צרים כאלה עונים מהר בזמן שפעולות list נתקעות, ההרשאה שלכם תקינה והבעיה היא היקף: הספרייה גדולה מספיק כדי שה-AppleScript הגורף יפוג בזמן.
לקוח ה-MCP לא מצליח להפעיל את השרת בכלל
הפתרון
הפקודה bunx שייכת ל-bun, שלא מותקן על Mac כברירת מחדל, ולכן כל לקוח בעמוד הזה ייכשל בשלב ההפעלה עוד לפני שהשרת מספיק לומר מילה. התקינו את bun עם brew install oven-sh/bun/bun, הפעילו מחדש את לקוח ה-MCP ונסו שוב. ההפעלה הראשונה גם מורידה את החבילה, ולכן היא דורשת חיבור לאינטרנט ואורכת יותר זמן מהבאות.
שאלות נפוצות
שאלות שאנשים שואלים.
מה זה שרת ה-MCP של Apple Notes?
זהו שרת Model Context Protocol שמאפשר לעוזר AI לקרוא ולכתוב ב-Apple Notes שלכם, ובאותה חבילה גם ב-Reminders, ב-Calendar, ב-Mail, ב-Messages, ב-Contacts וב-Maps. זה שבעמוד הזה הוא apple-mcp מאת Dhravya Shah, שמפורסם ל-npm תחת רישיון MIT. הוא רץ כתהליך על ה-Mac שלכם, מופעל על ידי bunx, מדבר עם אפליקציית ה-AI שלכם על גבי stdio, ומפעיל את אפליקציות Apple דרך AppleScript ולא דרך API בענן, ולכן הוא עובד עם החשבונות ש-Notes כבר מחוברת אליהם. [1][4][3]
אילו כלים כלולים בשרת ה-MCP של Apple Notes?
השרת הרץ חשף 7 כלים, והטבלה למעלה היא פלט ה-tools/list החי הזה, מילה במילה. יש כלי אחד לכל אפליקציה של Apple, שמפתח שלו הוא ארגומנט operation ולא כלי נפרד לכל פעולה: notes (search, list, create), reminders (list, search, open, create, listById), calendar (search, open, list, create), mail (unread, search, send, mailboxes, accounts, latest), messages (send, read, schedule, unread), contacts, ו-maps (search, save, directions, pin ועוד שלוש פעולות של מדריכים).
האם שרת ה-MCP של Apple Notes דורש מפתח API או חשבון?
לא. אין למה להירשם ואין אישור גישה להדביק, ולכן הריצה שלנו הצליחה להפעיל את השרת ולרשום את כל 7 הכלים עם סביבה ריקה. מה שכן נדרש היא הרשאה מ-macOS עצמו: בפעם הראשונה שכלי מגיע ל-Notes או ל-Reminders, המערכת שואלת אם האפליקציה שהפעילה את השרת רשאית לשלוט באפליקציה הזו, ואתם מאשרים או מסרבים ב-System Settings, אחר כך Privacy and Security, אחר כך Automation. על הבקשה הזו צריך לענות אדם שיושב מול ה-Mac, וזו בדיוק הסיבה שהקריאה הלא מאוישת שלנו פגה בזמן. [5][4]
האם שרת ה-MCP של Apple Notes בטוח?
שפטו אותו לפי הכלי הרחב שלו, לא לפי הצר. למרות השם, החבילה הזו יכולה גם לשלוח הודעות ב-Messages ולשלוח דואר ב-Mail, כך שעוזר שפועל לפי הוראה רשלנית יכול לעשות יותר מאשר לסדר פתקים. שלושה דברים עוזרים. הרשאת ה-Automation ניתנת לכל אפליקציה בנפרד וניתן לבטל אותה, כך שאפשר לאשר את Notes ואת Reminders ולסרב לשאר ב-System Settings. הכל רץ על ה-Mac שלכם, ולכן אין צד שלישי שמחזיק אסימון שממשיך לעבוד אחרי שסגרתם את המחשב. ואפשר להשאיר את השגרות המתוזמנות לפעולות הקריאה, list ו-search, ולשמור את create ואת השליחה לרגעים שאתם מסתכלים. עוד נקודה הוגנת אחת: המאגר נמצא בארכיון, ולכן אף אחד לא משחרר לו תיקונים היום. [3][5]
למה כתוב בעמוד הזה שהכלים נספרו ולא שהשרת אומת?
כי קריאת הכלי האמיתית היחידה שביצענו לא הצליחה באמת, ואנחנו לא נעגל את זה כלפי מעלה. הקריאה ל-notes עם operation בערך list ארכה 120.3 שניות והחזירה No notes exist. בלי סימון שגיאה, מה שנראה כמו תשובה נקייה, אבל ה-stderr של אותה ריצה מראה שה-AppleScript נכשל בשגיאת AppleEvent timed out, והחבילה הופכת כל כישלון כזה לרשימה ריקה. שתי השורות מודפסות בקטע האימות למעלה. שחזרנו את אותה שגיאה עם פקודת osascript פשוטה ועם חבילת Notes אחרת על אותו Mac, כשהמסך פתוח וער, כך שהסיבה היא המכונה והרשאת ה-Automation הממתינה שלה ולא חבילה מסוימת. [5]
האם apple-mcp עדיין מתוחזק?
לא באופן פעיל, וכדאי לדעת את זה לפני שמתקינים. גרסת ה-npm שהרצנו, 1.0.0, פורסמה ב-2025-08-11, ומאגר ה-GitHub שמאחוריה, supermemoryai/apple-mcp, אוסף 3,128 כוכבים אבל נמצא בארכיון, כשהדחיפה האחרונה אליו היא מאותו יום באוגוסט 2025. הוא עדיין עלה וספר את הכלים שלו בלי בעיה אצלנו, והוא עדיין החבילה שמכסה שבע אפליקציות של Apple דרך מחבר אחד. אם Notes זה כל מה שאתם צריכים, האלטרנטיבה שלמטה טרייה יותר. [1][3]
מה זה apple-notes-mcp, וכדאי להשתמש בו במקום?
זהו שרת MCP שני שמתמקד ב-Notes בלבד, מאת sweetrb, ובכל מדדי התחזוקה הוא מנצח: גרסה 2.6.12 שפורסמה ב-2026-08-01, מאגר שנדחף יום לפני שלכדנו את העמוד הזה ואינו בארכיון, ו-1,283 הורדות ב-npm באותו שבוע שבו apple-mcp קיבל 204. הרצנו אותו על אותו Mac לשם השוואה: הוא ספר 36 כלים ייעודיים ל-Notes, ומול אותה שגיאת AppleEvent timed out בדיוק הוא דיווח שגיאה הוגנת במקום רשימה ריקה. בחרו ב-apple-mcp כשאתם רוצים גם Reminders, Calendar ו-Mail ממחבר אחד, וב-apple-notes-mcp כש-Notes זה כל מה שצריך. [6][7][8][2]
מקורות
כל טענה חיצונית, עם קבלה.
כל מה שבעמוד הזה שלא ראינו בעצמנו בריצה מקושר כאן, עם התאריך שבו קראנו אותו. לגבי השאר, הריצה עצמה היא הקבלה.
3,128 stars, 282 forks, archived true, last push 2025-08-11, license MIT, per the GitHub API. The older Dhravya/apple-mcp URL redirects to this same repository.
Source for the bunx --no-cache apple-mcp@latest invocation and the client config blocks; it also documents a Smithery installer and a one-click Claude Desktop install, neither of which we tested.
getAllNotes() catches any error, logs it to stderr and returns an empty array, which is how an AppleScript timeout becomes "No notes exist."; the same file tells the reader to enable the app under System Settings, Privacy and Security, Automation.
How Routines runs one-click OAuth connectors and any MCP server.
העמוד הזה מתאר את Apple Notes כפי שהתנהג בריצה מתוארכת אחת על Mac אחד. גרסאות משתנות: אם משהו כאן כבר לא תואם למה שאתם רואים, תאריך הלכידה בראש העמוד אומר בן כמה הצילום.
מאחורי המדריך הזה
Routines, האפליקציה שמאחורי המדריך הזה, מריצה שרתי MCP כמו זה בלי טרמינל: כך עובדים המחברים. הפתקים שלכם נשארים קובצי markdown על ה-Mac שלכם, אין חשבון ענן לשלם, והיא עובדת גם בלי אינטרנט. להורדת Routines