Skip to main content
Glama
ailenshen

Apple Notes MCP Server

Apple Notes MCP サーバー

Apple Notesのネイティブフォーマットをサポートし、Apple Notesの読み書きを行います。

apple-notes-mcp MCP server

ほとんどのApple Notes MCPサーバーはプレーンテキストしか書き込めませんが、このサーバーはネイティブにフォーマットされたノートを作成します。タイトル、見出し、太字、リストなどは、プレーンテキストではなく、実際のApple Notesのスタイルとしてレンダリングされます。これは、Notes.appに組み込まれているMarkdownインポート機能を活用することで実現しています。

要件: macOS 26 (Tahoe) 以降、Node.js 24以上

セットアップ

1. MCPクライアントに追加する

Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.json を編集します:

{
  "mcpServers": {
    "apple-notes": {
      "command": "npx",
      "args": ["-y", "@ailenshen/apple-notes-mcp@latest"]
    }
  }
}

Claude Code — ターミナルで実行します:

claude mcp add apple-notes -- npx -y @ailenshen/apple-notes-mcp@latest

2. 権限を付与する

ネイティブフォーマットをサポートするため、このサーバーはNotes.appの組み込みMarkdownインポート機能を使用します。これは.mdファイルをNotes.appで開き、インポートダイアログを自動的に確定させるものです。これにはnodeに対して2つのmacOS権限が必要です:

権限

有効にする場所

理由

フルディスクアクセス

システム設定 > プライバシーとセキュリティ > フルディスクアクセス > nodeを有効にする

ノートのリスト表示と検索のためにデータベースを読み取る

アクセシビリティ

システム設定 > プライバシーとセキュリティ > アクセシビリティ > nodeを有効にする

ノート作成時にインポートダイアログを自動確定させる

初回使用時にmacOSから承認を求められるので、「許可」をクリックしてください。プロンプトを見逃した場合は、上記の設定から手動でnodeをオンにしてください。権限付与後、MCPクライアントを再起動してください。

権限が不足している場合、サーバーがどの権限が必要か、どう修正すべきかを正確に伝えます。

3. 使用を開始する

AIに自然に話しかけるだけです:

  • 「Projectsフォルダにあるすべてのノートをリストアップして」

  • 「ノートから『会議の議題』を検索して」

  • 「『買い物リスト』というノートを読んで」

  • 「Workフォルダに今日のタスク項目を含むノートを作成して」

  • 「『買い物リスト』をこれらの新しい項目で更新して」

  • 「『古いドラフト』という名前のノートを削除して」

何ができるか?

ツール

説明

list_notes

ノートを閲覧する(フォルダでフィルタリング可能)

search_notes

キーワードでノートを探す

get_note

内容をMarkdownとして読み込む

create_note

Markdownを書き込み、ネイティブフォーマットのノートを作成する

update_note

フォルダを維持したまま内容を置き換える

delete_note

「最近削除した項目」に移動する

NotesでのMarkdownサポート

要素

対応状況

見出し、太字斜体、リスト、inline code

はい

引用ブロック

内容は保持されるが、インデントスタイルはなし

リンク

テキストは保持されるが、URLは失われる

テーブル、脚注

いいえ

リモートアクセス (HTTPモード)

スマートフォンや別のコンピュータからApple Notesにアクセスしたいですか?

npx @ailenshen/apple-notes-mcp@latest --http

これにより、組み込みシークレットを含むエンドポイントURLが表示されます:

Endpoint: http://localhost:3100/mcp/a3f8b2c9e1d4...

リモートのMCPクライアントをこのURLに向けてください。インターネット経由でアクセスするには、トンネル(ngrok、Cloudflare Tunnelなど)を使用してHTTPSの背後に配置してください。

フラグ

デフォルト

説明

--port <number>

3100

ポート番号

--secret <string>

ランダム

カスタムURLシークレット

再起動後も実行し続けるには、wikiのLaunchAgentの例を参照してください。

仕組み

アクション

メソッド

速度

リスト / 検索

SQLite (読み取り専用)

< 100ms

読み取り

AppleScript → Markdown

~1秒

作成

ネイティブMarkdownインポート

~0.5秒

更新

削除 + 作成

~1.5秒

削除

AppleScript

~1秒

  • 読み取りは、SQLiteを介してNotesデータベースを直接クエリするため、高速かつ安全です。内容はturndownを介してAppleのHTMLからMarkdownに変換されます。

  • 作成はmacOSのネイティブMarkdownインポート(open -a Notes)を使用するため、フォーマットがネイティブに保持されます。作成中、Notes.appが短時間(約0.5秒)表示されます。

  • 更新は古いノートを削除して新しいノートを作成し、元のフォルダを自動的に保持します。

  • 削除は手動で行うのと同様に、ノートを「最近削除した項目」に移動します。

既知の制限事項

  • ノートの部分編集(例:「この段落だけ修正して」)はサポートされていません。update_noteは常に内容全体を置き換えます。これはNotesがコンテンツを公開する方法の根本的な制限です。AppleScriptインターフェースは元のMarkdownではなくHTMLを返すため、クリーンな「読み取り→編集→書き込み」の往復は現在不可能です。

  • ノート作成中にNotesが短時間表示されます。MarkdownインポートフローではNotes.appのダイアログを自動確定させる必要があり、その際に一時的に前面に表示されることがあります。

これらの制限は、AppleがAppleScriptにMarkdownのインポート/エクスポートを追加するか、公式のNotes APIを公開すれば解消されます。どちらも将来のmacOSリリースに向けて追跡されています。

ビジョン

Apple Notesは、Appleデバイス上で個人の知識を保持するための最も自然な場所です。同期はどこでも行われ、高速で、プライベートです。しかし、APIのない「壁に囲まれた庭」でもあります。

このプロジェクトは、Apple NotesをAIにとってのファーストクラスのデータソースにします。長期的な目標は、Mac、スマートフォン、Webなど、どこでAIと対話していても、Apple Notesに常にアクセスでき、読み書きできるようにすることです。

ライセンス

MIT

Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - A tier

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ailenshen/apple-notes-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server