Go Process Inspector について
Go Process Inspector(gospy)は、実行中の Go プロセスのゴルーチン状態、メモリ統計、バイナリ情報を調べるツールです。ターミナル UI、HTTP API、MCP エンドポイントを備え、稼働中のプロセスをデバッグ・分析する Go 開発者向けです。
主な機能
- 01ゴルーチンの状態とスケジューリング情報の表示
- 02プロセスのメモリ統計の分析
- 03対話型ターミナル UI
- 04プログラムから利用できる HTTP API
- 05streamableHTTP 方式の MCP エンドポイント
活用シーン
- 01稼働中の Go サービスにおけるゴルーチンの挙動の調査
- 02AI アシスタントから Go プロセスのメモリとランタイム情報を照会
- 03Linux や macOS 上で Go プロセスのリソース使用量を分析
MCP 対応
--enable-mcp を指定して起動すると HTTP エンドポイントで MCP を提供し、goroutines、gomemstats、goruntime、pgrep のツールをクライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Go プロセスインスペクター
実行中の Go プロセスを調査・分析するツールです。ゴルーチンの状態、メモリ統計、バイナリ情報を確認できます。
機能
- ゴルーチンの詳細情報(状態、スケジューリング情報)を表示
- プロセスのメモリ統計を分析
- クロスプラットフォーム対応(Linux と macOS)
- 対話的に調査できるターミナル UI
- プログラムから利用できる HTTP API
- MCP サーバー
インストール
go install github.com/monsterxx03/gospy@latest
使用方法
CLI インターフェース
# Interactive terminal UI
sudo gospy top --pid <pid>
# HTTP API server
sudo gospy serve --port 8974
# Get process summary
sudo gospy summary --pid <pid>
# Get process summary in JSON format
sudo gospy summary --pid <pid> --json
Summary コマンドのオプション
--pid/-p- 対象プロセスの ID(必須)--bin/-b- バイナリファイルへのパス(任意)--json/-j- 結果を JSON 形式で出力
API エンドポイント
GET /goroutines?pid=<pid>- すべてのゴルーチンを一覧表示GET /memstats?pid=<pid>- メモリ統計を取得GET /runtime?pid=<pid>- ランタイムのバージョン情報を取得
MCP サーバー
MCP サーバーは http(streamableHTTP)エンドポイントを提供します。有効にするには、次のようにします。
>>> sudo gospy serve --enable-mcp --port 8974
Starting API server on port 8974
Endpoints:
GET /runtime?pid=<PID> - Get runtime info
GET /goroutines?pid=<PID> - Get goroutines list
GET /memstats?pid=<PID> - Get memory stats
GET /mcp - MCP http endpoint
利用可能な MCP ツール:
goroutines- Go プロセスのゴルーチンをダンプgomemstats- Go プロセスのメモリ統計をダンプgoruntime- Go プロセスのランタイム情報をダンプpgrep- プロセス名から PID を検索
Cursor の設定

ターミナル UI の操作
q- 終了r- データを更新s- top ビューを一時停止/再開/- ゴルーチンを検索/フィルタリング
ターミナル UI のスクリーンショット

ソースからのビルド
git clone https://github.com/monsterxx03/gospy.git
cd gospy
make
要件
- Go 1.20+
- Linux または macOS(Apple Silicon のみ)
- root 権限(メモリへのアクセスに必要)
root 権限
gospy には、次の操作を行うために root 権限が必要です。
- プロセスメモリの読み取り(Linux では /proc//mem)
- macOS での Mach API へのアクセス
sudo を使って実行します。
sudo gospy top --pid <pid>
開発/デバッグでは、次のようにすることをおすすめします。
- まずバイナリをビルドします:
make - sudo で実行します:
sudo ./gospy [command]
クレジット
バージョン 0.7.0 は aider を使って完全に一から書き直されました。コードの 90% 以上は aider が作成しました。さらに、次の支援を受けました。
- DeepSeek(R1 + V3 モデル)- AI コーディングアシスタント
AI の計算コスト合計:約 2 米ドル
ライセンス
MIT - 詳細は LICENSE ファイルをご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。