mcpField
A
apple-voice-memo-mcp

apple-voice-memo-mcp

ローカル
github.com/jwulff生産性81 週間前に更新

apple-voice-memo-mcp について

apple-voice-memo-mcpは、macOS上のApple Voice MemosにアクセスするMCPサーバーです。AIアシスタントから録音の情報や音声を確認でき、保存済みの文字起こしの抽出やAppleのSFSpeechRecognizerによる生成にも対応します。

主な機能

  1. 01録音とメタデータの一覧表示
  2. 02録音の詳細情報の取得
  3. 03パスまたはBase64で音声を取得
  4. 04録音内に保存された文字起こしの抽出
  5. 05SFSpeechRecognizerによる文字起こし

活用シーン

  1. 01ボイスメモの閲覧と絞り込み
  2. 02録音音声を別のワークフローに渡す
  3. 03既存の文字起こしテキストを抽出
  4. 04文字起こしのない録音からテキストを生成

MCP 対応

MCPサーバーとして、Apple Voice Memosの一覧、録音情報、音声取得、文字起こしの抽出・生成を行うツールをMCPクライアントに提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"jwulff-apple-voice-memo": {
"command": "npx",
"args": [
"-y",
"apple-voice-memo-mcp"
]
}
}
}
起動コマンドnpx -y apple-voice-memo-mcp

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmapple-voice-memo-mcp0.1.1

ツール

5

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
limitnumberいいえ返すメモの最大数(1~100、デフォルト:50)
offsetnumberいいえページネーションでスキップするメモの数(デフォルト:0)
searchstringいいえタイトルまたはカスタムラベルでメモを絞り込む検索語

詳細

Apple Voice Memo MCP サーバー

macOS 上の Apple Voice Memos にプログラムからアクセスできる MCP(Model Context Protocol)サーバーです。Claude などの AI アシスタントから音声録音を操作できます。

ローカルで文字起こしを行う場合は、whisper-mcp との併用がおすすめです。

機能

  • ボイスメモの一覧表示 - メタデータとともに、すべてのボイスメモを表示します
  • メモの詳細取得 - 特定の録音に関する詳細情報を取得します
  • 音声の取得 - 音声ファイルのパス、または Base64 エンコードされた音声データにアクセスします
  • 文字起こしの取得 - メモから文字起こしを抽出します(Apple により音声ファイル内に保存されています)
  • メモの文字起こし - Apple の SFSpeechRecognizer を使用して文字起こしを生成します

要件

  • macOS Sonoma(14.0)以降(文字起こしには Sequoia を推奨)
  • Node.js 18+
  • フルディスクアクセス権限(ボイスメモのデータへのアクセスに必要)
  • ボイスメモアプリを少なくとも一度は開いていること

インストール

npm install -g apple-voice-memo-mcp

または、npx で直接使用します。

npx apple-voice-memo-mcp

設定

Claude Desktop

Claude Desktop の設定ファイルに追加します。

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "apple-voice-memo-mcp": {
      "command": "npx",
      "args": ["-y", "apple-voice-memo-mcp"]
    }
  }
}

編集後、Claude Desktop を再起動してください。

Claude Code(CLI)

Claude Code を使用する場合は、プロジェクトの .mcp.json ファイルに追加します。

{
  "mcpServers": {
    "apple-voice-memo-mcp": {
      "command": "npx",
      "args": ["-y", "apple-voice-memo-mcp"]
    }
  }
}

ユーザー全体に適用する設定の場合は、~/.claude/settings.json に追加します。

{
  "mcpServers": {
    "apple-voice-memo-mcp": {
      "command": "npx",
      "args": ["-y", "apple-voice-memo-mcp"]
    }
  }
}

ヒント: Claude Code で /mcp を使用すると、サーバーが接続されていることを確認できます。

ローカル開発環境のセットアップ

npm ではなくソースから実行する場合:

{
  "mcpServers": {
    "apple-voice-memo-mcp": {
      "command": "node",
      "args": ["/path/to/apple-voice-memo-mcp/dist/index.js"]
    }
  }
}
権限
  1. フルディスクアクセス: ボイスメモのデータベースを読み取るために必要です

    • 「システム設定」>「プライバシーとセキュリティ」>「フルディスクアクセス」を開きます
    • ターミナルアプリまたは Claude Desktop を追加します
  2. 音声認識(文字起こしに使用):

    • transcribe_memo ツールを使用する場合にのみ必要です
    • 初回使用時にシステムから許可を求められます

MCP ツール

list_voice_memos

すべてのボイスメモをメタデータとともに一覧表示します。

パラメーター:

  • limit(任意): 結果の最大数(1~100、デフォルト: 50)
  • offset(任意): ページネーションのオフセット
  • search(任意): タイトルで絞り込む検索語句

応答例:

{
  "memos": [
    {
      "id": 1,
      "title": "Meeting Notes",
      "date": "2025-01-07T10:30:00.000Z",
      "duration": 120.5,
      "hasTranscript": true
    }
  ],
  "total": 15
}
get_voice_memo

特定のメモの詳細なメタデータを取得します。

パラメーター:

  • id(必須): メモ ID
get_audio

音声ファイルを取得します。

パラメーター:

  • id(必須): メモ ID
  • format(任意): "path" または "base64"(デフォルト: "path")
get_transcript

メモから文字起こしを抽出します。

パラメーター:

  • id(必須): メモ ID
  • format(任意): "text"、"json"、または "timestamped"
transcribe_memo

SFSpeechRecognizer を使用してメモを文字起こしします。

パラメーター:

  • id(必須): メモ ID
  • language(任意): 言語コード(デフォルト: "en-US")

仕組み

データへのアクセス

ボイスメモのデータは次の場所に保存されています。

  • データベース: ~/Library/Group Containers/group.com.apple.VoiceMemos.shared/Recordings/CloudRecordings.db
  • 音声ファイル: 同じディレクトリ内の .m4a 形式のファイル
文字起こしの保存場所

Apple は、tsrp というカスタム MPEG-4 atom を使用して、文字起こしを .m4a 音声ファイル内に直接保存します。この MCP サーバーはこれらの atom を解析して文字起こしを抽出します。文字起こし用の個別ファイルはありません。

開発

# Clone the repository
git clone https://github.com/jwulff/apple-voice-memo-mcp.git
cd apple-voice-memo-mcp

# Install dependencies
npm install

# Build
npm run build

# Run in development
npm run dev

# Test with MCP inspector
npm run inspector

トラブルシューティング

「Voice Memos database not found」
  1. ボイスメモアプリを少なくとも一度は開いていることを確認してください
  2. ターミナルまたはアプリケーションにフルディスクアクセスを許可してください
  3. ボイスメモの iCloud 同期が有効になっているか確認してください
「No transcript available」
  • macOS Sequoia 以降では、ボイスメモアプリでメモを開くと自動文字起こしが開始されます
  • 古いバージョンの macOS には自動文字起こし機能がありません
  • transcribe_memo ツールを使用すると、SFSpeechRecognizer で文字起こしを生成できます
ネイティブモジュールのバインディングエラー

better_sqlite3.node のバインディングが見つからないというエラーが表示された場合:

npm rebuild better-sqlite3

これにより、現在の Node.js バージョンに合わせてネイティブモジュールが再コンパイルされます。

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。