Limitless AI MCP Server について
Limitless AI MCP Serverは、Limitless Pendantの録音をAIアシスタントに接続し、録音の検索や分析を行うユーザー向けです。日付指定の取得、キーワード検索、複数のMCPアクセス方法に対応します。
主な機能
- 01日付や期間を指定した録音一覧
- 02最近の録音のキーワード検索
- 03内容、見出し、メタデータの取得
- 04録音リソースと分析プロンプト
- 05録音と検索結果のキャッシュ
活用シーン
- 01特定日や最近のPendant録音を探す
- 02特定の話題を含む会話を検索する
- 03録音を要約してアクション項目を抽出する
- 04複数の録音から話題や傾向を分析する
MCP 対応
MCP サーバーは、録音を検索する5つのツール、構造化リソース、定型プロンプトをクライアントに提供し、サンプリングによる内容分析にも対応します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Limitless AI MCP サーバー
AI アシスタントが Limitless AI Pendant の録音とやり取りできるようにする、高度な Model Context Protocol(MCP)サーバーです。このサーバーは、AI ツールと Limitless API をシームレスにつなぎ、分析情報の抽出、録音の検索、Pendant のデータ分析を可能にします。
⚠️ ベータ版:これは初期リリース(v0.0.1)です。主要機能は実装・テスト済みですが、すべての機能を検証するため、コミュニティからのフィードバックを必要としています。問題を報告してください!
🌟 機能
主な機能
- Limitless API との完全な連携:すべての Pendant 録音にプログラムからアクセスできます
- 高度な検索:キーワードで録音を検索できます
- 柔軟なクエリ:日付、期間で録音を一覧表示したり、最近の録音を取得したりできます
- 豊富なコンテンツへのアクセス:Markdown コンテンツ、見出し、メタデータを取得できます
- 高いパフォーマンス:LRU による削除と TTL に対応したインテリジェントなキャッシュ機能
- 堅牢なエラー処理:リトライロジックとタイムアウト管理を内蔵しています
- 型安全性:包括的な型定義による TypeScript の完全サポート
MCP プロトコルの実装
- 🔧 ツール:録音の検索と取得に特化した 5 つのツール
- 📁 リソース:URI ナビゲーションを使い、録音を構造化されたリソースとして閲覧できます
- 📝 プロンプト:一般的な分析タスク向けの事前構築済みテンプレート
- 🔍 サンプリング:AI を活用したコンテンツの分析と要約
- 🔎 ディスカバリー:MCP クライアントへの機能の自動公開
📋 要件
- Node.js 22 以降
- Limitless Pendant(必須 — API は Pendant の録音のみを返します)
- Limitless API キー(limitless.ai/developers から取得)
- MCP 対応クライアント(Claude Desktop、Windsurf、Cursor など)
🏃 クイックスタート
- limitless.ai/developers から API キーを取得します
- クローンしてビルドします:
git clone https://github.com/ericbuess/limitless-ai-mcp-server.git cd limitless-ai-mcp-server npm install npm run build - Claude Code を設定します:
claude mcp add limitless -s user -e LIMITLESS_API_KEY="your-key" -- node $(pwd)/dist/index.js - チャットを開始します:「今日の録音を表示して」
🚀 インストール
オプション 1:npm からインストール
npm install -g limitless-ai-mcp-server
オプション 2:ソースからインストール
# Clone the repository
git clone https://github.com/ericbuess/limitless-ai-mcp-server.git
cd limitless-ai-mcp-server
# Install dependencies
npm install
# Build the project
npm run build
# Optional: Link globally
npm link
🔧 設定
1. Limitless API キーを設定する
# Add to your shell profile (.bashrc, .zshrc, etc.)
export LIMITLESS_API_KEY="your-api-key-here"
# Optional: Configure custom settings
export LIMITLESS_TIMEOUT=120000 # Timeout in milliseconds
export LIMITLESS_BASE_URL="https://api.limitless.ai/v1" # Custom API endpoint
export LOG_LEVEL="INFO" # Options: DEBUG, INFO, WARN, ERROR
# Optional: Configure caching
export CACHE_MAX_SIZE=100 # Maximum cached items
export CACHE_TTL=300000 # Cache lifetime in ms (5 minutes)
export SEARCH_CACHE_MAX_SIZE=50 # Search cache size
export SEARCH_CACHE_TTL=180000 # Search cache lifetime (3 minutes)
2. MCP クライアントを設定する
Claude Code CLI
Claude Code(Anthropic 公式 CLI)を使用している場合は、次を実行します:
# Option 1: Using the command directly (recommended)
npm install -g limitless-ai-mcp-server
claude mcp add limitless -s user -e LIMITLESS_API_KEY="your-api-key-here" -- limitless-ai-mcp-server
# Option 2: Using node with the full path (most reliable with nvm)
npm install -g limitless-ai-mcp-server
# Find where npm installed it:
npm list -g limitless-ai-mcp-server
# Then use the direct path (adjust the node version as needed):
claude mcp add limitless -s user -e LIMITLESS_API_KEY="your-api-key-here" -- node ~/.nvm/versions/node/v22.0.0/lib/node_modules/limitless-ai-mcp-server/dist/index.js
# Option 3: Using local installation
cd /path/to/limitless-ai-mcp-server
npm install && npm run build
claude mcp add limitless -s user -e LIMITLESS_API_KEY="your-api-key-here" -- node /path/to/limitless-ai-mcp-server/dist/index.js
# Verify it's running
claude mcp list
# Remove if needed
claude mcp remove limitless -s user
Claude Desktop の設定
-
Claude Desktop の設定ファイルを確認します:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
- macOS:
-
ファイルを開き(存在しない場合は作成して)、次を追加します:
{
"mcpServers": {
"limitless": {
"command": "node",
"args": ["/path/to/limitless-ai-mcp-server/dist/index.js"],
"env": {
"LIMITLESS_API_KEY": "your-api-key-here"
}
}
}
}
-
プレースホルダーを置き換えます:
/path/to/limitless-ai-mcp-server→ 実際のインストール先のパス(例:/Users/yourname/limitless-ai-mcp-server)your-api-key-here→ limitless.ai/developers で取得した Limitless API キー
-
変更を反映するため、Claude Desktop を再起動します
-
動作を確認します:Claude で「最近の録音を表示して」と入力します
その他の MCP クライアント
MCP サーバーの設定については、ご利用のクライアントのドキュメントを参照してください。
🛠️ 利用可能なツール
1. limitless_get_lifelog_by_id
一意の ID で単一の録音を取得します。
パラメーター:
lifelog_id(必須):一意の識別子includeMarkdown:Markdown コンテンツを含めます(デフォルト:true)includeHeadings:見出しを含めます(デフォルト:true)
2. limitless_list_lifelogs_by_date
特定の日付の録音をすべて一覧表示します。
パラメーター:
date(必須):YYYY-MM-DD 形式の日付limit:最大結果数(最大:100)direction:並べ替え順('asc' または 'desc')timezone:IANA タイムゾーンincludeMarkdown:Markdown コンテンツを含めますincludeHeadings:見出しを含めます
3. limitless_list_lifelogs_by_range
日付/時刻の範囲内の録音を一覧表示します。
パラメーター:
start(必須):開始日時end(必須):終了日時limit:最大結果数direction:並べ替え順timezone:IANA タイムゾーンincludeMarkdown:Markdown コンテンツを含めますincludeHeadings:見出しを含めます
4. limitless_list_recent_lifelogs
最新の録音を一覧表示します。
パラメーター:
limit:録音数(デフォルト:10、最大:100)timezone:IANA タイムゾーンincludeMarkdown:Markdown コンテンツを含めますincludeHeadings:見出しを含めます
5. limitless_search_lifelogs
最近の録音からキーワードを検索します。
パラメーター:
search_term(必須):検索するテキストfetch_limit:検索対象とする最近のログ数(デフォルト:20、最大:100)limit:返す最大結果数includeMarkdown:Markdown コンテンツを含めますincludeHeadings:見出しを含めます
🔌 MCP プロトコルの機能
このサーバーは、Limitless データにアクセスして分析する複数の方法を提供するため、MCP プロトコルの5つのコア機能をすべて実装しています。
📁 リソース
ライフログを構造化されたリソースとして参照、アクセスできます。リソースにより、録音をファイルシステムのように扱えるインターフェースが提供されます。
利用可能な URI:
lifelog://recent- 最近の録音を参照lifelog://2024-01-15- 特定の日付の録音を参照lifelog://2024-01-15/abc123- 特定の録音にアクセス
Claude での使用方法:
"Browse my recent recordings"
"Show me resources from January 15th"
"Open lifelog://recent"
📝 プロンプト
よくある分析タスク用の、あらかじめ用意されたプロンプトテンプレートです。各プロンプトは引数を指定してカスタマイズできます。
利用可能なプロンプト:
- daily-summary - 特定の日の録音をすべて要約します
- 引数:
date(必須)
- 引数:
- action-items - 録音からアクションアイテムを抽出します
- 引数:
dateまたはdateRange(任意)
- 引数:
- key-topics - 話し合われた主なトピックを特定します
- 引数:
dateまたはsearchTerm(任意)
- 引数:
- meeting-notes - 録音を構造化された会議メモの形式に整えます
- 引数:
date(必須)
- 引数:
- search-insights - 検索結果のパターンを分析します
- 引数:
searchTerm(必須)
- 引数:
Claude での使用方法:
"Use the daily-summary prompt for yesterday"
"Extract action items from this week"
"Show me key topics I discussed about the project"
🔍 サンプリング
録音の AI によるコンテンツ分析を有効にします。サンプリング機能では、AI がライフログのコンテンツを直接処理、分析できます。
機能:
- 長時間の録音を要約
- 特定の情報を抽出
- パターンや傾向を特定
- 複数の録音からインサイトを生成
- 感情や口調を分析
Claude での使用方法:
"Analyze the tone of my meetings this week"
"Summarize the key decisions from yesterday's recordings"
"Find patterns in how I discuss project timelines"
🔎 検出
サーバーの機能を MCP クライアントに自動的に公開します。これにより、Claude やその他のツールが利用可能な機能を把握できます。
公開される情報:
- サーバー名とバージョン
- 利用可能なツール、リソース、プロンプト
- サポートされる機能と制限事項
- API の機能
⚡ パフォーマンスとキャッシュ
サーバーには、パフォーマンスを最適化するためのインテリジェントなキャッシュシステムが含まれています。
キャッシュ機能:
- LRU(Least Recently Used)による削除戦略
- 設定可能な TTL(Time To Live)
- ライフログと検索結果用の個別キャッシュ
- キャッシュの自動無効化
- キャッシュ統計の追跡
設定(環境変数を使用):
CACHE_MAX_SIZE- キャッシュする項目の最大数(デフォルト:100)CACHE_TTL- キャッシュの有効期間(ミリ秒、デフォルト:300000/5 分)SEARCH_CACHE_MAX_SIZE- 検索キャッシュのサイズ(デフォルト:50)SEARCH_CACHE_TTL- 検索キャッシュの有効期間(デフォルト:180000/3 分)
💡 使用例
Claude Desktop での使用
設定が完了したら、Limitless のデータを自然に操作できます。
"Show me all my recordings from yesterday"
"Search for conversations where I discussed 'project timeline'"
"Get the recording with ID abc123 and summarize the key points"
"List my recordings from last week and identify action items"
"What did I discuss in meetings between Monday and Wednesday?"
プログラムからの使用
import { LimitlessClient } from 'limitless-ai-mcp-server';
const client = new LimitlessClient({
apiKey: process.env.LIMITLESS_API_KEY,
timeout: 120000,
});
// Get recent recordings
const recentLogs = await client.listRecentLifelogs({ limit: 5 });
// Search for specific content
const results = await client.searchLifelogs({
searchTerm: 'project update',
fetchLimit: 50,
});
// Get recordings by date
const todaysLogs = await client.listLifelogsByDate('2024-01-15', {
includeMarkdown: true,
});
🧪 開発
開発環境のセットアップ
# Install dependencies
npm install
# Run in development mode
npm run dev
# Run tests
npm test
# Run linting
npm run lint
# Format code
npm run format
プロジェクト構成
limitless-ai-mcp-server/
├── src/
│ ├── core/ # Core business logic
│ │ └── limitless-client.ts
│ ├── tools/ # MCP tool definitions and handlers
│ │ ├── definitions.ts
│ │ ├── handlers.ts
│ │ └── schemas.ts
│ ├── types/ # TypeScript type definitions
│ │ └── limitless.ts
│ ├── utils/ # Utility functions
│ │ ├── date.ts
│ │ ├── format.ts
│ │ ├── logger.ts
│ │ └── retry.ts
│ └── index.ts # Main server entry point
├── tests/ # Test files
├── examples/ # Usage examples
└── dist/ # Compiled output
テストの実行
# Run all tests
npm test
# Run tests in watch mode
npm run test:watch
# Generate coverage report
npm run test:coverage
🤝 コントリビューション
コントリビューションを歓迎します。以下の手順に従ってください。
- リポジトリをフォークします
- フィーチャーブランチを作成します(
git checkout -b feature/amazing-feature) - 変更をコミットします(
git commit -m 'Add amazing feature') - ブランチにプッシュします(
git push origin feature/amazing-feature) - プルリクエストを作成します
以下を確認してください。
- すべてのテストが成功すること
- コードが既存のスタイルに沿っていること(
npm run lintを実行してください) - 新機能にはテストを追加すること
- 必要に応じてドキュメントを更新すること
🐛 トラブルシューティング
よくある問題
-
「ライフログが見つかりません」
- Limitless Pendant で録音したデータがあることを確認してください
- API キーが有効であることを確認してください
- クエリ対象の日付範囲を確認してください
-
タイムアウトエラー
- タイムアウトを延長します:
export LIMITLESS_TIMEOUT=300000 - リクエストする結果の数を減らします
- インターネット接続を確認してください
- タイムアウトを延長します:
-
認証エラー
- API キーが正しく設定されていることを確認してください
- キーの有効期限が切れていないことを確認してください
- limitless.ai/developers で API キーの権限を確認してください
デバッグモード
詳細情報を確認するには、デバッグログを有効にしてください。
export LOG_LEVEL=DEBUG
Claude Desktop 固有の問題
-
MCP サーバーが表示されない
- 設定ファイルが有効な JSON であることを確認してください(JSON バリデーターで確認してください)
dist/index.jsへのパスが相対パスではなく、絶対パスであることを確認してください- クローン後に
npm run buildを実行したことを確認してください - Claude Desktop を完全に再起動してください
-
「コマンドに失敗しました」エラー
- Node.js 22 以降がインストールされていることを確認してください:
node --version - サーバーがローカルで動作することを確認してください:
LIMITLESS_API_KEY=your-key node dist/index.js - Claude Desktop のログを確認してください:ヘルプ → ログを表示
- Node.js 22 以降がインストールされていることを確認してください:
-
データが返されない
- limitless.ai/developers で API キーが有効であることを確認してください
- Pendant の録音データがあることを確認してください(アプリや拡張機能のデータではありません)
- 録音があると分かっている特定の日付を指定してみてください
Claude Code CLI 固有の問題
-
npx で「MCP サーバーのステータス:失敗」と表示される
nvm を使用している場合に、
npxがグローバルにインストールされたパッケージを確実に見つけられない既知の問題です。解決策:代わりに直接コマンドまたはフルパスを使用してください。
# Instead of: -- npx limitless-ai-mcp-server # Use: -- limitless-ai-mcp-server # Or: -- node ~/.nvm/versions/node/vXX.X.X/lib/node_modules/limitless-ai-mcp-server/dist/index.js -
nvm で正しいパスを見つける
# First, check which Node version you're using: node --version # Then find where the package is installed: npm list -g limitless-ai-mcp-server # The path will be something like: # ~/.nvm/versions/node/v22.0.0/lib/node_modules/limitless-ai-mcp-server
📄 ライセンス
このプロジェクトは MIT ライセンスの下で公開されています。詳細は LICENSE ファイルを参照してください。
🙏 謝辞
- 素晴らしい Pendant と API を提供してくださった Limitless AI
- MCP プロトコルを提供してくださった Anthropic
- このプロジェクトへのすべてのコントリビューター
📞 サポート
- 問題:GitHub Issues
- ディスカッション:GitHub Discussions
- 作者:Eric Buess
注:このプロジェクトは Limitless AI との公式な提携関係はありません。Limitless API 向けの MCP サーバーを独自に実装したものです。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。