rtl-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@rtl-mcpLint this component for RTL issues."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
rtl-mcp
An MCP server that gives a coding agent right-to-left awareness.
Ask an agent for a card component and you get ml-4 text-left — correct English, broken Arabic. The agent has no way to check itself, because nothing in its toolbox knows what RTL is. This gives it four tools that do.
Install
Point your MCP client at the package. Nothing to install first — npx fetches it.
Claude Code
claude mcp add rtl -- npx -y rtl-mcpAny client that reads an mcpServers block (Claude Desktop, Cursor, Windsurf, Zed):
{
"mcpServers": {
"rtl": {
"command": "npx",
"args": ["-y", "rtl-mcp"]
}
}
}Related MCP server: Security Scan MCP Server
Tools
Tool | What the agent gets |
| Pass a snippet and a filename; get every physical CSS property, directional Tailwind utility and |
| The same check across a file or a whole directory on disk. |
| Fold the spellings users type interchangeably into one key — strips diacritics and tatweel, unifies the alef forms. For search and matching, not for display. |
| Whether a string is |
Why normalize_arabic matters
مُحَمَّد and محمد are the same name and different strings. So are أحمد and احمد. A user who types their name without diacritics will not find their own record, and the bug reads like a broken database rather than a text problem.
normalize_arabic("مُحَمَّدْ") → "محمد"
normalize_arabic("أحـمد") → "احمد"The two folds that change meaning — ى → ي and ة → ه — are off by default. They widen fuzzy search and corrupt anything you display.
Why detect_direction is not just a regex
Arabic-Indic digits (٢٠٢٦) live inside the Arabic Unicode block, so the obvious implementation calls them RTL. Under the bidirectional algorithm they are class AN, not AL — they never set the direction of a paragraph. Only strong letters vote here, so ٢٠٢٦ comes back neutral and inherits its container's direction, which is what the spec says should happen.
Zero runtime dependencies
MCP over stdio is JSON-RPC 2.0, one message per line. The reference SDK brings seventeen transitive dependencies — Express, Hono, CORS, JOSE — none of which a stdio server uses. So the protocol layer here is written directly, and the only runtime dependency is rtl-lint.
That trade is only safe if conformance is proven rather than assumed. The test suite drives this server with the official SDK's client over a real stdio pipe. If the hand-written layer ever drifts from the specification, the reference implementation stops talking to it and CI goes red.
Protocol revisions understood: 2025-11-25, 2025-06-18, 2025-03-26, 2024-11-05. The server negotiates whichever one the client asks for.
Library use
The Arabic helpers work standalone, no MCP involved:
import { normalizeArabic, detectDirection } from "rtl-mcp/arabic";
normalizeArabic("مُحَمَّد"); // "محمد"
normalizeArabic("٢٠٢٦", { convertDigits: true }); // "2026"
detectDirection("مرحبا React").direction; // "mixed"Requirements
Node.js 20 or newer. (Node 18 reached end of life in April 2025.)
License
MIT © Khalel Hawary
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Flicense-qualityCmaintenanceMCP server for scanning AI systems and code for demographic, occupational, and geographic biases. Enables CI integration and AI agent-driven bias detection.Last updated
- Alicense-qualityDmaintenanceAn MCP server that provides CVE-driven security prompts for code review, enabling coding agents to get actionable security checks based on real vulnerabilities.Last updatedMIT
- Alicense-qualityBmaintenanceMCP server for automated code review using AI agents. It analyzes code diffs or file paths for bugs, security issues, and style violations.Last updatedMIT
- Alicense-qualityBmaintenanceMCP server that enables coding agents to check documentation claims against source code, detecting drift and suggesting fixes.Last updated132MIT
Related MCP Connectors
The MCP server for Azure DevOps, bringing the power of Azure DevOps directly to your agents.
ArcAgent MCP server for bounty discovery, workspace execution, and verified coding submissions.
A MCP server built for developers enabling Git based project management with project and personal…
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/kahlelhawary-art/rtl-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server