iMessage Query MCP Server について
iMessage Query MCP Server は、macOS 上でローカルの iMessage データベースの会話を LLM から安全に照会・分析できるようにする MCP サーバーです。FastMCP と imessagedb ライブラリで構築され、phonenumbers による電話番号の検証に対応しています。
主な機能
- 01指定した電話番号のメッセージを取得する get_chat_transcript ツール
- 02日付範囲によるメッセージの絞り込み
- 03メッセージ本文、タイムスタンプ、添付ファイル情報の取得
- 04phonenumbers による電話番号の検証
- 05添付ファイルの欠損検出
活用シーン
- 01LLM による特定の連絡先との過去のやり取りの要約
- 02期間を指定した iMessage 履歴の取得
- 03会話内の添付ファイル記録の確認
MCP 対応
MCP サーバーとして、iMessage のメッセージ履歴を読み取る get_chat_transcript ツールを MCP クライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
iMessage クエリ MCP サーバー
Model Context Protocol(MCP)を介して、iMessage データベースに安全にアクセスできる MCP サーバーです。このサーバーは FastMCP フレームワークと imessagedb ライブラリを使用して構築されており、適切な電話番号の検証と添付ファイルの処理を行いながら、LLM が iMessage の会話をクエリして分析できるようにします。
📋 システム要件
- macOS(iMessage データベースへのアクセスに必要)
- Python 3.6+
📦 依存関係
必要な依存関係をすべてインストールします。
# Using pip
pip install -r requirements.txt
必須パッケージ
- fastmcp:Model Context Protocol サーバーを構築するためのフレームワーク
- imessagedb:macOS の Messages データベースにアクセスし、クエリを実行するための Python ライブラリ
- phonenumbers:電話番号を適切に検証、書式設定するための Google の電話番号処理ライブラリ
すべての依存関係は、簡単にインストールできるように requirements.txt で指定されています。
📑 目次
🛠️ MCP ツール
このサーバーは、LLM に次のツールを公開します。
get_chat_transcript
オプションの日付フィルタリングを指定して、特定の電話番号のメッセージ履歴を取得します。以下が含まれます。
- メッセージのテキストとタイムスタンプ
- 添付ファイル情報(ある場合)
- 適切な電話番号の検証
- 日付範囲によるフィルタリング
🚀 はじめに
リポジトリをクローンします。
git clone https://github.com/hannesrudolph/imessage-query-fastmcp-mcp-server.git
cd imessage-query-fastmcp-mcp-server
📦 インストール方法
この MCP サーバーは、Claude Desktop または Cline VSCode プラグインにインストールできます。ニーズに最も合った方法を選択してください。
オプション 1:Claude Desktop にインストール
FastMCP を使用してインストールします。
fastmcp install imessage-query-server.py --name "iMessage Query"
オプション 2:Cline VSCode プラグインにインストール
このサーバーを Cline VSCode プラグインで使用するには、次の手順に従います。
- VSCode で、Cline プラグインのサイドバーにあるサーバーアイコン(☰)をクリックします
- 「Edit MCP Settings」ボタン(✎)をクリックします
- 次の設定を設定ファイルに追加します。
{
"imessage-query": {
"command": "uv",
"args": [
"run",
"--with",
"fastmcp",
"fastmcp",
"run",
"/path/to/repo/imessage-query-server.py"
]
}
}
/path/to/repo を、このリポジトリをクローンした場所のフルパス(例:/Users/username/Projects/imessage-query-fastmcp-mcp-server)に置き換えます。
🔒 安全機能
- iMessage データベースへの読み取り専用アクセス
- phonenumbers ライブラリを使用した電話番号の検証
- ファイルの欠落を検出する安全な添付ファイル処理
- 日付範囲の検証
- クリーンな JSON レスポンスを生成するための進捗出力の抑制
📚 開発ドキュメント
リポジトリには、開発用のドキュメントファイルが含まれています。
dev_docs/imessagedb-documentation.txt:iMessage データベースの構造と、imessagedb ライブラリの機能に関する包括的なドキュメントが記載されています。
このドキュメントは機能の開発時に背景情報として役立ち、LLM と併用して開発を支援できます。
⚙️ 環境変数
サーバーが macOS のデフォルトの場所にある iMessage データベースを自動的に検出するため、環境変数は必要ありません。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。