Figma Context MCP
Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.
作者による説明(英語の原文)
Compares a mobile app screen (Android or iOS Simulator) with its Figma design and suggests fixes.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
FIGMA_TOKEN, DRIFTCHECK_OUTPUT, DRIFTCHECK_EXPORTS「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"driftcheck": {
"command": "dnx",
"args": [
"Driftcheck",
"--yes"
],
"env": {
"FIGMA_TOKEN": "your-value",
"DRIFTCHECK_OUTPUT": "your-value",
"DRIFTCHECK_EXPORTS": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add driftcheck --env FIGMA_TOKEN=your-value --env DRIFTCHECK_OUTPUT=your-value --env DRIFTCHECK_EXPORTS=your-value -- dnx Driftcheck --yes動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"driftcheck": {
"command": "dnx",
"args": [
"Driftcheck",
"--yes"
],
"env": {
"FIGMA_TOKEN": "your-value",
"DRIFTCHECK_OUTPUT": "your-value",
"DRIFTCHECK_EXPORTS": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"driftcheck": {
"type": "stdio",
"command": "dnx",
"args": [
"Driftcheck",
"--yes"
],
"env": {
"FIGMA_TOKEN": "your-value",
"DRIFTCHECK_OUTPUT": "your-value",
"DRIFTCHECK_EXPORTS": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
DRIFTCHECK_OUTPUT envDRIFTCHECK_EXPORTS envこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント wilsonvargas で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
入力が必要なもの:FIGMA_TOKEN
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.1.1)がレジストリに届いたのは10 日前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンに.NETも必要です。
同じカテゴリには:Figma Context MCP, Claude Real Video, Figma MCP Server
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.
Let any LLM watch a video locally — and search everything it has ever watched.
The Figma MCP server brings Figma design context directly into your AI workflow.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
Driftcheck
Catch UI drift before your users do.
Your AI agent compares the app on the emulator with its Figma design, then fixes the differences.
Open the interactive report → · Design: Paylo kit by Marvilo (CC BY 4.0)
Driftcheck is a local MCP server. It captures the screen of an Android device or the iOS Simulator, compares it 1:1 with the Figma frame and gives your agent what it needs to close the gap:
Margin, android:layout_marginTop, Modifier.padding, .frame, EdgeInsets…It works with real-world design kits, where layers are called Frame or Text, and without a Figma token through the Driftcheck Figma plugin.
You need the .NET 10 SDK, plus adb for Android or Xcode for the iOS Simulator. Install Driftcheck in one click:
VS Code asks for your Figma token; leave it empty to use the Figma plugin instead. In Cursor, add the token to FIGMA_TOKEN in the server's configuration afterwards.
Or add it to any MCP client by hand; dotnet dnx downloads it from NuGet the first time:
{
"mcpServers": { "driftcheck": { "command": "dotnet", "args": ["dnx", "Driftcheck", "--yes"], "env": { "FIGMA_TOKEN": " " } } } }
With Claude Code:
claude mcp add driftcheck -e FIGMA_TOKEN=<your Figma token> -- dotnet dnx Driftcheck --yes
Then run your app and ask your agent:
Compare the app on the emulator with https://www.figma.com/design/…?node-id=… and fix the differences.
compare_screen answers with a report the agent can act on (excerpt from the demo):
**Fidelity: 75 %** — 15 of 20 elements as in Figma
| Element | Property | Figma | App |
|---|---|---|---|
| Nice to meet you | height | 31.5 | 25.5 |
| Text "Sign up with Google" | x | 131.9 | 125 |
| Shape "Sign up" | background | #DBC6F8 | #BAD1BB |
FontFamily="Inter", FontSize="32", CharacterSpacingBackgroundColor="#9E56FF" (it renders as #DBC6F8 in the design: the layer or a container has opacity)
Along with it come report.html (the interactive report above: slider, opacity, diff and side by side), side_by_side.png and diff.png.
| Device | How it reads the screen |
|---|---|
| Android emulator or device | adb: screencap + uiautomator dump (the AutomationId is the resource-id) |
| iOS Simulator (macOS) | simctl + an XCUITest helper that reads the accessibility tree (the AutomationId is the accessibilityIdentifier) |
Fix suggestions are written for .NET MAUI, Android views, Jetpack Compose, UIKit, SwiftUI and Flutter, or in plain terms if you don't pass a framework. The comparison itself doesn't depend on the framework: it works from what's on the screen.
| Tool | Use |
|---|---|
list_devices | Connected Android devices and booted iOS simulators |
get_design_specs | Sizes, colors, texts and fonts of the frame (before writing the UI code) |
capture_screen | Capture + app elements with their AutomationId |
compare_screen | Full design vs. app comparison: fidelity, differences, how to fix them and report.html |
import_design | Imports a .driftcheck.json from the Figma plugin that ended up outside Downloads |
Driftcheck downloads the frame once and keeps it in a local cache, recomputes Figma's auto layout, and matches layers to app elements by AutomationId, by visible text or by position. Texts are compared by their visible glyphs rather than their boxes, non-text layers are found in the screenshot by how they look, and a device slightly wider or narrower than the frame is handled by anchoring each element where it fits best. The full walkthrough is in How Driftcheck compares.
Figma limits how many calls a token can make, and on some seat types the quota is very low: once it runs out, it responds 429 with waits of days. That's why:
refresh=true to get_design_specs or compare_screen to download a frame that changed in Figma.429, the error says how long to wait.tools/figma-export-plugin exports the frame (JSON + 2x render) to a .driftcheck.json file without using the REST API. If it lands in Downloads, Driftcheck picks it up on its own from the frame link; if it lands in another folder, import it with import_design. See the plugin README.adb (detected from ANDROID_HOME, ANDROID_SDK_ROOT or the default paths on Windows and macOS)FIGMA_TOKEN environment variable with a Figma Personal Access Token (scope *File content: Read-only*), or the Figma plugin to work without the APIDRIFTCHECK_OUTPUT to change the output folder (default: driftcheck in the temp folder)DRIFTCHECK_EXPORTS to change where plugin exports are looked up (default: Downloads)get_design_specs provides it as a reference.git clone https://github.com/wilsonvargas/Driftcheck.git
cd Driftcheck dotnet build src/Driftcheck.Mcp
The .mcp.json at the root registers the server for MCP clients that read it when opening this folder. To use it from another project, add the server to your client's MCP configuration:
{
"mcpServers": { "driftcheck": { "command": "dotnet", "args": [" /src/Driftcheck.Mcp/bin/Debug/net10.0/Driftcheck.Mcp.dll"] } } }
src/Driftcheck.Mcp — MCP servertools/ios-accessibility-helper — UI test that dumps the iOS Simulator accessibility tree (copied next to the server on build)tools/figma-export-plugin — Figma plugin that exports a frame without the REST APIsamples/PayloMaui — MAUI test app with screens from the Paylo kit by Marvilo (CC BY 4.0) For the iOS Simulator: dotnet build -f net10.0-ios -p:TargetFrameworks=net10.0-ios (limiting TargetFrameworks avoids requiring the Mac Catalyst workload), then xcrun simctl install booted bin/Debug/net10.0-ios/iossimulator-arm64/PayloMaui.app and xcrun simctl launch booted com.companyname.paylomaui. The Xcode version must be the one the iOS workload asks for; if several are installed, pick it with DEVELOPER_DIR.samples/PayloNative — the same sign-up screen with native Android views (Java, no MAUI or AndroidX), to check that the comparison doesn't depend on MAUI. ./build.ps1 builds it with the SDK tools (no Gradle) and installs it on the emulatorsamples/PayloIos — the same screen with native iOS views (UIKit in Swift, no MAUI or storyboard). ./build.sh builds it with swiftc (no Xcode project) and installs it on the booted simulatortests/Driftcheck.Tests — comparer tests with synthetic screensdocs — the detailed comparison walkthrough and the demo report published on GitHub PagesTo compare the sample apps, open the Paylo kit in the Figma
冒頭だけを表示しています。続きはリポジトリで読めます