Minecraft Remote Official Portal

コーディングでマイクラ世界を動かす。学び方を学ぶ。

hacking, coding, tinkering
「マイクラリモコン」は、コーディングを通じて学び方を学ぶツール。 コーディングってなんなの??という人から、各種言語の習熟者、オープンソース開発の入門者まで、8歳―80歳までの自律的な探究学習を強力に支援します。

一本道のカリキュラムではなく、Scratchによるマイクラ世界へのブロック配置、Pythonなど各種言語での自動建築、マイクラリモコン自体の改造など、いろいろな入口から入れて自由に探索できます。AIアシスト前提の学び/開発も開発者自身が模索中です。

💡 開発チームが考えていること

なぜ、今さら、マイクラをリモコン?

「マイクラをリモコンする」これは、公式のRconに始まり、マイクラアプリの代わりにプロトコルをシミュレートするものまで、様々なアプローチがすでにあるのに、なぜ、今さら「マイクラリモコン」なのか。

  • 真の目的は「学び方を学ぶ」ツールを提供し、初学者の自学自習アプローチ獲得をガイドすることだから。
  • 本物のScratch、本物のPython、Git/GitHub.comを使いたかったから。これらはオープンソース開発につながっているから。
  • その環境に慣れ親しむためのステージ、箱庭として選んだのが、マインクラフトだが、レゴ、Scratch、にも共通する手触り感のある、タンジブルな「ブロック」、これも重要な要素である。

なぜ、今さら、コーディング?? 生成AI時代には無用では?

2026年、生成AIは「マイクラみたいなアプリ」さえ作る。使い捨てアプリが目の前で生まれる今、「アプリを作ったことがある」の価値も、「アプリ」の存在意義さえも揺らいでいる。「ほとんどコードを書いていない」と公言するプログラマーも増えた。さて、コーディングをこれから学ぶ意味、ある?

2017年、コーディングを「コードを触って・変えて・観察して・判断するループの中で、ヒトの創造性を引き出す行為」と捉えた。(「Coding vs. Programming(Scratch Meetup Tokyo, 2017)」、PDF)小さく試し、組み合わせ、分解して直す。ブロック遊びにも似た、この手触りにこそ創造性が宿る。

生成AIの時代に、この解釈はむしろ重みを増している。生成、打ち込みは任せていい。判断は人間が握る。「要求仕様書は満たしています」というだけの使えないアプリが量産されてきたように、元々、コードを書くだけではダメだったのだ。

だから、もちろん、学ぶ意味がある。ただ、学ぶ中身が変わる。消えるのは暗記と打ち込みの労力で、消えないのは判断のための足場としてのコーディングだ。その足場は、目の前のTODOから始まり、ビジョンを越え、ミッションまで続いている。マイクラリモコンは、「手触り感のある試行錯誤」の道具を目指している。

全文を読む

🌍 マルチプレイ可能なアカウントで、マイクラリモコン対応サーバーに接続してみよう!

もちろん、自分で建てたサーバーで使うこともできますが、まずは、マイクラリモコン公式の箱庭サーバーに、持っているマイクラアプリ(=クライアント)で接続してみましょう。年齢によっては、マルチプレイを可能にするために、保護者の方の操作が必要になることがあります。なお、この箱庭(サンドボックス、sb)サーバーは、定期的にリセットするため、ものすごい作品をコツコツ作る、などはやめたほうが良いです。公園の砂場と同じです。コードがあればいつでも再現できる、で行こう!

  • 接続先マインクラフトサーバー
    • サーバー名: sb-beta.mc-remote.com (マイクラリモコン 公式 箱庭サーバー ベータ版)
    • サーバーの種類: Paper(Java、プラグインサーバー)
    • バージョン: 1.21.11(RC移行後は最新版に追従する予定。)
  • Java版クライアント (PC)
    • バージョン: ほぼ、なんでもオッケー。(プラグインViaVersion / ViaBackwards使用。)
    • ポート番号: 25565(デフォルトなので省略可能。)
  • 統合版クライアント(PC / タブレット / スマホ等):
    • バージョン: 自動的に最新版になる。公式アップデート直後は要注意。
    • ポート番号: 25565(デフォルトの19132ではないので注意。)
⚠️ 統合版利用時の注意: マインクラフト統合版の公式大型アップデート直後は、接続用プラグインのGeyser/Floodgateの追従待ちのため、数日間接続できなくなる場合があります。
8歳からのビジュアルコーディング

🎮 Scratchで今すぐ始める

面倒なインストールは一切不要。PC/タブレット/スマホで開いたマイクラと、PC/タブレットのブラウザを使います。ブラウザのScratchで直感的にマイクラの世界を遠隔操作できます。

👉 Web版Scratchエディタ(ベータ版)を開く

🔑 マイクラサーバーとの接続とペアリング

WireScope miniに表示される ペアリングコマンド /mcremote pair NNN-NNN をゲーム内チャットに貼り付け、Enterを押すと認証が完了。コマンド先頭にスペースがあると無効なので注意。

scratch MC connection

マイクラリモコンのブロックの使い方は、Scratchブロック一覧で調べられます。

Scratchのはじめの一歩:

scratch first step

📍 建築原点とは?

マイクラリモコン内の座標は、全て建築原点からの相対計算になります。そのため、建築コードを共有したとき、原点さえずらせば、ピラミッドの横に大寺院を共存させられたり、同じワールドにたくさんの参加者が入った場合にも、独立した自由な建築、あるいは同じ領域でのコラボレーションが可能になります。例えば、上の例のように建築原点(200, 0, 200)で(5, 67, 5)を指定すると、実際には(205, 67, 205)にブロックが置かれます。
オープンソース開発への第一歩

🐍 PythonでのHello, world!

VS Codeなどのエディタでは自動補完でブロックIDなどが入力できる公式Pythonライブラリ。最新マインクラフトの世界へ向けて、自分のアイデアを自由にコード化できます。

まずは、ターミナルを使って簡単にPythonモジュールをインストールしてみましょう。

Pythonモジュール(クライアント/API)のインストール:

uvをインストールしたら、プロジェクトを作ってモジュールを追加します。新プロトコルのリリース候補版はPyPIにあり、版を指定して追加します(版を指定しないと旧プロトコルの安定版が入ります)。

uv init --python 3.13 mc-hello
cd mc-hello
uv add "minecraft-remote-api==2321.0.0rc1"

VS CodeのJupyter Notebookで一行ずつ実行するのもオススメ。手順はminecraft-remote-apiのREADMEへ。

最小コード(hello.py):

from mc_remote.minecraft import Minecraft
# 公式箱庭サーバー(ベータ)に接続
mc = Minecraft.create(address="sb-beta.mc-remote.com", port=25575)

# 建築原点の設定
mc.setBuildOrigin(200, 0, 200)

# チャット送信
mc.postToChat("Hello, Minecraft from Python!")

# プレイヤー位置、視線方向の設定
mc.setPos("overworld", 30, 120, 30)  # (230, 120, 230) に移動
mc.setDirection(-1, -2, -1)

# ブロック設置
# 建築原点からの相対計算で実際は (205, 67, 205) に置かれます。
mc.setBlock(5, 67, 5, "sea_lantern")

🔑 実行とペアリング

uv run hello.py を実行後、ターミナルに表示される /mcremote pair NNN-NNN をゲーム内チャットに貼り付け、Enterを押すと認証が完了します。認証は2時間有効。

🏠 箱庭サーバーで試したら、次は、自分のワールドで使いたい!

自分のPCや、家庭・教室のネットワーク(LAN)で動かすマイクラサーバーでも、箱庭と同じようにScratchやPythonから操作できます。マイクラサーバーとScratchを、1台のPCですべて動かすこともできます。
  1. マイクラサーバーを用意する:PaperサーバーにプラグインMcRemoteを入れて起動し、マイクラアプリで参加します。手順はMcRemoteのREADMEへ。
  2. Scratchで使う:自分のOS用のScratch LANパッケージをダウンロードして起動します。
    👉 Scratch LANパッケージのページへ(Windows/Mac/Linux)
  3. Pythonで使う:Minecraft.create(address=...)の接続先を、マイクラサーバーのPCに変えるだけです(同じPCなら127.0.0.1、ポートは25575のまま)。
  4. 接続とペアリング:箱庭と同じです。表示された/mcremote pair NNN-NNNを、マイクラのチャットに貼り付けます。

📚 Notebook先生に訊いてみよう!

Gemini Notebookを使うと、マイクラリモコンのナレッジベースから、知りたいことを簡単に引き出せます。インストールの手順やサンプルコードを訊くのにも使えます。アクセス時にGoogleアカウントでのログインを求められます。

👉 Notebook先生(Gemini Notebook)を開く

かなり正確に答えてくれますが、特にスケジュールについて、まだ予定のもの、構想中で具体的な予定がないものに関して、実装済み、あるいは予定しているように答える間違いが混じることがあります。詳しくは、答えに示されるソースに当たって確かめるか、Discordでお問い合わせください。

プロジェクトの起源とミッション

先人たちの功績を受け継ぎ、従来の「教育」から「学びの支援」へ。

About the Minecraft Remote Project(先人の功績と起源)

Minecraft Remote(mc-remote / マイクラリモコン)は、マインクラフトを外部からプログラムで遠隔操作するためのオープンソースシステムです。PaperMCサーバー上で動作する専用プラグイン(McRemote)と、利用者のコードを仲介するクライアントAPI(各言語版)から構成されています。

本プロジェクトは、RaspberryJuice(zhuowei氏)、mcpi(Martin O'Hanlon氏)、JuicyraspberryPie(wensheng氏)といった先人たちの先駆的な功績と、コミュニティの英知を受け継ぎ、最新のマインクラフト環境へ向けて再構築したものです。

「私たちは、知識を一方的に注入する従来の『教育(EDUCATION)』ではなく、学習者が自ら探究し創り出す『学びの支援(SUPPORT LEARNING)』を目指しています。この思想は、MITメディアラボ ライフロング・キンダーガーテン(Dr. Mitchel Resnick)の精神に強く影響を受けています。」

先人たちのプロジェクトリファレンス:

The Clear Mission(明確なミッション)

初学者が自学自習アプローチ(Self-Learning Approach)を獲得できるよう支援すること。 単なるプログラミング言語の文法や技術スキルの習得にとどまらず、「自分で課題を発見し、試し、学ぶ姿勢」を育むことを最上位の目的としています。コーディング「を」学ぶ、ではなく、コーディング「で」学ぶ。

(結果的に)獲得される3つの技術スキル

  • コーディングの本質的な概念と技術
  • Git/GitHubを活用した実践的なオープンソース(OSS)開発技術
  • 自分のアイデアを形にし、世界に表現する技術

自立的な学びのモチベーションを保つ仕掛け

  • 魅力的な実験場(Sandbox)として最新版マインクラフトを常に利用可能にする
  • 過去のプロジェクトで培われたコード資産を活用・再利用できるようにする
  • Scratch、Python、Java、TypeScript / JavaScript、C#(Unity)など、幅広い言語と環境へ展開できる
  • マインクラフトの世界にとどまらず、BlenderやHoudini等の3D環境、デジタルと現実を結ぶ入出力、AI技術(コンピュータビジョン・機械学習との連携)へ発展できる

エコシステム・各リポジトリ案内

Explosion
マイクラリモコンを構成するオープンソースリポジトリ群です。

🔌 McRemote

(プラグイン/mc-remoteサーバー)

PaperMCサーバー上で動作する専用プラグイン。JSON-RPC 2.0プロトコルによる高速・安全なmc-remote(マイクラリモコン)サーバーとして動作。

GitHubで見る →

🐱 scratch-editor

(mc-remoteクライアント)

ブラウザで動くWeb版Scratchエディタ(Scratch 3.0 フォーク=改造版)。インストール不要で、IndexedDBによる作品自動保存にも対応。

GitHubで見る →

🐍 minecraft-remote-api

(mc-remoteクライアント)

マイクラリモコンAPIを備えたPythonクライアントパッケージ。ブロックID、エンティティIDなど、IDEでのカタログ補完機能を提供。

GitHubで見る →

🔍 WireScope

(ワイヤースコープ / ライブ画面)

クライアントとサーバーの間を行き来する通信内容(ワイヤメッセージ)をリアルタイムに覗き見できる観察・学習ツール。現在、ScratchやPythonクライアントと連携可能。

WireScope Betaを開く →

☕ minecraft-remote-java

(mc-remoteクライアント)

Java環境からmc-remoteサーバーに接続して制御するためのJavaクライアントライブラリ。

GitHubで見る →

🎮 minecraft_remote_unity

(サーバー/クライアント)

Unityで利用可能なC#サーバー/クライアント。mc-remoteサーバー/クライアントとの相互接続で、Pythonで書いてUnity世界に建築、C#でマイクラ世界に建築、などが可能。(※新プロトコル未対応)

GitHubで見る →

📦 mc-remote-stack

(デプロイツール)

マイクラサーバー・Bridge・Scratch・WireScopeなどの環境について、一括構築・運用を支援する公式パッケージ。

GitHubで見る →

📖 mc-remote-knowledge

(知識データベース)

システム全体のアーキテクチャ、決定ログ(DECISIONS)、プロトコル契約、設計思想を管理する真実の源(SSOT)。LLM支援前提のナレッジベース型開発支援システムの根幹。

GitHubで見る →

📚 API一覧

(プロトコルAPI/Scratchブロック)

マイクラリモコンの公開済みメソッド、パラメーター、応答、エラー応答の一覧。仕様正本から自動生成しています。Scratchのブロック一覧は、Scratchの版ごとに残しています。

API一覧を見る →
Scratchブロック一覧を見る →

開発ロードマップ & 進捗状況

2027年春の教室本番導入に向けた公開ロードマップです。

● 現在地: R3(学べる・教えられる)進行中 / rc1 公開中(箱庭はb10)
  • 2026年8月末
    b6 / Protocol 23.0.0: 看板(Sign)API、ツルハシ叩き(poke)イベント、ブラウザ内自動保存の統合。
  • 2026年9月前半【完了】
    b7 / Protocol 23.1.0: プレイヤーおよびエンティティの方向(direction)操作、落雷(lightning)、WireScope detached ZIP同梱。ホームページ骨格・README近代化(Pass A)。
  • 2026年10月3日【公開】
    b8 / Protocol 23.2.0: エンティティライフサイクル(近くのエンティティの検索、位置と向き、削除)、パーティクルStage 2(色・大きさ、見せる相手)、サウンド(位置とブロックの音)。Pythonの短いimport。Windowsでの導入手順の確認。
  • 2026年10月5日【公開】
    b9 / Protocol 23.2.0: APIフリーズ(初回Stableまで、APIは追加・変更しない)。PythonモジュールをPyPIへ登録(ベータ版は版を指定して取得)。プロトコル定義、WireScope、Bridgeを共通の開発基盤リポジトリ(minecraft-remote-tooling)へ移管。
  • 2026年10月14日【公開】
    b10 / Protocol 23.2.0: 一つのプラグインでPaper 1.21.11と26.3の両方に対応。大きな範囲のブロック設置を、サーバーを止めないよう少しずつ施工。Scratch LANパッケージ(Windows/macOS/Linux用)で、自分のPCや家庭・教室のネットワークでもScratchから操作できるように。
  • 2026年10月19日【公開】
    rc1 / Protocol 23.2.1: 初回Stableのリリース候補(Release Candidate)。APIはb10と同じで、Protocol 23.2.0のサーバー・クライアントともつながる。Scratchのブロック選びで、マイクラ26.3で増えたブロックも日本語の名前で探せるように。Scratch LANパッケージのはじめに.htmlを、OSごとの手順に整理。
  • 2026年11月
    初回 Stable リリース: 安定導入手順と公式サポート版の公開。
  • 2027年春(4月)
    新学年・教室本番導入: 確定したStable環境での教材運用開始。独自Mobやエージェント型建築カリキュラムへの発展。

横断リリースノート & 互換性情報

各コンポーネントの動作確認済みバージョン対応表です。

コンポーネント 最新バージョン/公開サーバー プロトコル マインクラフトバージョン / 備考
McRemote(Plugin、リリース候補) 2321.0.0rc1 23.2.1 Paper 1.21.11 / 26.3(同じJARで両方に対応)
McRemote(Plugin) v1.21.8-1.4.0 旧プロトコル Paper 1.21.11
minecraft-remote-api (Python) 2321.0.0rc1 23.2.1 Python 3.10以上対応。PyPIでリリース候補版を版指定で取得(==2321.0.0rc1)。版指定なしでは旧プロトコルの安定版
scratch-editor (Scratch) 2320.0.0b10(Web版)
2321.0.0rc1(LANパッケージ)
23.2.0
23.2.1
Web版はブラウザ完結(Chrome, Safari, Edge等)で、箱庭の切り替えまでb10。自分のPC・LAN向けのScratch LANパッケージ(Windows/macOS/Linux用ZIP)はLANパッケージのページから
WireScope 2321.0.0rc1 23.2.1 共通パケット観察Webアプリ(minecraft-remote-tooling)
公式箱庭マイクラサーバー(ベータ) sb-beta.mc-remote.com 23.2.0 1.21.11、Java版:TCP25565 / 統合版:UDP25565
公式箱庭マイクラサーバー sb.mc-remote.com 旧プロトコル 1.21.11、Java版:TCP25565 / 統合版:UDP25565
📜 過去のリリース履歴を展開して確認する
  • 2026年10月19日Protocol 23.2.1 (rc1)
    初回Stableのリリース候補。Protocolを23.2.1、配布版を2321.0.0rc1に(APIと通信の中身はb10と同じで、23.2.0のサーバー・クライアントとそのままつながる)。Scratchのブロック選びにマイクラ26.3の日本語の名前を追加。Scratch LANパッケージのはじめに.htmlをOSごとの手順に整理。不具合や気づいたことはフィードバックのフォームへ。
  • 2026年10月14日Protocol 23.2.0 (b10)
    McRemoteを一つのJAR(mc-remote-2320.0.0b10.jar)でPaper 1.21.11と26.3に対応し、tagとJARの名前からMinecraftの版を外した。setBlocksの大きな要求(既定で1要求32768ブロックまで)を複数tickに分けて施工。Scratch LANパッケージ(Scratch、ランチャーと設定画面、WireScopeを同梱したOS別ZIP)を追加。APIの変更はなし。
  • 2026年10月5日Protocol 23.2.0 (b9)
    APIフリーズ。chat.postの成功時の応答をnullに固定し、知らない種類のイベントが届いてもevents.poll全体を失敗させないように統一。PythonモジュールをPyPIへ登録(uv add "minecraft-remote-api==2320.0.0b9")。プロトコル定義・WireScope・Bridgeをminecraft-remote-toolingへ移管。
  • 2026年10月3日Protocol 23.2.0 (b8)
    近くのエンティティの検索(getNearbyEntities)、エンティティの位置と向き・削除(entity.getPose / setPose / remove)、パーティクルの色・大きさと見せる相手(receiver)、サウンド(playSound / playBlockSound)。minecraft:を省いたIDの受け付けを全種類で統一。
  • 2026年9月3日Protocol 23.1.0 (b7)
    プレイヤーおよびエンティティの向き(getDirection / setDirection)の操作、落雷(strikeLightning)、WireScope detached ZIPの同梱。
  • 2026年8月28日Protocol 23.0.0 (b6)
    看板操作(getSign, setSign, updateSignLine)、ツルハシによるブロック叩きイベント(pickaxe_poke)、ブラウザ内自動保存(IndexedDB)の導入。
  • 2026年8月23日Protocol 22.0.0 (b5)
    構造化ブロック値(ブロックIDとブロック状態 state の分離)、空間識別子の Minecraft DimensionKey への統一、高速建築モード(DEBUG, TRACE, FAST)の整備。
  • 2026年8月18日Protocol 21.0.0 (b4)
    建築状態(ワールド+原点)とプレイヤー識別の完全分離(setPlayer 廃止、setWorld / setBuildOrigin 導入)、向きを含むプレイヤー姿勢(getPose / setPose)の追加。
  • 2026年8月7日Protocol 21.0.0 (b3)
    生きたブロック/アイテム/パーティクルカタログの自動取得(catalog.get)と、型補完アーティファクト(mc_constants)の生成機構。
  • 2026年7月11日Protocol 21.0.0 (b2)
    安全なトークン認証およびワンタイム・ペアリング機構(/mcremote pair コマンド)の確立。
  • 2026年7月3日Protocol 21.0.0 (b1)
    通信ワイヤ形式を JSON-RPC 2.0 エンベロープへ全面刷新。多言語クライアント共通の基盤を確定。