refero-design-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| REFERO_VERBOSE | No | Diagnostics to stderr | false |
| REFERO_SITE_URL | No | Origin base URL | https://styles.refero.design |
| REFERO_CACHE_DIR | No | On-disk cache location | ~/.cache/refero-design-mcp |
| REFERO_TIMEOUT_MS | No | Per-request timeout | 30000 |
| REFERO_USER_AGENT | No | Request identification | see src/config.ts |
| REFERO_CONCURRENCY | No | Max simultaneous requests | 4 |
| REFERO_MAX_FETCHES | No | Max page fetches per tool call | 25 |
| REFERO_CACHE_TTL_MS | No | Cache freshness window (7 days) | 604800000 |
| REFERO_STYLES_SITEMAP | No | Style index | {site}/sitemaps/styles.xml |
| REFERO_MAX_RESPONSE_CHARS | No | Response budget | 40000 |
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| refero_index_statusA | Report how many published styles exist and how many are indexed locally. Call this before concluding that a style does not exist: a miss usually means it has not been indexed yet. |
| refero_search_stylesB | Find design styles on styles.refero.design by free text. Matches style names, north-star statements, colours, fonts and URLs on word boundaries. The local index grows on demand, so results improve as more styles are indexed. |
| refero_match_styleA | Given a design brief in prose, return the styles that best match it, each with the terms that triggered the match and a short rationale. Use this when the request is qualitative ("I need a dense, data-heavy dashboard") rather than a specific name. |
| refero_get_design_mdA | Render a style as a design.md document. The |
| refero_get_styleA | Return the parsed design system plus the measured tokens scraped from the live site (colours, fonts, radii, spacing) as JSON. Prefer |
| refero_list_style_idsA | Return published style UUIDs and their last-modified timestamps, straight from the public sitemap. Use this to discover ids without reading any style page. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 6 tools
Each tool targets a distinct action, and descriptions actively clarify the two closest pairs: search_styles (word-boundary keyword match) vs match_style (qualitative prose brief), and get_design_md (prose) vs get_style (raw JSON tokens). The boundaries are mostly clear, though a naive agent could still reach for search_styles when match_style is intended.
All names share the refero_ prefix and snake_case with a verb_noun shape (search_styles, match_style, get_style, get_design_md, list_style_ids). refero_index_status is the one deviation (noun_noun rather than an action verb), but it is still readable and in the same convention.
Six tools is well-scoped for a design-style discovery and rendering server, with each tool earning its place across the discovery, search, match, retrieve, and diagnostic phases.
The surface covers the full read lifecycle: discover ids (list_style_ids), search by text (search_styles), match by brief (match_style), retrieve as JSON (get_style) or prose (get_design_md), plus index diagnostics (index_status). Only minor gaps, such as filtered/paginated listing, remain and are workable given the sitemap-backed ids.