mcp-pyright について
mcp-pyrightは、Python開発者やMCP対応クライアント向けにPyrightの言語サーバー機能を提供します。型チェック、コードナビゲーション、補完、フォーマットを利用できます。
主な機能
- 01Pythonの型チェック
- 02ホバーによる型情報の表示
- 03コード補完
- 04定義と参照の検索
- 05ドキュメントシンボルと整形
活用シーン
- 01Pythonコードの型エラー確認
- 02編集中のシンボル型の確認
- 03コード内の定義と参照の検索
- 04MCPクライアント経由のPythonコード整形
MCP 対応
MCPサーバーとして、Pyrightの言語サーバー機能をツールとしてMCP対応クライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
7掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| code | any | いいえ | Python コード文字列(file_path とは同時に指定できません)。 |
| file_path | any | いいえ | Python ファイルのパス(code とは同時に指定できません)。 |
| python_path | any | いいえ | 省略可能な Python インタープリターのパス。 |
| type_checker_mode | string | いいえ | 型チェックモード:「basic」、「strict」、「overload」(デフォルト:「basic」)。 |
詳細
mcp-pyright
Pyright の言語サーバー機能を公開する MCP サーバー
mcp-name: io.github.daedalus/mcp-pyright
インストール
pip install mcp-pyright
使い方
この MCP サーバーは、MCP 互換のあらゆるクライアントで使用できます。以下のツールを公開します。
型チェック
from mcp_pyright import mcp
# Run type checking
result = check_types(code="x: int = 'hello'")
ホバー情報の取得
# Get type information at position
result = get_hover(code="x: int = 1", position=0)
補完候補の取得
# Get code completions
result = get_completions(code="prin", position=4)
定義の取得
# Find definition location
result = get_definition(code="def foo(): pass\nfoo()", position=15)
参照の検索
# Find all references
result = find_references(code="x = 1\nx", position=5)
ドキュメントシンボルの取得
# Get all symbols in document
result = get_document_symbols(code="class Foo: pass\ndef bar(): pass")
コードのフォーマット
# Format Python code
result = format_code(code="x=1\ny=2")
開発
git clone https://github.com/daedalus/mcp-pyright.git
cd mcp-pyright
pip install -e ".[test]"
# run tests
pytest
# format
ruff format src/ tests/
# lint
ruff check src/ tests/
# type check
mypy src/
ライセンス
MIT
コメント
Markdown 対応
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。