Skip to main content
Glama
MCNeteaseDevs

NetEase ModSDK MCP Server

🎮 NetEase ModSDK MCP Server

Model Context Protocol Server for 我的世界中国版(网易)ModSDK 開発

AI プログラミングアシスタントに ModSDK 3.9 / BE 1.21.120 のバージョン管理された開発ガイド、公式ドキュメント検索、成果物生成と統一検証を提供します。実行時は完全にオフラインで、リポジトリ内のスナップショットのみを読み取ります。


✨ コア機能

機能

説明

🔍 スマートドキュメント検索

あいまい検索、キャメルケース分割、中国語検索に対応。API インターフェース & イベントドキュメントを網羅

📝 コード生成

网易規範に準拠した Mod プロジェクト、Server/Client System、カスタムアイテム/ブロック/エンティティを自動生成

🔧 ツール & 武器生成

剣、ツルハシ、斧、シャベル、クワ、弓、防具、食料、投擲可能アイテムの JSON をワンクリック生成

📋 レシピ & 戦利品テーブル

順序付き/順序なしクラフトレシピ、かまどレシピ、戦利品テーブル、スポーンルールを生成

🔬 コードレビュー

Python 2.7 互換性、クライアント/サーバー混在、パフォーマンスのアンチパターンを検出

🧭 バージョン管理ガイド

目標、領域、エンド側に応じてルールを選択し、ソースレベルと 3.9 エビデンス境界を返却

📚 コンポーネント百科

アイテム/ブロック/エンティティ/网易独自コンポーネントの使い方と設定を照会

⚡ ベストプラクティス

バージョン管理されたレジストリから公式ルール、MCP 戦略、境界付きのエンジニアリング提案を投影


Related MCP server: MCP SpecNavigator

🚀 クイックスタート

前提条件

  • Python ≥ 3.10

  • pip(Python パッケージマネージャー)

1. 依存関係のインストール

cd "<PROJECT_ROOT>"
pip install -r requirements.txt

2. AI クライアントを選択して設定

共通説明:すべてのクライアントで start_mcp.py の絶対パスを使用して起動します。cwd パラメータは不要で、互換性が最も高くなります。 以下の例の <PROJECT_ROOT> を、お使いのマシンのプロジェクトルートディレクトリに置き換えてください。

設定ファイルを編集します:

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "modsdk-mcp-server": {
      "command": "python",
      "args": ["<PROJECT_ROOT>/start_mcp.py"]
    }
  }
}

保存後、Claude Desktop を再起動します。

Claude Code は cwd パラメータをサポートしていないため、start_mcp.py の絶対パスを使用してください:

claude mcp add "modsdk-mcp-server" -- python "<PROJECT_ROOT>/start_mcp.py"

または ~/.claude/settings.json を手動で編集します:

{
  "mcpServers": {
    "modsdk-mcp-server": {
      "command": "python",
      "args": ["<PROJECT_ROOT>/start_mcp.py"]
    }
  }
}

プロジェクトルートに .cursor/mcp.json(Cursor)または .vscode/mcp.json(VS Code)を作成します:

{
  "servers": {
    "modsdk-mcp-server": {
      "command": "python",
      "args": ["<PROJECT_ROOT>/start_mcp.py"]
    }
  }
}

⚠️ よくある問題(VS Code / Cursor)

VS Code または Cursor で MCP を起動する際に、以下のエラーが発生する場合:

Error: tool parameters array type must have items

原因:

MCP ツールのパラメータスキーマにおいて、一部のフィールドが "type": "array" と宣言されているものの、"items" フィールドが提供されていません。

JSON Schema 仕様によれば、すべての配列型は "items" を定義する必要があります。定義しない場合、厳格な検証環境(VS Code / Cursor など)でエラーが発生します。

解決方法:

該当ツールのパラメータ定義を修正します。例:

❌ 誤った書き方:

{
  "type": "array"
}

✅ 正しい書き方:

{
  "type": "array",
  "items": {
    "type": "object"
  }
}

SSE サービスを起動します:

python "<PROJECT_ROOT>/start_mcp.py" --sse
# 默认监听 http://0.0.0.0:8000

クライアントで設定します:

{
  "mcpServers": {
    "modsdk-mcp-server": {
      "transport": "sse",
      "url": "http://localhost:8000/sse"
    }
  }
}

3. 接続の確認

AI アシスタントに以下のテスト指示を入力します:

搜索 GetEngineCompFactory 的用法

API ドキュメントの内容が返ってきたら、MCP Server は正常に接続されています。


📖 MCP ツール一覧

ドキュメント照会

ツール

説明

search_docs

ドキュメントを検索(あいまい一致、キャメルケース分割、中国語に対応)

search_api

構造化された API/イベントインデックスを検索

get_api_detail

同名のマルチエンド API/イベントのシグネチャ、備考、サンプル、ソースメタデータを読み取り

get_document

指定ドキュメントの完全な内容を取得

get_document_section

ドキュメントの指定セクションを取得

get_document_structure

ドキュメントの目次構造を取得

list_documents

利用可能なすべてのドキュメントを一覧表示

reload_documents

ドキュメントインデックスを再読み込み

get_development_guidance

目標、領域、エンド側、バージョンに応じて最も関連性の高いルールと検証提案を返却

コード生成

ツール

説明

generate_mod_project

完全な Mod プロジェクトテンプレートを生成(エントリ、サーバー、クライアントを含む)

generate_server_system

サーバーシステムコードを生成

generate_client_system

クライアントシステムコードを生成

generate_event_listener

イベントリスナーコードを生成

generate_custom_command

カスタムコマンドコードを生成

generate_custom_item

カスタムアイテムコードと JSON を生成

generate_custom_block

カスタムブロックコードと JSON を生成

JSON 生成

ツール

説明

generate_item_json

アイテム JSON を生成(ビヘイビアパック + リソースパック)

generate_block_json

ブロック JSON を生成

generate_recipe_json

クラフトレシピ JSON を生成(順序付き/順序なし/かまど)

generate_entity_json

エンティティ JSON を生成(ビヘイビアパック + リソースパック)

generate_loot_table_json

戦利品テーブル JSON を生成

generate_spawn_rules_json

スポーンルール JSON を生成

ツール & 武器のワンクリック生成

ツール

説明

generate_sword_json

カスタム剣(ダメージ、耐久、エンチャント、修復)

generate_pickaxe_json

カスタムツルハシ(採掘速度、耐久)

generate_axe_json

カスタム斧(ダメージ、採掘速度)

generate_shovel_json

カスタムシャベル

generate_hoe_json

カスタムクワ

generate_bow_json

カスタム弓(チャージ時間、耐久)

generate_food_json

カスタム食料(満腹度、隠し満腹度、ポーション効果)

generate_armor_json

カスタム防具(防具値、スロット)

generate_throwable_json

カスタム投擲可能アイテム

コードレビュー & ベストプラクティス

ツール

説明

review_code

明示的に渡された Python/JSON 成果物を一元的にレビュー

get_best_practices

レジストリルールの旧インターフェース互換投影を取得

search_components

基岩版コンポーネントを検索

get_component_details

コンポーネントの詳細情報を取得

list_components

利用可能なすべてのコンポーネントを一覧表示

get_architecture_pattern

コアアーキテクチャサンプルを取得し検証


📂 プロジェクト構造

ModSDK MCP Server/
├── modsdk_mcp/                     # MCP Server 核心模块
│   ├── __init__.py                 # 包标识
│   ├── __main__.py                 # python -m 入口
│   ├── server.py                   # MCP Server 主程序(工具注册、请求处理)
│   ├── docs_reader.py              # 文档读取与搜索引擎
│   ├── standards.py                # 严格加载版本化规范注册表
│   ├── guidance.py                 # 规则筛选与稳定 guidance JSON
│   ├── validation.py               # Python/JSON 统一产物校验
│   ├── knowledge_base.py           # 组件知识库 & 最佳实践兼容投影
│   └── templates.py                # 代码模板 & JSON 生成器
├── docs/                           # ModSDK 官方文档(Markdown)
│   ├── 接口/                       #   API 接口文档
│   ├── 事件/                       #   事件文档
│   ├── 枚举值/                     #   枚举值文档
│   └── 更新信息/                   #   版本更新日志
├── standard/registry/              # 唯一规范源、版本配置与白名单快照
├── skills/                         # 兼容说明;不作为运行时规范源
├── start_mcp.py                    # Agent专用启动入口
├── .mcp.json                       # MCP 配置
├── requirements.txt                # Python 依赖
├── Dockerfile                      # Docker 镜像配置
├── docker-compose.yml              # Docker Compose 配置
├── DEPLOYMENT.md                   # 详细部署指南
└── README.md                       # 本文件

⚙️ 環境変数

変数名

説明

デフォルト値

MODSDK_DOCS_PATH

ModSDK ドキュメントディレクトリのパス

./docs

MCP_HOST

SSE モードのリッスンアドレス

0.0.0.0

MCP_PORT

SSE モードのリッスンポート

8000


🎯 組み込みコード規範

MCP Server のジェネレーターは、構造認識型の検証を一元的に通過します。確定的に証明可能な重大な違反と、プロジェクトが明示的に禁止する文字列プレフィックスのみがブロックされます。パフォーマンス、JSON UI、ライフサイクルのエンジニアリング提案はデフォルトで警告または手動確認となります。

規範

説明

クライアント/サーバー分離

ServerSystem は clientApi の import を禁止、その逆も同様

Python 2.7 互換

実際の u/U/ur/ru 文字列プレフィックスおよび Python 3 専用構文を禁止、ファイルに UTF-8 宣言を含める

正確な import ホワイトリスト

リポジトリ内の 456 項目の公式スナップショットを使用。プロジェクトモジュールは明示的に宣言する必要あり

コンテキストパフォーマンス警告

ループ、Tick、高頻度イベントのコンテキストが十分な場合にのみ、スパム、重複作成、レート制限を警告

ポイントツーポイント通信

NotifyToClient を優先し、BroadcastToAllClient は慎重に使用

JSON フォーマットバージョン

基本アイテム 1.10;ブロックは legacy_1_10、scalar_1_16、modern_1_19_20 をサポート

standard/registry/ が唯一の規範ソースです。get_development_guidance を優先して使用してください。get_best_practices は互換性のための投影のみを保持します。


📝 使用例

Mod プロジェクトの生成

帮我创建一个名为"传送系统"的 Mod,ID 为 teleport_sys,功能是让玩家通过命令传送到指定位置

カスタムダイヤモンドの剣を生成

帮我生成一把自定义钻石剑,命名空间 mymod,ID 为 diamond_blade,攻击力 10,耐久 500

コードレビュー

帮我审查这段代码:

def OnTick(self):
    import mod.server.extraServerApi as serverApi
    comp = serverApi.GetEngineCompFactory().CreatePos(self.playerId)
    pos = comp.GetPos()

コンポーネントの使い方を照会

搜索 minecraft:food 组件的详细用法

Related MCP Connectors

Related MCP Servers