feat(dt): add Figma MCP integration for DT artifact export#1222
feat(dt): add Figma MCP integration for DT artifact export#1222DigitalMartyn wants to merge 5 commits intomicrosoft:mainfrom
Conversation
Add FigJam board and Figma Design file export capability to the Design Thinking collection using the official Figma MCP server (hosted HTTP at mcp.figma.com). No local server installation or credential files required. New files: - dt-figma-export.prompt.md: Export DT artifacts to FigJam/Design files - figma-export.md: User-facing setup and usage documentation Modified files: - dt-coach.agent.md: Add Export to Figma handoff button - dt-method-next.prompt.md: Add FigJam export mention at milestones - mcp.json: Add figma HTTP server entry - SKILL.md: Add figma to MCP config tables and templates - Collections: Register dt-figma-export prompt in both collections - dt-coach.md: Add Figma export to Next Steps - .cspell.json: Add figjam, whiteboarding, collab to dictionary
|
@microsoft-github-policy-service agree company="Microsoft" |
…-based layout - replace outdated sticky-based persona card with validated shape-based buildPersona() pattern - add 9 category rows with headings-above-rows layout using createShapeWithText - support mixed font ranges for intro block (name, role, body copy) - add behavioural to cspell dictionary 🎨 - Generated by Copilot
- add buildProjectDetails() reusable function for FigJam boards - blue section with field rows (Customer, Project, Sprint, Workstream, Prototype) - positioned at (0, 0) with exercise templates offset below - update workflow step 5 to reference project details placement 🎨 - Generated by Copilot
be43ae7 to
14d3a5f
Compare
rezatnoMsirhC
left a comment
There was a problem hiding this comment.
This looks pretty neat! Thanks for working on this and testing! I'm still learning so hopefully my comments make sense.
| description: 'Export Design Thinking artifacts to a collaborative FigJam board or Figma Design file using the official Figma MCP server - Brought to you by microsoft/hve-core' | ||
| agent: 'DT Coach' | ||
| argument-hint: "project-slug=... [board-title=...] [method=latest] [output-type=figjam]" | ||
| tools: ['read_file', 'figma/*'] |
There was a problem hiding this comment.
I'm not sure if wildcards are supported here. I suspect you can remove figma/* and this will still work as expected as the Figma MCP tools available in the environment will be accessible at runtime anyway. If you want granular figma tool access, I think you can specify entries like figma/get_figjam.
Using Figma Developers: Figma MCP Server > Core server features > Tools and prompts as a reference:
| tools: ['read_file', 'figma/*'] | |
| tools: | |
| - read_file | |
| - figma/whoami | |
| - figma/create_new_file | |
| - figma/use_figma | |
| - figma/get_figjam | |
| - figma/generate_diagram |
| * The user MUST have a Figma account with a Dev or Full seat on a Professional, Organization, or Enterprise plan for sustained usage. Starter plans are limited to 6 tool calls per month. | ||
| * Authentication happens automatically via browser OAuth on first use. No credential files or API keys are required. | ||
|
|
||
| ## Workflow Steps |
There was a problem hiding this comment.
The Figma MCP tools referenced here are not prefaced by figma/, which may result in ambiguity between these Figma MCP tools and those of other MCP servers with the same name. It would probably be best to revise them (e.g. whoami -> figma/whoami).
|
|
||
| If a field is missing from the artifact, omit that row. Do not invent placeholder data. | ||
|
|
||
| 8. Report Results: |
There was a problem hiding this comment.
Is item 8 supposed to follow item 7 in the ## Workflow Steps section way above? The ## Exercise Templates section comes between ## Workflow Steps item 7 and item 8.
|
|
||
| # DT Figma Export | ||
|
|
||
| ## Overview |
There was a problem hiding this comment.
nitpick: It looks like the other design-thinking prompts do not have an ## Overview section before ## Inputs and instead go from H1 title (e.g. # DT Figma Export) to ## Inputs. For consistency I think you can remove ## Overview but keep the overview contents directly under # DT Figma Export and above ## Inputs.
| "figma": { | ||
| "type": "http", | ||
| "url": "https://mcp.figma.com/mcp" | ||
| } |
There was a problem hiding this comment.
#1144 removed .vscode/mcp.json in favor of .vscode/mcp.json.sample which serves as a template that users can opt-in to using as their own local/untracked .vscode/mcp.json as needed. Feel free to keep this as-is in your local workspace, but pull the latest changes so your .vscode/mcp.json isn't tracked in the repo.
| ## Beta Notice | ||
|
|
||
| The `use_figma` write tool is currently in beta and free during the beta period. Figma has indicated it will eventually become a usage-based paid feature. The read-only tools (`get_figjam`, `get_screenshot`, `generate_diagram`) are not affected by this and will continue to work. |
There was a problem hiding this comment.
I wonder if it would be better to have this beta notice in the ## Prerequisites section since figma/use_figma supports all write operations in ## Workflow Steps, and if write operations aren't available, the workflow could essentially break mid-session without prior warning.
Pull Request
Description
Add FigJam board and Figma Design file export capability to the Design Thinking collection using the official Figma MCP server (hosted HTTP at
mcp.figma.com). No local server installation or credential files required.New files:
dt-figma-export.prompt.md--- Export DT artifacts to FigJam/Design filesfigma-export.md--- User-facing setup and usage documentationModified files:
dt-coach.agent.md--- Add Export to Figma handoff buttondt-method-next.prompt.md--- Add FigJam export mention at milestonesmcp.json--- Add figma HTTP server entrySKILL.md--- Add figma to MCP config tables and templatesdt-figma-exportprompt in both collectionsdt-coach.md--- Add Figma export to Next Steps.cspell.json--- Addfigjam,whiteboarding,collabto dictionaryRelated Issue(s)
Replaces the Mural MCP approach from PR #1221. Addresses the blocking supply chain concern by using an official first-party hosted MCP server with no local dependencies.
Type of Change
Code & Documentation:
AI Artifacts:
prompt-builderagent and addressed all feedback.github/prompts/*.prompt.md).github/agents/*.agent.md).github/skills/*/SKILL.md)Sample Prompts
User Request:
Or from the DT Coach agent after completing a synthesis milestone:
Execution Flow:
/dt-figma-exportor DT Coach offers export at milestone completionOutput Artifacts:
Success Indicators:
Testing
Automated Validation (all passing)
npm run lint:mdnpm run spell-checknpm run lint:frontmatternpm run plugin:validatenpm run plugin:generateLive Smoke Test
Connected to Figma MCP and created a test FigJam board with 6 sections and 31 stickies representing M3 Synthesis output. Screenshot verified all sections populated correctly.
Checklist
Required Checks
AI Artifact Contributions
/prompt-analyzeto review contributionprompt-builderreviewRequired Automated Checks
npm run lint:mdnpm run spell-checknpm run lint:frontmatternpm run validate:skillsnpm run lint:md-linksnpm run lint:psnpm run plugin:generateSecurity Considerations
No third-party packages, no local builds, no credential files. Figma MCP is an official hosted HTTP server operated by Figma Inc, listed in the MCP registry. Authentication is browser-based OAuth managed entirely by Figma.
Additional Notes