Skip to main content
Glama

persian_font_preset

Generate CSS for Persian fonts with import links, font stacks, fallbacks, and RTL base styles for Vazirmatn, Shabnam, Sahel, or IRANSans.

Instructions

CSS for Persian fonts (vazirmatn, shabnam, sahel, iransans): import link, font stack with fallbacks, RTL base styles. IRANSans is commercial so no CDN is given.

Input Schema

NameRequiredDescriptionDefault
fontYes
selectorNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.3.0

TDQS

B3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden, and it does disclose the output shape (import link, font stack, RTL base styles) and a real limitation (IRANSans has no CDN link). However, it says nothing about whether the result is a pure/read-only snippet, whether it is static or generated, or how the selector influences the emitted CSS.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is a single dense sentence that front-loads the resource and then the output contents. Every clause carries information; the only minor cost is the parenthetical font list, which is slightly redundant with the schema enum.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter, no-annotation, no-output-schema snippet tool, the description explains output contents adequately but leaves the `selector` parameter and any default behavior unexplained. It is the minimum viable level rather than complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%. The description lists the four font values, partially compensating for the `font` enum, but the `selector` parameter is never mentioned anywhere — neither in the schema nor the description — leaving its meaning and default entirely unknown. Half the parameters are undocumented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific resource (CSS preset for Persian fonts) and enumerates exactly what the output contains: import link, font stack with fallbacks, RTL base styles. It also lists the supported fonts, matching the enum. It stops short of explicitly distinguishing itself from near-neighbors like rtl_starter_snippet or rtl_guidelines, so it is clear but not fully disambiguated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no statement of when to use this tool versus rtl_guidelines, rtl_starter_snippet, or rtl_audit_css. The only caveat given (IRANSans is commercial, so no CDN link) is a behavioral note, not usage guidance. The agent must infer the use case from the tool name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.