mcpField
G
Gopls   Go Language Server

Gopls Go Language Server

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

Gopls Go Language Server について

MCP-GOPLSは、Go開発者やMCP対応ツール向けにgoplsをMCPサーバーとして提供します。コードのナビゲーション、診断、検索、編集機能を備え、コードはClaude Codeが生成し人手でレビューしていないと説明されています。

主な機能

  1. 01定義への移動と参照検索
  2. 02診断とシンボルのホバー情報取得
  3. 03シンボル検索とインターフェース実装の検索
  4. 04ファイル横断のシンボル名変更
  5. 05コード整形とインポート整理

活用シーン

  1. 01Goプロジェクトのコード移動
  2. 02コンパイルエラーと静的解析結果の確認
  3. 03シンボル名変更とインポート整理
  4. 04インターフェース実装とファイル内シンボル一覧の確認

MCP 対応

goplsのコードナビゲーション、診断、検索、名前変更、整形機能をツールとしてMCPクライアントに提供します。

設定

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

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

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

リポジトリ

ツール

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

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

詳細

MCP-GOPLS

gopls をラップして Go 言語サーバー機能を提供する MCP(Model Context Protocol)サーバーです。

⚠️ 警告:このプロジェクト全体は、人によるコードレビューを受けずに Claude Code によって生成されました。テストに合格し、機能しているように見えますが、本番環境で使用する場合は細心の注意を払ってください。コードはセキュリティ、パフォーマンス、エッジケースについて監査されていません。AI が生成した設計ドキュメントについては、DESIGN.md を参照してください。

機能

gopls の言語サーバー機能はすべて実装されています。

  • GoToDefinition:シンボルの定義へ移動します
  • FindReferences:シンボルへのすべての参照を検索します
  • GetDiagnostics:コンパイルエラーと静的解析の結果を取得します
  • Hover:カーソル位置にあるシンボルの情報を取得します
  • SearchSymbol:ワークスペース全体からシンボルを検索します(部分一致に対応)
  • RenameSymbol:ワークスペース全体のシンボル名を変更します(変更をファイルに直接適用します)
  • FindImplementers:インターフェースを実装するすべての型を検索します
  • ListDocumentSymbols:ファイル内で定義されたシンボルのアウトラインを取得します
  • FormatCode:gofmt の標準に従って Go ソースコードを整形します(変更をファイルに適用します)
  • OrganizeImports:import 文を整理します(import をグループ化して並べ替え、変更をファイルに適用します)

インストール

go install github.com/yantrio/mcp-gopls/cmd/mcp-gopls@latest

Claude との連携

Claude Code
  1. mcp-gopls をインストールします:

    go install github.com/yantrio/mcp-gopls/cmd/mcp-gopls@latest
    
  2. Claude Code に追加します:

    claude mcp add mcp-gopls "$(which mcp-gopls)"
    
  3. Claude Code を再起動します:

    claude restart
    
  4. インストールを確認します:

    claude mcp list
    
Claude Desktop
  1. mcp-gopls をインストールします(上記と同じ手順です)

  2. 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
  3. mcpServers セクションに以下を追加します:

    {
      "mcpServers": {
        "mcp-gopls": {
          "command": "mcp-gopls",
          "args": []
        }
      }
    }
    

    または、カスタムワークスペースを指定します:

    {
      "mcpServers": {
        "mcp-gopls": {
          "command": "mcp-gopls",
          "args": ["-workspace", "/path/to/your/go/project"]
        }
      }
    }
    
  4. Claude Desktop を再起動します

使い方

# Run with default settings (uses gopls in PATH and current directory as workspace)
mcp-gopls

# Specify gopls path and workspace
mcp-gopls -gopls /path/to/gopls -workspace /path/to/project

# Using environment variables
export GOPLS_PATH=/path/to/gopls
export MCP_GOPLS_WORKSPACE=/path/to/project
mcp-gopls

要件

  • Go 1.24.3+
  • gopls(Go 言語サーバー)
gopls のインストール
go install golang.org/x/tools/gopls@latest

開発

# Clone the repository
git clone https://github.com/yantrio/mcp-gopls
cd mcp-gopls

# Build the project
go build ./cmd/mcp-gopls

# Run tests
go test ./...

ライセンス

MIT

コメント

MCP は初めてですか?

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

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