Apple Maps について
Apple Maps に保存した場所を確認する macOS ユーザー向けの MCP サーバーです。お気に入り、ガイド、最近表示した場所と座標を扱いますが、地図検索や経路案内、所要時間の計算は行いません。
主な機能
- 01お気に入りとガイドの一覧
- 02ガイド内と未分類の場所の確認
- 03最近表示した場所の表示
- 04名前、ラベル、住所による検索
- 05任意でお気に入りを追加・削除
活用シーン
- 01保存した場所の座標を確認
- 02ガイドに登録した場所を確認
- 03最近表示した場所を調べる
- 04書き込みを有効にしてお気に入りを管理
MCP 対応
保存済みの Apple Maps の場所を読むツールと、任意のお気に入り管理ツールを MCP クライアントに公開します。書き込みはデフォルトで無効で、プロンプトとリソースの公開は設定できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y @mgcrea/mcp-apple-mapsAPPLE_MAPS_ALLOW_WRITESRegister the mutating tools. Off by default, and the gate decides whether the write tools exist at all rather than merely refusing — an agent with writes off cannot see them.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
@mgcrea/mcp-apple-maps
macOS の Maps アプリ用 MCP サーバーです。保存した場所を扱います。
{
"mcpServers": {
"apple-maps": { "command": "npx", "args": ["-y", "@mgcrea/mcp-apple-maps"] }
}
}
読み取る内容
Maps の Core Data ストアから、お気に入り、コレクション(ガイド)、最近表示した場所を、名前、住所、実際の座標とともに読み取ります。
| ツール | 内容 |
|---|---|
apple_maps_list_favorites | お気に入りとして保存した場所 |
apple_maps_list_collections | ガイド |
apple_maps_list_collection_places | 1 つのガイドに登録されている場所 |
apple_maps_list_unfiled_places | どのガイドにも登録されていない保存済みの場所 |
apple_maps_list_recents | 最近表示した場所 |
apple_maps_search_places | 名前、ラベル、住所で、上記 3 種類すべてを一度に検索 |
apple_maps_get_place | ref で指定した 1 か所 |
apple_maps_diagnostics | 開いたもの、解決できた列、実行できない処理 |
書き込む内容
APPLE_MAPS_ALLOW_WRITES=1 の場合に限ります。オフの場合は拒否するのではなく、どちらも登録されないため、オプトインしていないクライアントにその存在が知られることはありません。
| ツール | 内容 |
|---|---|
apple_maps_add_favorite | maps:// 経由で場所のレコードを作成し、お気に入りに保存 |
apple_maps_remove_favorite | お気に入りの行を削除 |
場所カード上で、SQL を書き込むのではなくアクセシビリティ機能を通じて操作するボタンがさらに 3 つあります。Cupertino.app がこのサーバーをホストしている場合に限り登録されます。権限はアプリに付与されるため、npm から実行したパッケージでは操作できず、その存在が知られることもありません。
| ツール | 内容 |
|---|---|
apple_maps_save_place | 場所を「Places」ライブラリに追加(「Pinned」とは別の機能です) |
apple_maps_remove_saved_place | 「Places」ライブラリから場所を削除 |
apple_maps_add_place_to_guide | 既存のガイドに場所を登録。Maps では登録を確認できません |
いずれの操作でも Maps を開いてウインドウを前面に表示し、場所を「最近表示した項目」に残します。
対応していないこと
この Mac に保存されているデータを読み取ります。Apple の地図で世界中を検索したり、住所をジオコーディングしたり、道順を案内したり、移動時間を計算したりする機能はありません。これらは Apple のサービスへのネットワーク呼び出しであり、ディスク上のデータではありません。
書き込みは APPLE_MAPS_ALLOW_WRITES が設定されている場合に限ります。お気に入りはストア経由で、Places ライブラリとガイドへの登録は Maps のインターフェイス経由で操作します。それ以外の機能はすべて読み取り専用です。ストアは NSPersistentCloudKitContainer によって iCloud にミラーリングされるため、書き込みは、実行中のアプリの背後で同期されているオブジェクトグラフのレプリカ 1 つに対する編集です。不正な行はアカウント内のすべてのデバイスに伝播します。そのため、場所のレコードを捏造することはありません。お気に入りの追加時は maps:// を開き、まず Maps 自身にレコードを作成させてからコピーします。お気に入りに残すかどうかにかかわらず、その場所は「最近表示した項目」に残ります。また、ネットワーク経由で場所を解決するには数十秒かかる場合があります。
フルディスクアクセスは必須です
最適化のためではありません。Maps にはスクリプティング辞書が付属していないため、代わりに使える Apple Events の手段はありません。権限が付与されていない場合、このサーバーは空のリストではなくエラーを返します。権限は Maps ではなく、サーバーを実行するアプリに付与してください。
一覧が空の場合は、その種類の項目が何も保存されていないことを意味します。apple_maps_diagnostics を実行すると、どちらなのかを確認できます。
設定
| 変数 | デフォルト | 内容 |
|---|---|---|
APPLE_MAPS_STORE | 検出 | テストおよびフォレンジックコピー用の明示的なストアパス |
APPLE_MAPS_INDEX_MODE | auto | auto / ro / immutable / off |
APPLE_MAPS_MAX_RESULTS | 50 | デフォルトの結果上限 |
APPLE_MAPS_SEED_TIMEOUT_MS | 30000 | add_favorite が Maps に場所の解決を待つ時間 |
APPLE_MAPS_EXPOSE_PROMPTS | on | プロンプトと cupertino://maps/* リソースを登録します |
APPLE_MAPS_DEBUG | off | stderr に詳細なログを出力します |
APPLE_MAPS_ALLOW_WRITES(off)を有効にすると、書き込み内容に記載されたツールが登録されます。
ストアが存在しないと宣言された 3 回の別々の機会を含む、フェーズ 0 の測定結果についてはdocs/maps.mdをご覧ください。
ライセンス
MIT。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。