🚀 ソースマップパーサー
このプロジェクトは、WebAssemblyベースのソースマップパーサーを実装しています。JavaScriptエラースタックトレースをソースコードにマッピングし、関連するコンテキスト情報を抽出することができます。開発者は、JavaScriptエラースタックトレースを簡単にソースコードにマッピングし、問題を迅速に特定して解決することができます。このドキュメントは、開発者がこのツールをよりよく理解して使用するのを支援することを目的としています。
🚀 クイックスタート
MCP統合
⚠️ 重要提示
Node.js 18+ のバージョンが必要です。
オプション1:NPXを通じて直接実行
npx -y source-map-parser-mcp@latest
オプション2:ビルド成果物をダウンロード GitHubリリースページから該当バージョンのビルド成果物をダウンロードし、以下を実行します。
node dist/main.es.js
実行時パラメータ設定
以下の環境変数を使用して、パーサーの動作を設定します。
SOURCE_MAP_PARSER_API_KEY: 認証に使用するAPIキー。SOURCE_MAP_PARSER_CACHE_ENABLED: キャッシュ機能を制御します(値はtrueまたはfalse)。
✨ 主な機能
- WebAssemblyモジュールの初期化:JavaScriptラッパーを通じてWebAssemblyモジュールをロードしてインスタンス化し、正常に動作するようにします。
- ソースマップ内容の取得:指定されたURLからソースマップファイルの内容を取得し、必要な検証を行います。
- スタック情報の解析:エラースタックトレース内の各位置情報を、ターゲットソースコードの位置に解析します。
📚 ドキュメント
MCPサービスツールの説明
コアインターフェース
parse_stack: 与えられたエラースタック文字列解析し、解析結果を返します。
例の使い方
const result = await parse_stack({
stack: /* エラースタック文字列 */,
options: {
cacheProvider: /* キャッシュプロバイダーインスタンス */,
sourceMapCacheEnabled: true,
apiKey: 'your_api_key'
}
});
高度な使い方
カスタム解析ロジック
parser.tsファイルで、getSourceTokenメソッドをオーバーライドすることで、カスタムの解析ロジックを実装できます。
ツールインターフェースの拡張
server.tsファイルで、server.toolメソッドを使用して、新しいツールインターフェースを追加できます。
よくある質問
- WebAssemblyモジュールの初期化に失敗しました 以下のエラーメッセージが表示された場合:
parser init error: WebAssembly.instantiate(): invalid value type 'externref', enable with --experimental-wasm-reftypes @+86
以下の手順で問題を解決してください。
- Node.jsバージョンを確認する:Node.jsのバージョンが18以上であることを確認してください。18未満の場合は、Node.jsをアップグレードしてください。
- 実験的フラグを有効にする:Node.js 18+を使用しているが、依然として問題が発生する場合は、以下のコマンドでツールを起動してください。
npx --node-arg=--experimental-wasm-reftypes -y source-map-parser-mcp@latest
ローカル開発ガイド
依存関係のインストール
Node.jsとnpmがインストールされていることを確認し、以下のコマンドを実行してプロジェクトの依存関係をインストールします。
npm install
MCPサービスのリンク
以下のコマンドを実行してMCPサーバーを起動します。
npx tsx src/main.ts
注意事項
⚠️ 重要提示
提供するソースマップファイルのアドレスがアクセス可能で、形式が正しいことを確認してください。
💡 使用建议
解析中にネットワークエラーやファイル形式エラーなどの問題が発生する可能性があるため、呼び出し時に適切なエラー処理を行うことをお勧めします。
貢献ガイド
IssuesとPull Requestsを通じてこのプロジェクトに貢献することを歓迎します。
📄 ライセンス
このプロジェクトはMITライセンスを使用しています。詳細については、LICENSEファイルを参照してください。









