io.github.dannykeane/figmanage
The Figma workspace layer for agents. 85 tools for seats, offboarding, file cleanup, and org admin.
Versions
0.1.2latest1.4.2Tools 106
set_permissions Change access level for a user on a file, project, or team. Looks up the role by user_id.
share Share a file or project with someone by email. Sends an invite.
revoke_access Remove a user's access to a file, project, or team. The user loses access immediately.
setup_status Check figmanage authentication status and get setup instructions. Always call this before using any other tool.
setup_extract_cookies Extract Figma session cookies from Chrome. On macOS this triggers a Keychain prompt. IMPORTANT: Before calling, confirm the user is logged into figma.com in Chrome and knows a system prompt may appear.
setup_select_account Select a Figma account and validate the session. Call after setup_extract_cookies.
setup_save_pat Validate and save a Figma Personal Access Token. Completes setup and activates all tools.
create_file Create a new Figma file in a project. Supports design, whiteboard, slides, sites.
rename_file Rename a Figma file.
move_files Move one or more files to a different project. Supports batch moves.
duplicate_file Duplicate a file. Optionally specify a destination project.
trash_files Move files to trash (recoverable via restore_files). Supports batch operations.
restore_files Restore files from trash.
favorite_file Add or remove a file from your sidebar favorites.
set_link_access Set link access on a file. Use "inherit" to remove custom access and fall back to project/team defaults.
offboard_user Audit and optionally execute user offboarding. Default: read-only audit. With execute=true: transfers file ownership, revokes access, downgrades seat. With remove_from_org=true: also permanently removes the user from the org (cannot be undone).
list_role_requests List pending file access requests. These come through the notification system.
onboard_user Invite a user to teams and optionally share files and set seat type. Sends invite emails per team.
quarterly_design_ops_report Org-wide design ops snapshot: seat utilization, team activity, billing, and library adoption over a given period.
approve_role_request Approve a pending file access request by notification ID.
library_usage Team-level library adoption metrics. Shows how a published library is used across teams.
component_usage Per-file component usage analytics. Shows which files use a specific component.
list_comments List comments on a file. Returns comment text, author, timestamps, and thread structure.
post_comment Post a comment on a file. Optionally pin to a specific node or reply to an existing comment.
delete_comment Permanently delete a comment. For top-level comments, the entire thread is removed. Cannot be undone.
list_comment_reactions List emoji reactions on a comment.
resolve_comment Resolve or unresolve a comment thread. Resolved comments are collapsed in the Figma UI.
edit_comment Edit the text of an existing comment.
add_comment_reaction Add an emoji reaction to a comment.
remove_comment_reaction Remove your emoji reaction from a comment.
list_dev_resources List dev resources (links, annotations) attached to nodes in a file. Used in Dev Mode.
create_dev_resource Create a dev resource (link/annotation) on a node. Visible in Dev Mode.
delete_dev_resource Delete a dev resource from a file.
list_org_libraries List all design system libraries in the org with sharing group info.
get_file Read file contents as a node tree. Use depth to limit response size (full trees can be very large). depth=1 returns pages only. To read a branch, use the branch file key from list_branches.
get_nodes Read specific nodes from a file. Returns the full node tree for each ID including type, name, layout properties, fills, strokes, and children.
list_versions List version history for a file. Returns named snapshots and auto-saves.
create_version Create a named version (checkpoint) in a file\'s history.
list_webhooks List webhook subscriptions for a team. Returns webhook IDs, endpoints, event types, and status.
create_webhook Create a webhook subscription for a team.
update_webhook Update a webhook's endpoint, event type, passcode, description, or status (ACTIVE/PAUSED).
webhook_requests List recent webhook delivery attempts (last 7 days). Shows payload, response status, and errors.
delete_webhook Permanently delete a webhook. The webhook stops receiving events immediately. Cannot be undone.
create_project Create a new project (folder) in a team.
rename_project Rename a project (folder).
move_project Move a project to a different team.
trash_project Move a project and all its files to trash. Recoverable via restore_project.
restore_project Restore a project from trash.
set_project_description Set or update a project description.
get_permissions See who has access to a file, project, or team. Returns users with roles and role IDs.
deny_role_request Decline a pending file access request by notification ID.
file_summary Quick overview of a Figma file. Fetches pages, components, styles, and comment counts in parallel.
workspace_overview Full org snapshot: teams with member/project counts, seat breakdown, and billing summary.
open_comments Aggregated unresolved comments across all files in a project. Checks up to 20 files.
cleanup_stale_files Find files not modified in N days and optionally trash them. dry_run=true (default) previews which files would be trashed without trashing them. Set dry_run=false to execute.
organize_project Move files into a target project in a single batch. Files are moved (not copied) from their current project.
setup_project_structure Create multiple projects in a team from a plan. Optionally set descriptions.
seat_optimization Identify inactive paid seats and calculate potential savings. Fetches members, seat counts, and pricing to find optimization opportunities.
permission_audit Audit permissions across a team or project. Scans files for external editors, open link access, and elevated individual permissions.
branch_cleanup Find stale branches across a project and optionally archive them. dry_run=true (default) previews which branches would be archived. Archives move branch files to trash (recoverable).
create_team Create a new team in the org.
rename_team Rename an existing team.
delete_team Permanently delete a team and all its projects/files. This cannot be undone. All team members lose access.
add_team_member Add a member to a team by email. Level: 100 = can view (default), 300 = can edit, 999 = admin.
remove_team_member Remove a member from a team. The user loses access to all team projects and files.
list_admins List org admins with their permission levels, seat status, and email validation state.
list_org_teams List all teams in the org with member counts, project counts, and access levels.
seat_usage Seat usage breakdown: permission counts, seat types, activity recency, and account type distribution.
list_team_members List members of a team with name, email, avatar, last active date, and role.
billing_overview Org billing data including invoice history, status, amounts, and billing periods.
list_invoices List open and upcoming invoices for the org.
org_domains Org domain configuration and SSO/SAML settings.
ai_credit_usage AI credit usage summary. Provide a team_id and the plan is resolved automatically, or pass plan_id directly.
export_members Trigger async CSV export of all org members. The CSV is sent to the admin email on file.
list_org_members List org members with seat type, permission, email, and last active date. Use to resolve org_user_ids for change_seat.
contract_rates Seat pricing for the org. Returns monthly cost per seat type (expert, developer, collaborator).
change_seat Change a user\'s seat type. Accepts user_id or email to identify the user. Upgrades affect billing.
activity_log Org audit log. Shows who did what, when. Filter by email for per-user activity. Supports date ranges and cursor pagination.
list_payments List paid invoices / payment history for the org.
remove_org_member Permanently remove a member from the org. They lose all access to teams, projects, files, and apps. Cannot be undone. Requires confirm: true.
create_user_group Create a user group. Provide team_id to auto-resolve the billing plan, or pass plan_id directly.
delete_user_groups Delete one or more user groups by ID.
add_user_group_members Add members to a user group by email.
remove_user_group_members Remove members from a user group by user ID.
list_local_variables List local variables and variable collections in a file. Requires Enterprise plan.
list_published_variables List published variables from a library file. Requires Enterprise plan.
update_variables Bulk create, update, or delete variables, collections, modes, and mode values. Requires Enterprise plan. Each operation object needs an action field (CREATE, UPDATE, or DELETE). Deletions are immediate and cannot be undone -- list variables first to verify IDs.
check_auth Check authentication status for both PAT and session cookie
list_orgs List all Figma workspaces (orgs) you belong to. Shows which is currently active.
switch_org Switch active workspace. Accepts org name (fuzzy match) or ID. Use list_orgs to see available workspaces.
list_teams List all teams you belong to. Returns team IDs and names.
list_projects List projects (folders) in a team. Returns project IDs, names.
list_files List files in a project. Returns file keys, names, last modified, editor type. Supports pagination.
list_recent_files List your recently viewed/edited files across all teams.
search Search for files across the workspace. Requires org context for results.
get_file_info Get metadata for a file: name, last modified, editor type, project, team.
list_favorites List your starred/favorited files. Note: may not work on all account types.
list_file_components List components published from a file. Only published library components appear -- local unpublished components are not included.
list_file_styles List styles published from a file. Only published library styles appear.
list_team_components List published components across a team. Pass the cursor from the response\'s pagination object to fetch the next page.
list_team_styles List published styles across a team. Pass the cursor from the response\'s pagination object to fetch the next page.
list_branches List branches of a file.
create_branch Create a branch from a file.
delete_branch Archive (delete) a branch. Uses the branch file key from list_branches.
export_nodes Export specific nodes from a file as images. Returns temporary URLs (valid ~14 days).
get_image_fills Get download URLs for all images used as fills in a file.
Permissions 4
network medium filesystem low shell high env_vars low