はじめに
安全運用について: 本記事のファイアウォール設定はローカル連携の検証目的です。不要になったらルール削除・許可元限定を推奨します。
「Figma MCPサーバーよりデスクトップアプリ経由のMCPサーバーの方がより正確に出力できるらしい」という話を聞いて、比較検討しようとした時の話です。
実際にFigma Desktopアプリ経由のMCPサーバーを設定してみたところ、WSL(Windows Subsystem for Linux)環境からWindows OS上で動作しているFigma DesktopアプリのMCPサーバーに接続できない問題に遭遇し、試行錯誤を繰り返した結果、ようやく解決できました。
同じ問題で困っている方の参考になればと思い、この記事を書きます。同じ沼にはまらないように、ぜひ参考にしてください。
環境
- OS: Windows 11
- WSL: WSL2
- Figma Desktop: 最新版
- Cursor: 最新版
- Figma : 複数アカウント所持
何が起きたのか
最初は順調だった...はずだった
まずは.cursor/mcp.json に設定を追加しました。
{
"mcpServers": {
"figma": {
"url": "http://127.0.0.1:3845/mcp"
}
}
}
「よし、これで動くはず!」と思ってCursorを再起動したのですが...
Figmaへ接続できません。
CursorのMCPサーバー一覧を見ても、Figmaが表示されません。おかしいな...と思いながら、Figma Desktopアプリが起動しているか確認。起動してる。ポート3845が開いているか確認。開いてる。
「あれ?なんで接続できないんだろう?」
試行錯誤の始まり
まずは基本的な確認から始めました。
- Figma Desktopアプリを再起動 → 変わらず
- Cursorを再起動 → 変わらず
- 設定ファイルのJSON形式を確認 → 問題なし
- ポート番号を確認 → 3845で合ってる
「もしかして、URLが間違ってる?」と思って、http://127.0.0.1:3845 にしてみたり、http://localhost:3845/mcp にしてみたり...でもダメ。
なのになんでCursorからは接続できないんだ...
気づきの瞬間
ここでようやく気づきました。WSL環境からWindows OS上のサービスに接続する場合、127.0.0.1 ではダメなんじゃないか?
WSLとWindows OSは別のネットワーク空間にあるので、WSLから 127.0.0.1 にアクセスしても、それはWSL自身のローカルホストを指していて、Windows OSのローカルホストには到達しないんですよね。
WindowsマシンのIPアドレスを確認して設定を変更しましたが、まだ接続できませんでした。ファイアウォール設定を確認したところ、ファイアウォールの設定が不完全で、WSLからの接続を許可する設定が正しくできていませんでした。
さらに、複数のFigmaアカウントを保持しており、接続確認していたアカウントがDev modeを持つ組織のアカウントではなかったことも判明しました。
解決方法
全体の手順概要
- Figma DesktopアプリでMCPサーバーを有効化
- WindowsマシンのIPアドレスを確認
-
.cursor/mcp.jsonの設定を変更 - Windows OSのファイアウォール設定
- Dev modeを持つFigmaアカウントでログイン
1. Figma DesktopアプリでMCPサーバーを有効化
確認方法:
- Figma Desktopアプリが起動していることを確認
- アプリが最新版であることを確認(設定→「About」から確認可能)
- Dev modeへ変更後、インスペクトペインからMCPサーバーを有効化
MCPサーバーを有効化すると、ポート3845で起動します。特に設定は不要です。
2. WindowsマシンのIPアドレスを確認
私の環境(WSL2+Cursor+Figma Desktop)では、WSL側の 127.0.0.1 だとWindows側のFigma MCPに到達できませんでした。
Windows PowerShellまたはコマンドプロンプトで実行:
ipconfig
「イーサネット アダプター」または「Wi-Fi アダプター」の「IPv4 アドレス」を確認(例: 192.168.xx.xx)
3. .cursor/mcp.json の設定を変更
ファイルの場所: ~/.cursor/mcp.json または .cursor/mcp.json
{
"mcpServers": {
"figma": {
"url": "http://<YOUR_WINDOWS_IP>:3845/mcp"
}
}
}
重要なポイント:
-
127.0.0.1ではなく、Windowsマシンの実際のIPアドレスを指定 - URLには必ず
/mcpパスを含める(:3845だけでは接続できない) - 設定変更後はCursorを完全に再起動
4. Windows OSのファイアウォール設定
WSLからの通信を許可するため、ポート3845を開放します。
重要: ローカル連携目的のため、プライベートネットワークのみで許可することを推奨します。パブリックネットワーク(カフェWi-Fi等)では開放しないよう注意してください。
コマンドライン(推奨):
管理者権限でPowerShellを開き、以下を実行:
New-NetFirewallRule -DisplayName "Figma MCP Server" -Direction Inbound -LocalPort 3845 -Protocol TCP -Action Allow -Profile Private
GUIでの設定:
- 「設定」→「プライバシーとセキュリティ」→「Windowsセキュリティ」→「ファイアウォールとネットワーク保護」→「詳細設定」
- 「受信の規則」→「新しい規則」
- 「ポート」→「TCP」→「特定のローカル ポート」に
3845を入力 - 「接続を許可する」→**「プライベート」のみチェック**(「パブリック」はチェックしない)→「完了」
注意: 必要に応じて「ドメイン」もチェックできますが、「パブリック」はチェックしないことを推奨します。可能であれば、許可元(RemoteAddress)をローカルサブネット等に限定し、検証が終わったらルールを削除してください。
ルールの削除方法:
- GUI: Windowsセキュリティの詳細設定→「受信の規則」→「Figma MCP Server」を右クリック→「削除」
-
PowerShell: 管理者権限で
Remove-NetFirewallRule -DisplayName "Figma MCP Server"を実行
5. 権限設定
重要: Figma Desktopアプリ経由のMCPサーバーでは、Dev mode権限を持つアカウントのみが接続可能です。Dev mode権限を持たないアカウントでは接続できません。
Dev modeを持つ組織のアカウントでFigma Desktopにログインしている必要があります。
- Figma Desktopアプリを開く
- 右上のプロフィールアイコン→「Switch account」
- Dev modeを持つ組織のアカウントでログイン
- Cursorを再起動
Dev modeの確認: Figma Desktopでファイルを開き、右上に「Dev Mode」ボタンが表示されるか確認
まとめ
WSL環境からWindows OS上のFigma Desktop MCPサーバーに接続できない場合、以下の3点をチェックしてください。
接続できない原因のチェックリスト
-
① IP指定:
.cursor/mcp.jsonで127.0.0.1ではなく、Windowsマシンの実際のIPアドレス(192.168.xx.xx)を指定しているか - ② ファイアウォール設定: ポート3845を開放し、プライベートネットワークのみで許可しているか(パブリックネットワークでは開放しない)
- ③ Figmaアカウント/Dev Mode: Dev modeを持つ組織のアカウントでFigma Desktopにログインしているか
同じ問題に遭遇した方の参考になれば幸いです。
