Skip to main content
Glama
anuragfolio

figma-jev-console

by anuragfolio

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
JEV_MODENoLocal, local-first or cloud mode for the tie-breaking modellocal
JEV_PORTSNoWebSocket ports for Jev Bridge9340,…,9344
JEV_FINE_TUNENoSet to 'headless' to run a separate 'claude -p' run instead of the channel hand-offchannel
JEV_LOCAL_URLNoLocal Jev-compatible server URLhttp://127.0.0.1:8009
JEV_MODEL_DIRNoWhere the local model is installed<plugin dir>/local-model
JEV_AUTO_APPLYNoMinimum confidence to write a tie-broken edit without review0.6
JEV_PLUGIN_DIRNoWhere the plugin files are kept~/.figma-jev-console/plugin
JEV_MIN_FREE_PCTNoMemory floor for starting or keeping the local model12
TYPESAFE_API_KEYNoOptional cloud Jev key for TypeSafe's cloud Jev
JEV_CHROME_CHANNELNoChrome channel for headless capturechrome
JEV_MODEL_IDLE_MINNoMinutes before the idle local model stops5

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
experimental
{
  "claude/channel": {}
}

Tools

Functions exposed to the LLM to take actions

NameDescription
jev_statusA

Connection status: Jev Bridge plugin in Figma, Jev backend, and the live session (screens, pending reviews).

jev_push_screensA

Push the app's screens into Figma as auto-layout frames and components, then keep them in live two-way sync. The app's dev server must be running. Call this when the user says 'push to Figma'.

jev_sync_nowA

One-click sync: write all queued Figma edits into the code, then refresh every screen in Figma from the code.

jev_list_pendingA

Figma edits that were not written to code automatically (Jev was unsure where they go, or a design token is involved), with the reason for each.

jev_changelogB

Figma changes that need an LLM to finish in code (deletes, moves, reorders, expression-driven variants, anything the rules and Jev could not write), with layer codes, Figma node ids, code hints and a ready prompt.

jev_resolve_pendingA

Decide a pending item: 'apply' writes the best guess, 'reject' drops it, 'element' / 'token' choose the scope for a design-token color, 'llm' hands it to the LLM, 'done' marks it finished after you changed the code yourself (Figma is then redrawn).

jev_sync_logB

Recent Figma → code edits: what changed, which file and line, and whether Jev or a rule decided the location.

jev_locateA

Find the source file and line for a Figma layer code such as @a3.0.2.1.

jev_progressA

During a Fine-tune (sent to you through the figma-jev-console channel): report a step to the designer's Figma panel. Call with done: true when every item is fixed; Figma is then redrawn from the code and the changelog is cleared.

jev_contractA

The CSS ↔ Figma property table the sync supports, and which direction each property syncs.

jev_stop_liveA

Stop the live session: stop watching files and close the headless browser. Figma layers stay.

jev_executeA

Escape hatch: run Figma plugin API code inside the Jev Bridge plugin (async function body with figma in scope; return a JSON-serializable value).

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.6/5.0

Scored across 12 tools

Disambiguation2/5

While each tool has a specific name, several overlap in function and timing: jev_sync_now, jev_push_screens, and jev_resolve_pending all trigger writes to code or Figma, and jev_status, jev_sync_log, jev_progress, jev_changelog, and jev_list_pending all report state, making it hard to select the right one. Descriptions are detailed but the boundaries are blurred.

Naming Consistency5/5

All tool names start with 'jev_' followed by a simple verb (status, sync_now, list_pending, changelog, push_screens, resolve_pending, sync_log, locate, progress, contract, stop_live, execute), following a consistent, predictable pattern. All are lowercase with underscores, no mixing of conventions.

Tool Count5/5

With 12 tools, the set is well-scoped for the Figma-Jev integration console. Each tool addresses a distinct aspect of the workflow (status, sync, pending, changelog, push, resolve, log, locate, progress, contract, stop, execute), and the count is within the ideal 3-15 range, with no redundancy.

Completeness3/5

The set covers core lifecycle operations: status, sync, pending resolution, push, stop, and a progress reporting mechanism. However, there is a notable gap: no explicit tool to start or manage a live session (only stop_live exists), and the fine-tune workflow relies on an external channel rather than a dedicated tool. The escape hatch jev_execute partially mitigates gaps, but the surface feels incomplete for the stated purpose.

Maintenance

ActivityMaintained
ResponsivenessNo issues