mcpField
M
mcp-server-analyzer

mcp-server-analyzer

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

mcp-server-analyzer について

mcp-server-analyzerは、Python、JavaScript、TypeScriptのコード品質分析ツールをMCPクライアントに提供します。Lint、フォーマット、型チェック、デッドコード検出、総合評価に対応し、解析コードは呼び出し間で保持されません。

主な機能

  1. 01RuffによるPythonのLintとフォーマット
  2. 02tyによる型チェックと診断
  3. 03Vultureによる未使用コードの検出
  4. 04BiomeによるJS/TSのLintとフォーマット
  5. 05総合分析と品質スコア
  6. 06一時的なインメモリコード解析

活用シーン

  1. 01Pythonのスタイル問題と型エラーの確認
  2. 02未使用のインポートや関数の検出
  3. 03JavaScriptやTypeScriptのLintとフォーマット
  4. 04コード品質の総合レビュー

MCP 対応

MCPサーバーは、ruff-check、ty-check、vulture-scan、biome-check、analyze-codeなどの個別および統合分析ツールを、接続されたMCPクライアントに公開します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"anselmoo-mcp-server-analyzer": {
"command": "uvx",
"args": [
"mcp-server-analyzer"
]
}
}
}
起動コマンドuvx mcp-server-analyzer

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypimcp-server-analyzer0.4.1
ocighcr.io/anselmoo/mcp-server-analyzer:0.4.1

ツール

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

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

詳細

MCP Server Analyzer for Python 🐍🔍

SafeSkill 92/100

CI/CD パイプライン PyPI バージョン Python 3.13+ Docker ライセンス:MIT コードカバレッジ AgentSeal MCP ドキュメント

Ruffによるリンティング、tyによる型チェック、Vultureによるデッドコード検出を用いて、包括的な Python コード分析を提供する強力なModel Context Protocol(MCP)サーバーです。AI アシスタント、IDE、自動コードレビューワークフローに最適です。

🚀 クイックスタート

VS Code との連携(ワンクリックインストール)

手早くインストールするには、以下のワンクリックインストールボタンのいずれかを使用してください……

VS Code に UV でインストール VS Code Insiders に UV でインストール

VS Code に Docker でインストール VS Code Insiders に Docker でインストール

手動でインストールするには、以下の JSON ブロックを VS Code のユーザー設定(JSON)ファイルに追加してください。Ctrl + Shift + Pを押してPreferences: Open User Settings (JSON)と入力すると開けます。

任意で、ワークスペース内の.vscode/mcp.jsonというファイルに追加することもできます。これにより、設定を他のユーザーと共有できます。

mcp.jsonファイルを使用する場合は、mcpキーが必要です。

uvx を使用する場合(推奨):

{
  "mcp": {
    "servers": {
      "analyzer": {
        "command": "uvx",
        "args": ["mcp-server-analyzer"]
      }
    }
  }
}

Docker を使用する場合:

{
  "mcp": {
    "servers": {
      "analyzer": {
        "command": "docker",
        "args": ["run", "-i", "--rm", "ghcr.io/anselmoo/mcp-server-analyzer"]
      }
    }
  }
}
ユニバーサルインストール
# Install with uvx (recommended)
uvx install mcp-server-analyzer

# Install with pip
pip install mcp-server-analyzer

# Run with Docker
docker run ghcr.io/anselmoo/mcp-server-analyzer:latest

# Install from source
git clone https://github.com/anselmoo/mcp-server-analyzer.git
cd mcp-server-analyzer
uv sync --dev
uv run mcp-server-analyzer

📋 機能

  • 🔍 RUFF による分析:自動修正機能を備えた包括的な Python リント
  • 🧠 ty による型チェック:ルールベースの診断機能を備えた高速な Python 型分析
  • 🧹 デッドコード検出:VULTURE で未使用のインポート、関数、変数を検出
  • ⚡ Biome による JS/TS 分析:JavaScript と TypeScript の高速なリントとフォーマット
  • 📊 品質スコアリング:品質指標を用いた統合分析
  • 🚀 FastMCP フレームワーク:高性能な MCP サーバー実装
  • 🐳 Docker 対応:セキュリティ署名に対応したマルチアーキテクチャコンテナ
  • 🔒 セキュア:サプライチェーンセキュリティのため、すべてのリリースに Sigstore で署名

📈 分析例

RUFF のリントプレビュー

包括的なリント分析の例をご覧ください:📋 RUFF 分析プレビュー

VULTURE によるデッドコード検出プレビュー

デッドコード検出機能をご覧ください:🧹 VULTURE 分析プレビュー

🛠️ 利用可能なツール

ツール説明使用例
ruff-checkRUFF で Python コードをリントスタイル違反、潜在的なエラー
ruff-formatRUFF で Python コードをフォーマットコードのフォーマットと一貫性
ruff-check-ciCI/CD に最適化された RUFF 出力GitHub Actions、GitLab CI
ty-checkty で Python コードの型をチェック型安全性、不適切な戻り値
vulture-scanデッドコード検出未使用のインポート、関数、変数
biome-checkBiome で JS/TS コードをリントスタイル違反、潜在的なエラー
biome-formatBiome で JS/TS コードをフォーマットコードのフォーマットと一貫性
analyze-codeRuff + ty + Vulture による統合分析コード品質の包括的な評価

🔧 設定

Claude Desktop

claude_desktop_config.json に追加します:

{
  "mcpServers": {
    "analyzer": {
      "command": "uvx",
      "args": ["mcp-server-analyzer"]
    }
  }
}
Zed

Zed の settings.json に追加します:

"context_servers": {
  "analyzer": {
    "command": "uvx",
    "args": ["mcp-server-analyzer"]
  }
}
Claude Code(プロジェクトレベル)

プロジェクトのルートに .mcp.json を配置します:

{
  "mcpServers": {
    "analyzer": {
      "command": "uvx",
      "args": ["mcp-server-analyzer"]
    }
  }
}

🧪 開発

前提条件
  • Python 3.13+
  • uv(推奨)または pip
  • Node.js 22+(Biome による JS/TS 分析に必要)
  • Docker(任意)
セットアップ
# Clone repository
git clone https://github.com/anselmoo/mcp-server-analyzer.git
cd mcp-server-analyzer

# Install Python dependencies
uv sync --dev

# Install Biome (JS/TS analyzer)
npm ci

# Run tests
uv run pytest

# Run type checks
uv run ty check src tests

# Run pre-commit hooks
uv tool run pre-commit run --all-files

# Build Docker image
docker build -t mcp-server-analyzer .
テスト
# Run all tests
uv run pytest tests/ -v

# Run with coverage
uv run pytest --cov=src/mcp_server_analyzer --cov-report=html

# Test specific functionality
uv run pytest tests/test_server.py::TestAnalyzers::test_ruff_with_sample_code

📊 品質指標

サーバーは次の項目に基づいて品質スコアを算出します:

  • Ruff の問題:スタイル違反、潜在的なバグ、複雑度の指標
  • ty の診断:静的型チェックのエラーと警告
  • デッドコード検出:未使用のインポート、関数、変数
  • 統合スコア:重み付けされた品質評価(0~100)

🔒 セキュリティ

  • 署名付きリリース:Sigstore ですべてのリリースに署名
  • コンテナ署名:Cosign で Docker イメージに署名
  • 信頼された公開:PyPI へのリリースでは GitHub OIDC の信頼された公開を使用
  • 脆弱性スキャン:CI/CD でセキュリティスキャンを自動実行
  • サプライチェーンセキュリティ:SLSA Build Level 3 に準拠
  • セキュリティポリシー:脆弱性の報告については SECURITY.md をご覧ください

🔍 データの取り扱いと透明性

  • メモリ内のみ:ツールに渡されたコードは一時ファイルに書き込まれて分析され、ファイルは直ちに削除されます。呼び出し間でデータが保持されることはありません。
  • ネットワーク通信なし:分析中、サーバーは外部へのネットワーク接続を行いません。
  • テレメトリなし:使用状況データ、分析データ、クラッシュレポートは収集されません。
  • サブプロセスの分離:ruff、ty、vulture は固定の引数リストで実行されます。シェル展開や任意のコマンド実行は行われません。

📚 ドキュメント

🤝 貢献

貢献を歓迎します!詳細については、CONTRIBUTING.md をご覧ください。

  1. リポジトリをフォークします
  2. 機能ブランチを作成します(git checkout -b feature/amazing-feature)
  3. Conventional Commits を使用して変更をコミットします
  4. ブランチにプッシュします(git push origin feature/amazing-feature)
  5. プルリクエストを作成します

📝 ライセンス

このプロジェクトは MIT ライセンスのもとで公開されています。詳細については、LICENSE ファイルをご覧ください。

🙏 謝辞


より良い Python コード品質のために ❤️ を込めて作成

コメント

MCP は初めてですか?

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

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