laravel-skills-multilingual
Guides the decoupling of Filament admin panels from public localized routing, while enabling seamless language switching within the admin interface.
Provides guidelines and rules for implementing multilingual support in Laravel applications, including locale-aware routing, translation catalogs, SEO canonical URLs, and data integrity for translatable attributes.
Facilitates seamless language switching in Filament admin panels through Livewire, ensuring consistent locale state and proper RTL/LTR support.
name: "laravel-multilingual" title: "Laravel Multilingual Implementation & Localization" description: "Comprehensive agent workflow and Cursor rule for configuring multi-language support in Laravel, including locale-aware URLs, translation catalogs, JSON Eloquent models, and Filament admin panels" version: "1.0.0" author: "Saddam Al-Slfi" repository: "https://github.com/saddamalsalfi/laravel-skills-multilingual" license: "MIT" created_at: "2026-09-12"
Laravel Multilingual Implementation & Localization ππ
A production-grade AI agent skill and Cursor Rule engineered to implement and maintain bulletproof internationalization (i18n) and localization (L10n) in modern Laravel applications.
Optimized for cursor.directory, LangChain Hub, and Open Plugins.
Related MCP server: mcp-localization-engine
π― What This Skill Solves
Localization in Laravel involves complex edge cases: SEO canonical URLs, locale-prefixed routes, translatable Eloquent attributes, Filament admin panels, and queue worker locale leaks.
This skill guides the AI coding assistant through:
Zero Security Risk in Web Root: Forbids exposing translation catalogs in
public/lang/and enforces<project-root>/lang/as the sole authoritative path.SEO & Canonical Routing: Handles locale prefix routing via
mcamara/laravel-localization, enforces redirect invariants (hideDefaultLocaleInURL => true), and eliminates redirect loops.Admin Panel Isolation: Completely decouples Filament administration panels from public localized routing while keeping admin language switching seamless via Livewire.
Data Integrity: Manages JSON-backed translatable Eloquent attributes using
spatie/laravel-translatablewithout data loss or partial overwrite bugs.Queue & Worker Safety: Explicitly isolates and resets locale state inside queue workers and asynchronous jobs to avoid cross-tenant locale leakage.
RTL & LTR Support: Enforces correct CSS and typography direction switching for Arabic, Hebrew, and Persian.
π Repository Structure (Open Plugins Standard)
βββ skills/
β βββ laravel-multilingual/
β βββ SKILL.md # Agent skill for Antigravity, Claude Code, etc.
βββ rules/
β βββ laravel-multilingual.mdc # Optimized rule for Cursor IDE
βββ server.py # Universal FastMCP executable server
βββ requirements.txt # Pinned dependencies for MCP runtime
βββ Dockerfile # Multi-platform OCI rootless container
βββ mcp.json # Model Context Protocol configuration
βββ plugin.json # Open Plugins manifest
βββ LICENSE # MIT License with explicit AI Agent Grant
βββ README.md # Documentation and usage guidesπ Quick Start & Installation
1. Cursor IDE
Copy the rule directly into .cursor/rules/:
mkdir -p .cursor/rules
curl -o .cursor/rules/laravel-multilingual.mdc https://raw.githubusercontent.com/saddamalsalfi/laravel-skills-multilingual/main/rules/laravel-multilingual.mdc2. Google Antigravity / Gemini IDE
Place into your workspace under .agents/skills/:
mkdir -p .agents/skills/laravel-multilingual
curl -o .agents/skills/laravel-multilingual/SKILL.md https://raw.githubusercontent.com/saddamalsalfi/laravel-skills-multilingual/main/skills/laravel-multilingual/SKILL.md3. Open Plugins CLI
open-plugins install https://github.com/saddamalsalfi/laravel-skills-multilingual4. Universal Executable MCP Server (Claude Desktop, Cursor, Smithery)
This skill runs natively as an executable Model Context Protocol (MCP) server exposing resources (skill://content) and tools (get_guidelines):
Claude Desktop Configuration (claude_desktop_config.json):
{
"mcpServers": {
"laravel-skills-multilingual": {
"command": "python",
"args": ["/path/to/laravel-skills-multilingual/server.py"]
}
}
}Docker Container Run:
docker build -t laravel-skills-multilingual .
docker run -i --rm laravel-skills-multilingualπ License & Attribution
Authored by Saddam Al-Slfi (@saddamalsalfi).
Licensed under the MIT License with a Special Grant for Artificial Intelligence (AI) Agents & Automated Systems.
Available Tools
1 toolget_guidelinesA
Returns procedural guidelines and domain rules for Laravel multilingual and localization implementation. Args: section: Optional keyword to filter content sections.
| Name | Required | Description | Default |
|---|---|---|---|
| section | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states that the tool returns guidelines and that section is an optional filter, but it does not describe filtering semantics, such as exact match versus keyword search, or behavior for invalid sections. This is acceptable for a simple retrieval tool but leaves room for more detail.
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: one for purpose and one for the parameter. Every sentence earns its place, and the main purpose 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?
With one optional parameter and an output schema present, this is a simple tool and the description covers its main behavior. It lacks examples or edge-case behavior, but those are minor for a guideline retrieval tool.
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 description coverage is 0%, so the description's 'Optional keyword to filter content sections' provides the only semantic meaning for the section parameter. It explains the parameter's role and optionality, though 'keyword' leaves some ambiguity about matching behavior.
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 'Returns' and names the exact resource: procedural guidelines and domain rules for Laravel multilingual and localization implementation. The scope is unambiguous even without sibling tools to differentiate against.
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 clearly establishes context: use this tool when you need Laravel multilingual/localization guidelines. It does not explicitly state exclusions, but with no sibling tools that omission is acceptable.
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.
1 tool update
v0.1.0- First observed
get_guidelines
TDQS
Scored across 1 tool
With only a single tool, there is no possibility of overlapping purposes, and get_guidelines' role is immediately understandable.
The one tool name uses a clean verb_noun pattern, get_guidelines, and clearly signals an information-retrieval action.
A single tool feels thin for a skill server, though the narrow guidelines-only scope may justify it. There are no supplementary tools for listing or navigating sections.
The tool can retrieve all guidelines or filter by section, covering the main need for procedural and domain rules. No lifecycle operations are expected for a static knowledge resource, and an unfiltered call provides full access.
Maintenance
Related MCP Connectors
Lingo.dev MCP Server - World-class i18n implementation with ICU MessageFormat.
MCP server for Crowdin β projects, files, strings, translation progress, tasks, and members.
Phrase MCP server: language intelligence platform for translation, terminology, and quality.
A MCP server built for developers enabling Git based project management with project and personalβ¦
Related MCP Servers
- AlicenseAqualityBmaintenanceMCP server for AI-powered translation management in i18n projects, enabling automated locale detection, translation status checks, and sync via LangAPI.430 npm1MIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server that provides comprehensive localization data for 174 locales, enabling AI agents to generate culturally-adapted multilingual content.MIT
- AlicenseNot gradedqualityAmaintenanceMCP server for translating JSON localization files via DeepL API or local LLMs, enabling agents to estimate, check, and run translations.MIT
- AlicenseAqualityBmaintenanceAn MCP server for managing Rails-style localization files (YAML/JSON), enabling coding agents to read, search, write, and audit translations without hand-editing files.73 npmMIT