TailThemes
Server Details
Search Tailwind CSS and React themes, read their tokens and source files, and get download URLs.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Available Tools
4 toolsdownload_themeGet a download URLARead-onlyIdempotentInspect
Get a theme's zip download URL. Free themes download directly with no key or account. Paid themes need an active license: buy at the theme page, then call again with license_key and the ready-to-fetch URL comes back.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Theme slug. | |
| license_key | No | Optional. An active TailThemes license key covering this theme, or an all-access key. Only needed for paid themes, and only when the connection does not already send one as an Authorization: Bearer header. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the operation read-only and idempotent; the description adds valuable behavioral detail: licensing requirements, the need to call again with a license key, and that a ready-to-fetch URL is returned. It does not cover failure modes, but the core behavior is well disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The core purpose is front-loaded, and the conditional licensing details are packed efficiently into the second sentence.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with one required parameter, the description covers the workflow, authentication nuance, and expected result. Annotations cover the safety profile, and no output schema is needed because the return value is described as a URL.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds workflow meaning beyond the schema by explaining that paid themes require buying a license and calling again with license_key, and that the result is a ready-to-fetch URL. This is modest but genuine added context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Get a theme's zip download URL.' It is clearly distinguished from siblings like get_theme or get_component, which fetch metadata or components rather than a download URL.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit usage conditions: free themes need no credentials, paid themes require an active license, and the caller should re-invoke with license_key after purchasing. It does not explicitly contrast with sibling tools, but the resource difference makes the intended use clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_componentRead a theme fileARead-onlyIdempotentInspect
Read one manifest-declared component, page, theme.css, AGENTS.md, or README.md file. Paid theme source needs an active license.
| Name | Required | Description | Default |
|---|---|---|---|
| file | Yes | Manifest-declared path relative to the theme root. | |
| slug | Yes | Theme slug. | |
| license_key | No | Optional. An active TailThemes license key covering this theme, or an all-access key. Only needed for paid themes, and only when the connection does not already send one as an Authorization: Bearer header. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnlyHint and idempotentHint, so safety is covered. The description adds meaningful behavioral context beyond the annotations: only manifest-declared files are readable, and a paid theme's source requires an active license, which tells the agent about potential call failures. This is valuable, non-redundant information.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no filler. The primary action is front-loaded, and the license caveat is separated clearly. It does not repeat schema or annotation information unnecessarily.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity read tool with rich annotations and full schema coverage, the description is complete enough. It identifies the allowed file categories, the manifest restriction, and the license prerequisite, which are the main operational concerns. The return format is obvious from the verb 'Read,' and no output schema exists to require elaboration.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers 100% of the parameters with descriptions, and the tool description does not add substantive meaning beyond what the schema already provides. The mention of 'manifest-declared' aligns with the file parameter's schema description but does not enrich it further. Given full schema coverage, baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Read' and defines the resource as 'one manifest-declared component, page, theme.css, AGENTS.md, or README.md file,' leaving no ambiguity about what the tool does. The enumerated file types clearly distinguish this file-reading tool from siblings like get_theme or download_theme, even though they are not named. It avoids tautology and states observable scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when the tool is appropriate: it reads only manifest-declared files, and paid themes require an active license, which is a concrete prerequisite. However, it does not explicitly name sibling tools or state when to prefer them over this tool, so cross-tool routing is left partly to inference. This is just shy of fully explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_themeTheme manifest and docsARead-onlyIdempotentInspect
Get a theme's complete public manifest, including tokens, plus its AGENTS.md and README.md.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Theme slug. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds behavioral context by stating that it returns a complete public manifest (including tokens) and the theme's docs, implying no authentication for public themes. It doesn't mention error behavior or output format, but for a read-only fetch this is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one sentence that front-loads the action and resource. Every word contributes: 'complete public manifest' sets scope, and the list of docs is explicit. No filler or redundant phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter, existing annotations, and no output schema, the description adequately conveys the tool's purpose and returned contents. It could be more explicit about the returned data structure or error cases, but given the low complexity, it is reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers the single 'slug' parameter with a description, so schema coverage is 100%. The description doesn't add any additional parameter-level details beyond what the schema already provides; it only refers to 'a theme' without elaborating on formatting or validation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Get' and identifies the resource as a theme's complete public manifest, including tokens, plus AGENTS.md and README.md. This clearly distinguishes it from siblings like download_theme (likely package download) and get_component (single component). The scope is precise.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description doesn't explicitly state when to use this tool instead of alternatives, nor does it mention exclusions. The usage is implied by the description itself, but it does not reference sibling tools like search_themes or download_theme, so the agent must infer the appropriate context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_themesSearch themesARead-onlyIdempotentInspect
Search public Tailthemes metadata by name, description, tags, or category.
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | Case-insensitive substring to search for. Empty returns all themes. | |
| category | No | Optional case-insensitive category substring filter. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is clear. The description adds the 'public' scope which is useful, but provides no additional behavioral context like pagination or result limits. This is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, clear sentence that conveys the tool's purpose and scope with no extraneous words. All essential information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only search tool with two optional parameters and full schema coverage, the description covers the essential usage. There is no output schema, so return format is not specified, but for a metadata search this is a minor gap. Annotations provide safety context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both parameters (query and category) are documented in the schema. The description mentions searching by name/description/tags/category, which maps to the query parameter, but adds no new information about parameter behavior or formats beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Search'), a clear resource ('public Tailthemes metadata'), and the searchable fields (name, description, tags, category). This distinguishes it from sibling tools like get_theme or download_theme, which have different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explain when to use this tool versus alternatives. It implies searching is for discovery, but there is no explicit guidance on when to use search_themes instead of get_theme or get_component.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
2 tool updates
- Changed
download_theme1 field changed- added
Input schema / properties / license_keyAdded value: +{ + "description": "Optional. An active TailThemes license key covering this theme, or an all-access key. Only needed for paid themes, and only when the connection does not already send one as an Authorization: Bearer header.", + "type": "string" +}
- Changed
get_component1 field changed- added
Input schema / properties / license_keyAdded value: +{ + "description": "Optional. An active TailThemes license key covering this theme, or an all-access key. Only needed for paid themes, and only when the connection does not already send one as an Authorization: Bearer header.", + "type": "string" +}
4 tool updates
- First observed
download_theme - First observed
get_component - First observed
get_theme - First observed
search_themes
Frequently Asked Questions
Claiming proves that you control a remote MCP connector. It does not move, proxy, or interrupt the server.
Open the connector listing, choose Claim ownership, and sign in to Glama.
Complete one verification method:
GitHub identity — fastest for official registry listings. For a namespace such as
io.github.alice/server, link the matching GitHub user, then choose Claim with GitHub. An organization namespace such asio.github.acme/serveralso needs that organization to have installed the Glama AI GitHub App and approved its permissions, because GitHub discloses organization membership only to apps it has installed. Use HTTP or DNS when it has not.HTTP challenge — works when you can deploy a public file. Generate a token, publish the exact JSON Glama shows at
/.well-known/glama.jsonon the same origin as the connector, then choose Check HTTP challenge.DNS challenge — works when you control DNS but cannot change the server. Generate a token, create the exact TXT record Glama shows, wait for it to propagate, then choose Check DNS challenge.
After verification, Glama sends a confirmation email and gives you access to listing details, thumbnails, health checks, and analytics. Keep the HTTP file or DNS record in place: Glama periodically checks it and ownership remains verified while the token is discoverable.
The HTTP ownership file has this structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"claim": "glama_claim_..."
}Claim tokens are opaque, stable, and bound to the signed-in Glama account. They contain no email address or other personal information. If Glama can no longer discover a verified HTTP or DNS token, it starts a seven-day grace period before removing claim-based access. Restore the same token during that period to keep ownership verified. Never publish an email address, Glama session token, GitHub token, or connector credential as ownership proof.
If verification fails, confirm that you copied the current token exactly. The HTTP file must be public, return valid JSON with a successful HTTP response, and stay on the connector's origin. DNS changes may need more time to propagate. A claim cannot transfer to a different origin or hostname: if the connector target changes, Glama starts the grace period and the new target must be claimed separately after the previous claim is released.
For a connector linked to the official MCP Registry, registry updates continue to replace its name, description, and URL by default. After claiming, open Manage connector and enable Use Glama listing details as the source of truth if edits made on Glama should be preserved. Categories and thumbnails are always managed on Glama; registry linkage and technical connection settings continue to sync.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
To improve your MCP server's ranking:
Claim ownership of the server listing
Complete the server profile with an accurate description and thumbnail
Provide a test profile so Glama can connect to and evaluate the server
Keep tool definitions clear and complete to earn a high Tool Definition Quality Score (TDQS)
Route real usage through the Glama Gateway; more recorded successful server uses also improve the ranking
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Connectors
Build and manage your design system with AI: tokens, themes, components, icons, Figma and code.
On-demand drift checks: declared CSS color, radius, spacing & type vs your own tokens or a pack
Turn any live website into brand colors, fonts, design tokens, SVGs, Lottie and paste-ready code.
UI design from prompts, screenshots, and URLs for AI coding agents and theme tokens.
Related MCP Servers
- AlicenseAqualityBmaintenanceSearches design platforms for UI references and extracts design tokens such as colors, typography, spacing, and shadows from live websites.5MIT
- AlicenseAqualityBmaintenanceTranslates design tokens across platforms — extracts from Tailwind/CSS/Figma and generates native themes for Material 3, SwiftUI, and CSS variables with WCAG contrast validation.91205MIT
- AlicenseNot gradedqualityDmaintenanceProvides access to a universal design token system with 7 pre-built themes (colors, typography, spacing, motion) and multi-format export capabilities for Canva, Remotion, PPTX, CSS, and W3C JSON.1MIT
- AlicenseAqualityBmaintenanceEnables AI coding agents to search public design-system catalogs and retrieve only the relevant tokens or sections for a chosen brand, so generated UI matches a specified visual style instead of generic AI output.801BSD 3-Clause
Glama MCP Gateway
Add one secure layer between your agents and this server.
TDQS
Each tool targets a distinct action and resource: searching metadata, retrieving a theme manifest, downloading a theme archive, and reading a specific component file. No overlapping purposes.
All tools follow a consistent verb_noun snake_case pattern: download_theme, get_component, get_theme, search_themes. This makes the tool set predictable and easy to navigate.
Four tools is a well-scoped size for a theme-serving server. Each tool covers a necessary part of the workflow without redundancy or bloat.
The surface covers discovery (search), inspection (get_theme), file access (get_component), and acquisition (download_theme). No obvious missing operations for the server's apparent read-only consumer purpose.