Configure Figma MCP for OpenCode in one step A developer tool called Ivar reduces Figma MCP configuration across multiple repositories to a single step, storing one MCP server definition in an ivar.json manifest that syncs into every agent session. Because Figma rejects OpenCode's dynamic client registration identity, Ivar runs its own OAuth authorization-code flow with PKCE and installs credentials directly into OpenCode's MCP auth store, keeping secrets local while persisting non-secret OAuth metadata in the manifest. Adding the Figma MCP to a single repository takes five steps. Keeping it updated across five repositories takes twenty-five — and when authentication breaks, everything stops. With ivar , that maintenance drops to zero steps. You configured the Figma MCP in your harness, and your agent started reading designs. Great. Now do it across every other repository your product touches, and keep credentials in sync across tools and environments. Here is what the manual process looks like in practice: If you manage three repositories that share a design system, you are maintaining three separate copies of the same MCP configuration. Change the configuration in one and the other two are stale. Forget one and half your sessions have no Figma access. Ivar's Hall carries a single source of truth for every MCP server your workflow needs. When you run ivar sync , the harness materialises the configuration into each session's view directory — the same directory where your agent reads its instructions, finds its repos, and runs its tools. The Figma MCP server is defined once in ivar.json : json title="ivar.json" { "$schema": " https://ivar.run/schema/4.json https://ivar.run/schema/4.json ", "name": "acme", "providers": { "available": "opencode" , "default": "opencode" }, "mcp": { "name": "figma", "type": "http", "url": " https://mcp.figma.com/mcp https://mcp.figma.com/mcp " } , "repos": , "integration": { "via": "local", "strategy": "squash" }, "version": 4 } ivar mcp auth figma --provider opencode handles the entire authentication flow. Because Figma rejects OpenCode's dynamic client registration DCR identity, Ivar uses its internal OAuth flow rather than delegating the browser step to opencode mcp auth . Ivar performs prerequisite client preregistration when needed, runs an authorization-code flow with PKCE, persists non-secret metadata in ivar.json while keeping secret tokens local, and installs/verifies the provider credentials directly in OpenCode's MCP auth store. After authenticating, ivar.json can record generated OAuth metadata: json title="ivar.json generated fragment " { "mcp": { "name": "figma", "type": "http", "url": "https://mcp.figma.com/mcp", "oauth": { "client id": "