langfuse について
langfuseは、Langfuseのトレースとオブザベーションを読み取り専用で調べるMCPサーバーです。ネストしたデータを絞り込んで分析でき、モデルの使用量、コスト、レイテンシも確認できます。大きなフィールドは一時ファイルに保存し、検索用の参照を示します。
主な機能
- 01メタデータによるトレース絞り込み
- 02ネストしたトレースとスコアの確認
- 03種類やモデルによるオブザベーション絞り込み
- 04オブザベーションの入力と出力の取得
- 05大きなフィールドの一時ファイル保存
- 06読み取り専用アクセス
活用シーン
- 01トレース詳細を使ったLLMパイプラインのデバッグ
- 02モデルのコストとレイテンシの分析
- 03大きなプロンプトや生成結果の検索
MCP 対応
Langfuseのトレースとオブザベーションを一覧・取得するツールと、`langfuse://config` リソースをMCPクライアントに公開します。読み取り専用のインターフェースでトレースデータを分析できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y langfuse-observability-mcp-serverLANGFUSE_SECRET_KEYシークレットLangfuse secret key for authentication.LANGFUSE_PUBLIC_KEYシークレットLangfuse public key for authentication.LANGFUSE_BASE_URLLangfuse API base URL.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
4掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| name | string | いいえ | トレース名でフィルターします(完全一致)。 |
| page | number | いいえ | ページ番号(1 から開始)。デフォルト:1。 |
| tags | array | いいえ | 指定したすべてのタグを含むトレースに絞り込みます。例:["production", "important"]。 |
| limit | number | いいえ | 1 ページあたりのトレース数(1-100)。デフォルト:10。値を小さくするとレスポンスのサイズを抑えられます。 |
| userId | string | いいえ | トレースに関連付けられたユーザー ID でフィルターします。 |
| orderBy | string | いいえ | "field.direction" 形式の並べ替え順です。フィールド:id、timestamp、name、userId、release、version、public、bookmarked、sessionId。方向:asc、desc。例:"timestamp.desc"。 |
| release | string | いいえ | release バージョン文字列でフィルターします。 |
| version | string | いいえ | トレースのバージョン文字列でフィルターします。 |
| sessionId | string | いいえ | セッション ID でフィルターします。 |
| environment | array | いいえ | 環境でフィルターします。例:["production", "staging"]。 |
| toTimestamp | string | いいえ | この ISO 8601 日時より前に作成されたトレースのみを含めます。例:"2025-02-01T00:00:00Z"。 |
| fromTimestamp | string | いいえ | この ISO 8601 日時以降に作成されたトレースのみを含めます。例:"2025-01-01T00:00:00Z"。 |
詳細
Langfuse MCP サーバー
Langfuse の LLM トレースとオブザベーションを読み取り専用で分析するための MCP サーバーです。エージェントがトレースデータを詳しく調査し、LLM パイプラインをデバッグし、コストとレイテンシーを分析できるように設計されています。
主な機能
- 名前、ユーザー、セッション、タグ、タイムスタンプ、環境でトレースを閲覧・フィルタリング
- すべてのネストされたオブザベーションとスコアを含む、トレースの詳細全体を確認
- タイプ(GENERATION、SPAN、EVENT)、モデル、レベルなどでオブザベーションを一覧表示・フィルタリング
- 大きなペイロード(1000 文字超)を
/tmpファイルに自動で切り詰め、grep で検索しやすい参照を付与 - 読み取り専用 — 書き込み操作はなく、データを変更するリスクなしで安全に使用可能
機能
ツール
| ツール | 説明 |
|---|---|
get_traces | フィルタリングとページネーションを使用してトレースを一覧表示します。最小限の概要を返します(I/O フィールドなし)。 |
get_trace_detail | ID でトレース全体を取得します。オブザベーション、スコア、入力/出力、メタデータを含みます。 |
get_observations | traceId、タイプ、レベルなどでフィルタリングしてオブザベーションを一覧表示します。最小限の概要を返します。 |
get_observation | ID でオブザベーション全体を取得します。入力、出力、モデルパラメーター、使用量、コストの詳細を含みます。 |
リソース
| リソース | 説明 |
|---|---|
langfuse://config | サーバーの設定とステータス(デバッグ用) |
大きなペイロードの処理
トレースとオブザベーションのデータには、非常に大きな入力/出力フィールド(完全なプロンプト、生成結果など)が含まれることがよくあります。このサーバーは次の処理を自動で行います。
- 1000 文字を超える文字列フィールドを切り詰めます
- 全文を
/tmp/langfuse_*.txtファイルに保存します - 切り詰めた出力にファイルパスを含めます
エージェントは grep を使ってこれらのファイル内を検索できるため、ペイロード全体をコンテキストに読み込まずに、特定の内容を探せます。
設定
環境変数
| 変数 | 必須 | 説明 | デフォルト |
|---|---|---|---|
LANGFUSE_SECRET_KEY | はい | Langfuse のシークレットキー(sk-lf-...) | - |
LANGFUSE_PUBLIC_KEY | はい | Langfuse の公開キー(pk-lf-...) | - |
LANGFUSE_BASE_URL | いいえ | Langfuse API のベース URL | https://cloud.langfuse.com |
Claude Desktop の設定
macOS:~/Library/Application Support/Claude/claude_desktop_config.json
Windows:%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"langfuse": {
"command": "npx",
"args": ["-y", "langfuse-observability-mcp-server"],
"env": {
"LANGFUSE_SECRET_KEY": "sk-lf-your-secret-key",
"LANGFUSE_PUBLIC_KEY": "pk-lf-your-public-key",
"LANGFUSE_BASE_URL": "https://us.cloud.langfuse.com"
}
}
}
}
開発
# Install dependencies
npm run install-all
# Build
npm run build
# Development mode
npm run dev
# Run functional tests
npm test
# Run integration tests
npm run test:integration
# Run manual tests (requires .env with real credentials)
npm run test:manual
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。