mcpField
G
Go Process Inspector

Go Process Inspector

ローカル
github.com/monsterxx03開発ツール9772 週間前に更新

Go Process Inspector について

Go Process Inspector(gospy)は、実行中の Go プロセスのゴルーチン状態、メモリ統計、バイナリ情報を調べるツールです。ターミナル UI、HTTP API、MCP エンドポイントを備え、稼働中のプロセスをデバッグ・分析する Go 開発者向けです。

主な機能

  1. 01ゴルーチンの状態とスケジューリング情報の表示
  2. 02プロセスのメモリ統計の分析
  3. 03対話型ターミナル UI
  4. 04プログラムから利用できる HTTP API
  5. 05streamableHTTP 方式の MCP エンドポイント

活用シーン

  1. 01稼働中の Go サービスにおけるゴルーチンの挙動の調査
  2. 02AI アシスタントから Go プロセスのメモリとランタイム情報を照会
  3. 03Linux や macOS 上で Go プロセスのリソース使用量を分析

MCP 対応

--enable-mcp を指定して起動すると HTTP エンドポイントで MCP を提供し、goroutines、gomemstats、goruntime、pgrep のツールをクライアントに公開します。

設定

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

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Go プロセスインスペクター

Go Report Card License Install MCP Server

実行中の 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 の設定

README の画像

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

ターミナル 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>

開発/デバッグでは、次のようにすることをおすすめします。

  1. まずバイナリをビルドします:make
  2. sudo で実行します:sudo ./gospy [command]

クレジット

バージョン 0.7.0 は aider を使って完全に一から書き直されました。コードの 90% 以上は aider が作成しました。さらに、次の支援を受けました。

  • DeepSeek(R1 + V3 モデル)- AI コーディングアシスタント

AI の計算コスト合計:約 2 米ドル

ライセンス

MIT - 詳細は LICENSE ファイルをご覧ください。

コメント

MCP は初めてですか?

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

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