Hermes Figma Prompt Hub MCP Server
Enables management of structured prompt assets from Figma, including listing, validating, and exporting prompts via the Model Context Protocol.
README
Hermes Figma Prompt Hub
Figma-to-MCP prompt management for Hermes workflows.
Hermes Figma Prompt Hub is an open-source scaffold for designing, versioning, validating, and eventually serving structured prompt assets from Figma into Hermes-compatible MCP workflows.
The project keeps Figma-specific integration work outside the Hermes core repository while giving teams a clear place to build prompt tooling, validation, importer logic, examples, and automation.
Status
This repository is currently an integration scaffold.
- Ready: prompt schema, example prompt, validation scripts, Figma layer contract, CI, contributor automation, sponsorship docs.
- In progress: Figma frame importer and MCP server implementation.
- Not ready yet: production Figma sync, full MCP tool server, package release.
What It Provides
- A structured JSON prompt format for system, developer, user template, variables, guardrails, tools, output format, examples, changelog, and eval checks.
- A Figma layer naming contract for frames named
PROMPT/<id>. - Validation scripts for prompts, schema consistency, prompt catalog generation, and Figma contract alignment.
- Prompt pattern analysis and prompt security audit reports.
- GitHub automation for CI, code review, contributor onboarding, issue health, prompt catalog updates, and collaboration scouting.
- Documentation and issue templates for contributors, sponsors, and maintainers.
Use Cases
- Design prompts visually in Figma and map layers into structured prompt JSON.
- Maintain prompt versions with guardrails, examples, output contracts, and eval checks.
- Prepare prompt assets for Hermes or MCP-compatible tools.
- Build a shared prompt hub for design, product, and engineering workflows.
- Invite collaborators around Figma API, MCP, prompt evaluation, docs, and automation.
Quickstart
git clone https://github.com/jozrftamson/hermes-figma-prompt-hub.git
cd hermes-figma-prompt-hub
python3 -m venv .venv
. .venv/bin/activate
pip install -r requirements.txt
python scripts/validate_repo.py
Validate one prompt:
python scripts/validate_prompt.py prompts/raw/nous-central-v1.json
Regenerate the prompt catalog:
python scripts/generate_prompt_catalog.py
Create a scaffold in another directory:
python install/scaffold.py /path/to/figma-hermes-prompt-hub
Prompt Format
Prompt files live under prompts/raw/*.json and must match prompts/schema/prompt.schema.json.
Core fields:
id,version,status,category,tagssystem,developer,user_templatevariables,context_sources,toolsguardrails,constraints,style_rulesoutput_formatfew_shotschangelogeval.must_include,eval.must_not_include,eval.checks
Example:
{
"id": "nous-central-v1",
"version": "0.2.0",
"status": "active",
"category": "general-assistant",
"variables": ["context", "task", "format"],
"output_format": {
"type": "json",
"instructions": "Return valid JSON with summary, reasoning_notes and next_actions."
},
"guardrails": ["Keine erfundenen Fakten", "Bei Unsicherheit klar markieren"],
"eval": {
"must_include": ["summary", "next_actions"],
"must_not_include": ["Great question", "As an AI"],
"checks": [
{
"name": "valid_json_output",
"type": "json_schema"
}
]
}
}
See the full example at prompts/raw/nous-central-v1.json.
Figma Contract
Create Figma frames named PROMPT/<id>. Text layers should use the naming contract in prompts/figma-layer-contract.txt.
Current layer names:
00_system
01_developer
02_user_template
03_output_format
04_tool_policy
05_context_source_<name>
10_guardrail_<n>
11_constraint_<n>
12_style_rule_<n>
20_example_in_<n>
21_example_out_<n>
22_example_note_<n>
30_variable_<name>
40_test_case_<n>
50_expected_output_<n>
80_changelog_<version>
90_eval_must_include_<n>
91_eval_must_not_include_<n>
92_eval_check_<n>
Fixture data for importer development lives under evals/cases.
MCP Direction
The planned MCP server should expose tools for:
- listing available prompt IDs
- validating prompt files
- exporting prompt content as structured JSON
- later syncing or importing Figma frames
Hermes should consume this as an external MCP integration instead of adding Figma-specific code to the Hermes core tree.
Example configuration shape:
{
"mcp_servers": {
"figma-prompt-hub": {
"command": "python",
"args": ["/absolute/path/to/hermes-figma-prompt-hub/mcp/server.py"],
"env": {
"FIGMA_ACCESS_TOKEN": "${FIGMA_ACCESS_TOKEN}",
"FIGMA_FILE_KEY": "${FIGMA_FILE_KEY}"
}
}
}
}
Automation
The repository includes automation for development quality and community growth:
- CI validation
- automated code review with severity policy, labels, inline comments, and PR score
- Figma contract check
- prompt catalog generation
- automation failure diagnostics
- good-first-issue seeding
- stale issue pings without automatic closing
- contributor recognition
- contributor scout reports
- monthly sponsor and contributor updates
- CODEOWNERS routing
Useful local commands:
python scripts/validate_repo.py
python scripts/check_figma_contract.py
python scripts/analyze_prompt_patterns.py
python scripts/security_prompt_audit.py
python scripts/import_prompt_text.py local-prompt.txt --id my-prompt
python scripts/generate_prompt_catalog.py
python scripts/code_review.py --base origin/main
python scripts/diagnose_automation_failures.py --limit 30
python scripts/scout_collaborators.py
Roadmap
Near-term work:
- Implement the Figma importer for
PROMPT/<id>frames. - Implement the first MCP server tools.
- Add more prompt examples and eval fixtures.
- Improve prompt semantic review.
- Prepare a stable schema release.
See ROADMAP.md.
For a deeper technical overview, see docs/architecture.md. For first-time setup, see docs/getting-started.md. For project-board setup, see docs/project-board.md.
Contributing
Good first areas:
- Figma API importer
- MCP server tools
- prompt examples
- eval fixtures
- validation and review automation
- documentation
Start with CONTRIBUTING.md, COLLABORATION.md, and open issues labeled good first issue or help wanted.
Sponsoring
OpenCollective is the recommended funding path for transparent project support:
https://opencollective.com/hermes-figma-prompt-hub
GitHub Sponsors:
https://github.com/sponsors/jozrftamson
See SPONSORING.md.
License
MIT. See LICENSE.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.