designport について
designportは、デザインファイルの読み取りやコメント操作を必要とするワークフロー向けのFigma REST APIクライアントで、MCPサーバーとコマンドラインツールを備えています。ファイル、ノード、画像、スタイル、コンポーネント、プロジェクト、コメントの一部操作に対応します。
主な機能
- 01ファイルと指定ノードの取得
- 02ノードの画像レンダリング
- 03画像塗り、スタイル、コンポーネントの一覧表示
- 04チームプロジェクトとプロジェクトファイルの閲覧
- 05ファイルコメントの読み取りと投稿
活用シーン
- 01Figmaファイルや選択ノードの確認
- 02ノード画像とファイルスタイルの取得
- 03チームプロジェクト内のファイル閲覧
- 04ファイルコメントの読み取りや投稿
MCP 対応
MCPサーバーは、ファイルやノードのデータ、画像、スタイル、コンポーネント、プロジェクト、コメントを操作するFigma REST APIツールを公開します。Figmaの個人アクセストークンを使用します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
10掲載時のツール一覧 · 1 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| depth | number | いいえ | 任意:返すドキュメントツリーの深さをレベル数で指定します。 |
| version | string | いいえ | 任意:取得するファイルの特定のバージョンを、そのバージョン ID で指定します。 |
| file_key | string | はい | 取得するファイルを識別する Figma ファイルキー。 |
詳細
designport
designportは、MCP サーバーと小規模なCLIとしてパッケージ化された、Figma REST API互換のクライアントです。同じ公開アップストリームAPI(https://api.figma.com/v1)向けの独立したクライアントであり、FigmaがホストするOAuthリモートMCPサーバーの複製ではありません。また、そのサーバーが提供するOAuthツール群(デザインコンテキスト、スクリーンショット、メタデータ、変数定義、code-connect、FigJam、デザインシステムのルール)も再現していません。
このサブセットでは、デザインファイルの読み取りに対応しています。ファイルまたは特定のノードの取得、ノードの画像へのレンダリング、画像塗りつぶし・スタイル・コンポーネントの一覧表示、チームのプロジェクトやプロジェクトファイルの参照、ファイルのコメントの読み取りや投稿ができます。
認証にはFigmaの個人用アクセストークンを使用し、X-Figma-Tokenヘッダーで送信します。サーバーを起動する前にFIGMA_PERSONAL_ACCESS_TOKENを設定してください。設定されていない状態で呼び出すと、この変数名を示すエラーが発生します。APIベースURLはFIGMA_API_BASEで上書きできます。
インストール
npx @reneturcios/designport get_file <file_key>
docker run -i ghcr.io/cloudcorprecords/designport
CLI
designport get_file <file_key> --depth 2
designport get_file_nodes <file_key> 1:2,3:4
designport get_images <file_key> 1:2 --format png --scale 2
designport get_file_styles <file_key>
designport get_team_projects <team_id>
designport list_project_files <project_id>
designport post_comment <file_key> "Looks good"
designport --version
終了コード:成功は0、APIエラーは1、使用方法のエラーは2です。
MCP サーバー
npx -y @reneturcios/designport mcp
{
"mcpServers": {
"designport": {
"command": "npx",
"args": ["-y", "@reneturcios/designport", "mcp"],
"env": { "FIGMA_PERSONAL_ACCESS_TOKEN": "your-token" }
}
}
}
ツール
| ツール | 入力 | Figmaエンドポイント |
|---|---|---|
get_file | file_key、version?、depth? | GET /files/{key} |
get_file_nodes | file_key、node_ids、depth?、version? | GET /files/{key}/nodes |
get_images | file_key、node_ids、format?、scale? | GET /images/{key} |
get_image_fills | file_key | GET /files/{key}/images |
get_file_styles | file_key | GET /files/{key}/styles |
get_file_components | file_key | GET /files/{key}/components |
get_team_projects | team_id | GET /teams/{id}/projects |
list_project_files | project_id | GET /projects/{id}/files |
get_comments | file_key | GET /files/{key}/comments |
post_comment | file_key、message、client_meta? | POST /files/{key}/comments |
node_idsは、APIのidsパラメーターとして送信される、ノードIDをカンマで区切った文字列です。post_commentの省略可能なclient_metaは、JSONエンコードされたオブジェクトを含む文字列です。たとえば'{"x":10,"y":20}'のように指定します。これは解析され、APIのclient_metaオブジェクトとして送信されます。文字列にすることで、ツールのスキーマをシンプルに保てます。
このサブセットの対象外:変数API、開発リソース、ライブラリアセットと検索、Webhook、アクティビティログ、決済機能。
開発
npm install
npm run build
npm test
テストはすべてfake-fetchフィクスチャ上で実行されます。ネットワークも実際のトークンも使用しません。
ライセンス
MIT — LICENSEを参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。