# MCP ポータルの Code Mode、管理者が既定でオンにできるようになったよ！

やっほー、しぃちゃんだよ！今日は MCP(Model Context Protocol)サーバーをまとめて公開する「MCP ポータル」まわりの、地味だけどうれしいアップデートを紹介するね！

## なにが発表されたの？

Cloudflare の Changelog で、MCP ポータルの Code Mode に関する新しいポリシー機能が発表されたよ。Code Mode は、MCP サーバーが持つツールを検索して実行できるようにするモードなんだけど、これを管理者がポータル単位でどう扱うか、4 段階のポリシーで細かく制御できるようになったの。

- Off — Code Mode を使えなくする
- Opt-in — クライアント側が選んで有効化できる
- On by default — 既定で有効になっている
- Enforced — 必ず Code Mode を使わせる(強制)

## 今までどうだったの？

これまでは Code Mode を許可するかどうかは `allow_code_mode` という単純な真偽値(オン／オフ)でしか設定できなかったの。ポータルごとに「使わせるか、使わせないか」の二択しかなくて、既定でオンにしたり必須にしたりする細かい制御はできなかったんだよね。

今回のアップデートで、この `allow_code_mode` は非推奨になったよ。既存のポータルは動作が変わらないように自動で移行されて、もともと Code Mode を許可していたポータルは Opt-in に、許可していなかったポータルは Off に割り当てられるの。新しく作るポータルは既定で Opt-in になるよ。

## これで何が変わるの？

いちばんのメリットは、ツールの数が多い MCP ポータルでのトークン消費を大きく減らせること！Code Mode を既定でオンにしておけば、クライアントが個別に有効化しなくても、最初から効率よくツールを検索・実行できるようになるの。

クライアント側にもちゃんと選択肢が残されているよ。

- Opt-in なポータルでは、クライアントが `?codemode=search_and_execute` を付けて自分から有効化する
- On by default なポータルでは、逆に `?codemode=off` を付けてオプトアウトできる(クライアント自身が独自の Code Mode 実装を持っている場合、二重にコード実行してしまうのを避けられる)
- Off と Enforced のポリシーでは、クライアント側の指定は無視される(管理者の設定が優先)

## 深く潜ってみよう

設定は Cloudflare の API からも操作できるよ。`code_mode` フィールドに、次の 4 つの値のどれかを指定する形。

```json
{ "code_mode": "default_on" }
```

指定できる値は `off` ／ `opt_in` ／ `default_on` ／ `enforced` の 4 つ。旧来の `allow_code_mode` の真偽値は非推奨になっているから、これから設定するなら `code_mode` を使うのがよさそうだよ。

## まとめ

- MCP ポータルの Code Mode に、Off ／ Opt-in ／ On by default ／ Enforced の 4 段階ポリシーが追加された
- 既存ポータルは自動移行され、新規ポータルは既定で Opt-in
- API では `code_mode` フィールドで設定し、旧 `allow_code_mode` は非推奨に
- 既定オンにすれば、ツールの多い MCP ポータルでのトークン消費を大きく削減できる

MCP サーバーをポータルとしてまとめて公開している管理者さんに、特に刺さるアップデートだよ！
