Skip to main content
Glama

🌎 DialectOS

TL;DR: DialectOS — operating system for multi-dialect / multi-agent product work. Best for builders running multi-agent product and language workflows. Keywords: multi-agent OS, dialect, product agent orchestration.

The first Model Context Protocol server built specifically for Spanish dialects.

DialectOS is an open-source Spanish dialect translation server that runs as an MCP (Model Context Protocol) tool and CLI. It translates English and other languages into 25 regional Spanish variants — Mexican, Argentinian, Colombian, Puerto Rican, and more — while preserving markdown structure, enforcing glossary terms, and applying adversarial quality gates that catch semantic drift before it reaches users.

Translate, detect, and adapt content across 25 regional Spanish variants while preserving markdown structure, code comments, and locale file formatting.

CI Tests License Node pnpm MCP Security

📖 Documentation · 🚀 Quick Start · 🛠️ MCP Tools · Agent Skill · 📦 Packages · 🤝 Contributing · 📋 Roadmap


Public Discovery

DialectOS is a Spanish localization and dialect QA system for AI agents, documentation teams, app developers, and support organizations. It provides MCP tools, CLI workflows, glossary enforcement, locale-file validation, and adversarial quality gates for regional Spanish variants.

AI discovery: llms.txt provides a compact project summary for AI assistants and search crawlers.

Best-fit searches: Spanish dialect translation MCP server, Spanish localization QA, Model Context Protocol translation tool, i18n validation CLI, regional Spanish translator, glossary enforcement, AI localization audit, Spanish launch certification.

Related MCP server: nativ-mcp

Agent Skill

DialectOS includes a public agent skill at skills/dialectos/SKILL.md. Use $dialectos in compatible agent hosts when you want an agent to choose the right MCP or CLI workflow for regional Spanish translation, markdown preservation, locale-file validation, glossary enforcement, register checks, and launch-readiness QA.

Spanish Launch Certification

DialectOS is available as a paid Spanish localization launch audit. We certify your Spanish docs, app strings, support macros, or locale files across target dialects and deliver an MQM-aligned launch-readiness report.

✨ What makes DialectOS different?

Feature

Google Translate

DeepL API

DialectOS

Spanish dialect awareness

❌ Generic "Spanish"

⚠️ Limited variants

25 regional variants

MCP native integration

17 MCP tools

Markdown structure preservation

Tables, code blocks, links intact

i18n locale file support

JSON locale diff & merge

Gender-neutral language

elles / latine / -x

Formality checking (tú vs usted)

Cross-dialect consistency

Adversarial quality gates

Semantic drift + structure validation

LLM-first dialect adaptation

❌ Generic MT

⚠️ Limited dialect control

Any OpenAI/Anthropic/LM Studio local LLM + dialect contracts

Translation validation (any provider)

dialectos validate — standalone correctness check

GitHub CI integration

Composite action for PR validation

Auto-glossary from corrections

Learns from user feedback

Public benchmark suite

205 adversarial samples across 25 dialects


🎯 Why this exists

"We shipped a product to Mexico using our Spain Spanish translations. Users thought we were being intentionally rude."

Spanish is not one language — it's 25 regional variants with different vocabulary, formality levels, slang, and grammatical preferences. Existing translation tools treat Spanish as a monolith.

DialectOS solves this by:

  • Understanding regional differences (es-MX vs es-ES vs es-AR vs es-CO...)

  • Preserving technical document structure during translation

  • Providing glossary enforcement for consistent terminology

  • Adding semantic context, dialect grammar profiles, quality contracts, and quality gates that catch drift before it reaches users

  • Running as an MCP server so AI assistants can translate natively


🚀 Quick Start

Install note: DialectOS v0.3.0 is distributed through GitHub Release tarballs, not the npm registry. Use the released MCP/CLI tarballs for agent and command-line installs; clone the repo only for local development or the browser demo.

MCP setup

Add the released MCP server to Claude Desktop, Cursor, or any MCP client:

{
  "mcpServers": {
    "dialectos": {
      "command": "pnpm",
      "args": [
        "dlx",
        "https://github.com/KyaniteLabs/DialectOS/releases/download/v0.3.0/dialectos-mcp-0.3.0.tgz"
      ],
      "env": {
        "LLM_API_URL": "https://your-llm-gateway/v1/chat/completions",
        "LLM_MODEL": "your-dialect-capable-model",
        "LLM_API_KEY": "your-key-if-required",
        "LLM_API_FORMAT": "openai",
        "ALLOWED_LOCALE_DIRS": "/path/to/locales"
      }
    }
  }
}

For local development from a source checkout, run pnpm build and point your MCP client at packages/mcp/dist/index.js.

Full-app browser demo

The browser demo requires a source checkout.

The browser demo is no longer a fake/static rule replacer. It calls a local DialectOS backend, and that backend calls the configured provider stack.

LLM_API_URL="http://127.0.0.1:1234/v1/chat/completions" \
LLM_API_FORMAT="openai" \
LLM_MODEL="your-local-model-name" \
LLM_ALLOW_LOCAL=1 \
pnpm demo

Open http://127.0.0.1:8080.

For the beginner container walkthrough, see docs/full-app-demo.md.

For v0.3.0, the recommended default cloud model is glm-4.5-air through the Z.ai international Anthropic-compatible endpoint. It passed basic, expanded adversarial, and long-document certification. Use glm-5.1 when you want the higher-confidence/premium option, and qwen3.5-9b via LM Studio for local/offline certification.

export LLM_API_URL="https://api.z.ai/api/anthropic/v1/messages"
export LLM_MODEL="glm-4.5-air"
export LLM_API_FORMAT="anthropic"
export LLM_API_KEY="..."

LM Studio local model testing

Start LM Studio's local server, then point DialectOS at any downloaded local model. LLM_API_FORMAT=lmstudio uses LM Studio's native REST API and loads the model just-in-time when needed.

LM_STUDIO_URL="http://127.0.0.1:1234" \
LLM_MODEL="publisher/model-key-or-api-identifier" \
LLM_API_FORMAT="lmstudio" \
pnpm dialect:eval -- --live --provider=llm --out=/tmp/dialectos-lmstudio-eval

Incremental provider certification

Use dialect:certify for long local-model or cloud-provider runs. It writes events.jsonl, progress.json, and an incrementally updated results.json after every sample, with per-sample timeout protection.

LM_STUDIO_URL="http://127.0.0.1:1234" \
LLM_MODEL="qwen3.5-9b" \
LLM_API_FORMAT="lmstudio" \
pnpm dialect:certify -- --live --provider=llm --sample-timeout-ms=300000 --out=/tmp/dialectos-certify

Adversarial dialect certification

Use dialect:certify:adversarial to run paraphrase, dialect-collision, taboo-copy, placeholder, register, and repeatability traps. It wraps dialect:certify and writes a failure-matrix.md plus aggregate repeatability results.

pnpm dialect:certify:adversarial -- --live --provider=llm --repeat=2 --sample-timeout-ms=300000 --out=/tmp/dialectos-adversarial

Long-document certification

Use dialect:certify:documents to certify README/API-doc/locale JSON flows, not just sentence fixtures. It checks markdown structure, placeholders, URLs, code fences, API tables, and locale JSON outputs.

pnpm dialect:certify:documents -- --live --provider=llm --dialects=es-MX,es-PA,es-PR --out=/tmp/dialectos-doc-cert

Customer-facing certification report

Use dialect:report to turn certification artifacts into a customer-facing Markdown deliverable for paid launch audits.

pnpm dialect:report -- --input=audits/release-candidate-2026-04-22/model-matrix.json --out=customer-report.md --customer="Acme SaaS" --product="Spanish launch"

CLI install

# Install the v0.3.0 CLI tarball from the GitHub Release
pnpm add -g https://github.com/KyaniteLabs/DialectOS/releases/download/v0.3.0/dialectos-cli-0.3.0.tgz

# Or use a local source checkout
pnpm install --frozen-lockfile
pnpm build

# Translate to Mexican Spanish
dialectos translate "Hello world" --dialect es-MX

# Translate a README preserving structure
dialectos translate-readme README.md --dialect es-AR --output README.ar.md

# Validate an existing translation
dialectos validate --source "Click the button" --translated "Haz clic en el botón" --dialect es-MX

# Validate translation files
dialectos validate --source-file en.json --translated-file es-MX.json --dialect es-MX --format json

# View translation corpus statistics
dialectos corpus stats

# Run dialect quality benchmark
dialectos benchmark run --dialects es-MX,es-AR,es-ES

# Generate glossary suggestions from corrections
dialectos glossary suggest --min-occurrences 3

# Compare two glossary versions
dialectos glossary diff glossary-v1.json glossary-v2.json

# Detect missing i18n keys
dialectos i18n detect-missing ./locales/en.json ./locales/es.json

# List all supported dialects
dialectos dialects list

From source

git clone https://github.com/KyaniteLabs/DialectOS.git
cd DialectOS
pnpm install
pnpm build
pnpm test        # 662+ tests passing

🛠️ MCP Tools

Markdown Translation (4 tools)

Tool

Description

translate_markdown

Translate while preserving tables, code blocks, links

extract_translatable

Extract only translatable text from markdown

translate_api_docs

Translate API docs with table cell-level translation

create_bilingual_doc

Side-by-side bilingual documents

i18n Operations (6 tools)

Tool

Description

detect_missing_keys

Compare locale files for missing keys

translate_missing_keys

Auto-translate missing keys

batch_translate_locales

Batch translate to multiple dialects

manage_dialect_variants

Create dialect-specific variants

check_formality

Check tú vs usted consistency

apply_gender_neutral

Apply gender-neutral language

Translation (7 tools)

Tool

Description

translate_text

Translate with semantic context, grammar profiles, and quality contracts

detect_dialect

Detect dialect from sample text

translate_code_comment

Translate comments, preserve code

translate_readme

Full README translation pipeline

search_glossary

Search 300+ source-attributed glossary terms

list_dialects

List all 25 supported dialects

research_regional_term

Research source-backed regional lexeme proposals without mutating runtime data


📦 Packages

Package

Version

Description

Tests

@dialectos/mcp

0.3.0

17 MCP tools (stdio server)

93

@dialectos/cli

0.3.0

CLI: translate, validate, corpus, benchmark, glossary

569

@dialectos/providers

0.3.0

LLM, DeepL, LibreTranslate, MyMemory with circuit breaker + corpus

152

@dialectos/security

0.3.0

Rate limiting, SSRF protection, sanitization

68

@dialectos/types

0.3.0

Shared TypeScript types + glossary, profile, certification, and quality data

54

@dialectos/locale-utils

0.3.0

Locale file diff/merge utilities

55

@dialectos/markdown-parser

0.3.0

Structure-preserving markdown parser

74

662+ tests across 7 packages plus docs contracts, demo-server contracts, and static-hardening checks


🛡️ Security & Quality

DialectOS has undergone adversarial security hardening:

  • 18 CVEs resolved via dependency overrides

  • SSRF protection on all provider endpoints

  • Circuit breaker with half-open probe locks

  • Atomic checkpoint writes with schema versioning

  • HTML injection detection in translated output

  • Semantic drift scoring — catches "looks valid but meaning changed"

  • Provider capability negotiation — validates language support before API calls

  • Chaos harness for deterministic resilience testing

See SECURITY.md for details.


🎨 Supported Dialects

Code

Region

Example Difference

es-ES

Spain

"Coche" (car), "Ordenador" (computer)

es-MX

Mexico

"Carro", "Computadora"

es-AR

Argentina

"Auto", "Computadora", "Che"

es-CO

Colombia

"Carro", "Computador", "Chévere"

es-CL

Chile

"Auto", "Computadora", "Caleta"

es-PE

Peru

"Carro", "Computadora", "Pe"

es-VE

Venezuela

"Carro", "Computadora", "Chamo"

es-UY

Uruguay

"Auto", "Computadora", "Bo"

es-GQ

Equatorial Guinea

"Carro", "Camisola", "Bacalao"

es-US

United States

"Carro", "Computadora", "Pocha"

es-PH

Philippines (Chavacano)

"Carro", "Jendeh", "Kame"

es-BZ

Belize

"Carro", "Breki", "Kriol"

es-AD

Andorra

"Carro", "Madriu", "Caldea"

...and 12 more. Full list via dialectos dialects list.


🏗️ Architecture

┌─────────────────────────────────────────────────────────────┐
│                        MCP Client                            │
│              (Claude Desktop / Cursor / etc.)                │
└──────────────────────┬──────────────────────────────────────┘
                       │ stdio
┌──────────────────────▼──────────────────────────────────────┐
│                   @dialectos/mcp                               │
│              17 tools • JSON-RPC over stdio                  │
└──────────────────────┬──────────────────────────────────────┘
                       │
┌──────────────────────▼──────────────────────────────────────┐
│                   @dialectos/cli                               │
│   translate • validate • corpus • benchmark • glossary     │
│   ├─ Policy profiles (strict/balanced/permissive)           │
│   ├─ Quality gates (token/glossary/structure/semantic)      │
│   ├─ Translation corpus + auto-glossary                     │
│   └─ Checkpoint resumption + telemetry                      │
└──────────────────────┬──────────────────────────────────────┘
                       │
┌──────────────────────▼──────────────────────────────────────┐
│                @dialectos/providers                            │
│   ┌─────────┐  ┌─────────────────┐  ┌─────────────────┐    │
│   │   LLM   │  │     DeepL       │  │ Libre/MyMemory │   │
│   │ Primary │  │ Paid fallback   │  │ Generic fallback│    │
│   └─────────┘  └─────────────────┘  └─────────────────┘    │
│        │                │                    │              │
│        └────────────────┴────────────────────┘              │
│              Circuit Breaker + Rate Limiter                  │
└─────────────────────────────────────────────────────────────┘

📊 Quality Gates

Every translation passes through 4 quality dimensions:

Quality Score = tokenIntegrity×25% + glossaryFidelity×30% + structureIntegrity×20% + semanticSimilarity×25%

Gate

What it checks

Example failure

Token Integrity

Protected terms preserved

"Kyanite Labs" → "Cianita Labs"

Glossary Fidelity

Enforced terminology used

"API" → "Interfaz" (when glossary says "API")

Structure Integrity

Markdown structure intact

Missing code fence, broken table

Semantic Similarity

Meaning not drifted

"API is down" → "Hello world"


❓ FAQ

What is DialectOS? DialectOS is an open-source translation engine for Spanish regional dialects. It runs as an MCP server (for AI assistants like Claude) and a CLI tool for developers.

How is DialectOS different from Google Translate? Google Translate treats Spanish as one language. DialectOS understands 25 regional variants, preserves markdown structure, enforces glossaries, and applies quality gates that catch errors before they reach users.

What are Spanish dialects? Spanish varies significantly by country. Mexican Spanish uses "carro" for car; Spain uses "coche"; Argentina uses "auto". DialectOS handles these differences automatically.

Does DialectOS work with ChatGPT / Claude? Yes. DialectOS is an MCP server, so Claude Desktop, Cursor, Windsurf, and other MCP clients can use its 17 translation tools natively.

Is DialectOS free? Yes. DialectOS v0.3.0 is released under Apache-2.0. See LICENSE for details.

What is MCP? Model Context Protocol is an open standard that lets AI assistants use external tools. DialectOS exposes 17 translation tools through MCP so AI agents can translate natively.

Can I use DialectOS for commercial projects? Yes. Apache-2.0 allows commercial use, modification, and redistribution subject to the license terms. See LICENSE for details.

How accurate is the translation? DialectOS applies 4 quality gates (token integrity, glossary fidelity, structure integrity, semantic similarity) and adversarial tests. Automated tests verify correctness across dialects.

🏷️ Badges

Add this badge to your project if you use DialectOS for translation:

[![Translated with DialectOS](https://img.shields.io/badge/translated%20with-DialectOS-d89b2b)](https://github.com/KyaniteLabs/DialectOS)

⚡ GitHub Action

Validate Spanish translations in CI on every pull request:

- uses: KyaniteLabs/DialectOS/action  # Planned — version pinning unavailable until first release
  with:
    dialect: es-MX
    source-dir: locales/en
    target-patterns: 'locales/es-MX/*.json'
    fail-on-blocking: true

Multi-dialect matrix:

strategy:
  matrix:
    dialect: [es-ES, es-MX, es-AR, es-CO]
steps:
  - uses: KyaniteLabs/DialectOS/action  # Planned — version pinning unavailable until first release
    with:
      dialect: ${{ matrix.dialect }}
      fail-on-blocking: true

See docs/github-action.md for full configuration options.


🤝 Contributing

We welcome contributors! See CONTRIBUTING.md for:

  • Setting up your development environment

  • Running the test suite

  • Submitting pull requests

  • Code style guidelines

Good first issues are tagged with good first issue — perfect for newcomers.


📋 Roadmap

See ROADMAP.md for upcoming features including:

  • Portuguese dialect support (pt-BR, pt-PT)

  • Real-time collaborative translation

  • Custom provider plugins

  • OpenAI-compatible, Anthropic-compatible, and LM Studio local gateways via LLM_API_URL/LM_STUDIO_URL + LLM_MODEL + LLM_API_FORMAT

  • VS Code extension


📄 License

Apache-2.0 — see LICENSE for details.


Made with ❤️ by KyaniteLabs and contributors.

Star ⭐ this repo if it helps your project!


Part of KyaniteLabs

More from KyaniteLabs. Related projects:

  • mcp-video — guardrailed video-editing MCP server for AI agents

  • Epoch — time-estimation MCP server (PERT) for AI agents

  • checkyourself — local-first production-readiness checks for AI-built code

→ More at kyanitelabs.tech

What is DialectOS?

DialectOS is a operating system for multi-dialect / multi-agent product work that helps builders running multi-agent product and language workflows coordinate dialect-aware agent operations with clear product surfaces.

Product

DialectOS

Category

operating system for multi-dialect / multi-agent product work

Best for

builders running multi-agent product and language workflows

Not

a general chat UI

Source

GitHub · Forgejo

Keywords

multi-agent OS, dialect, product agent orchestration

Who it's for

  • Primary: builders running multi-agent product and language workflows

  • Use when you need to coordinate dialect-aware agent operations with clear product surfaces

  • Skip if you need a general chat UI

FAQ

What is DialectOS?

DialectOS is a operating system for multi-dialect / multi-agent product work. It helps builders running multi-agent product and language workflows coordinate dialect-aware agent operations with clear product surfaces.

Who should use DialectOS?

builders running multi-agent product and language workflows.

How is DialectOS different?

Unlike single-agent chat apps, DialectOS is built for multi-dialect product operations.

Is DialectOS production software?

Treat the README status and release tags as source of truth for maturity. Validate against your own requirements before production use.

Status

  • Maintained as of 2026 on the default branch

  • Prefer release tags when pinning dependencies

  • Report issues on the canonical remote listed above

Agent surface

  • Coding agents: read this README first, then repo docs/AGENTS.md if present

  • Prefer machine-readable briefs (llms.txt) when the repo ships one

  • MCP or skill entrypoints are documented in-repo when applicable

Contributing

Issues and PRs welcome on the canonical remote. Keep public docs free of secrets and machine-local paths.

License

See LICENSE in this repository (or package metadata if license is package-only).

Table of contents

Available Tools

16 tools
apply_gender_neutralB

Apply gender-neutral language strategies to a locale file

ParametersJSON Schema
NameRequiredDescriptionDefault
localePathYesPath to the locale file to adapt
strategyNoGender-neutral strategy (latine, elles, x, descriptive)

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description carries full burden for behavioral traits. It only states the action but does not clarify whether the file is modified in place, what the output is, side effects, or required permissions. This is insufficient for safe agent use.

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?

The description is a single, concise sentence that efficiently conveys the primary action with no unnecessary words. It earns its place despite being minimal.

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

Completeness2/5

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

Given no output schema or annotations, the description should provide more context about behavior (e.g., in-place modification, return value) and explain the strategy options. The sibling tools are translation-focused, making this tool's specialized nature require additional context that is missing.

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

Parameters3/5

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

The input schema provides 100% coverage with descriptions for both parameters. The tool description adds context that the strategies are 'gender-neutral language strategies' but does not elaborate beyond the schema's enum values. Baseline 3 is appropriate since the schema already documents parameters adequately.

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

Purpose5/5

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

The description clearly states the tool applies gender-neutral language strategies to a locale file. It uses a specific verb ('apply') and resource ('gender-neutral language strategies to a locale file'), and this purpose is distinct from all sibling tools, which focus on translation, formality, or dialect detection.

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?

No guidance is provided on when to use this tool versus alternatives, nor any prerequisites or context. Users must infer that it is for adapting locale files to be gender-neutral, but there is no discussion of when each strategy (latine, elles, x, descriptive) is appropriate.

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

batch_translate_localesC

Translate base locale to multiple target dialects

ParametersJSON Schema
NameRequiredDescriptionDefault
directoryYesDirectory containing locale files
baseLocaleNoBase locale name (e.g., en, es-ES)
targetsYesArray of target Spanish dialect codes
providerNoTranslation provider name (deepl, libre, mymemory)

TDQS

C2.8/5.0
Behavior2/5

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

The description provides minimal behavioral insight beyond stating the action. With no annotations, it should describe effects like whether files are created or modified, or if authorization is needed. The phrase 'Translate' is vague about side effects.

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

Conciseness3/5

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

The description is a single short sentence, which is concise but may be too terse given the tool's 4 parameters and lacking sibling differentiation. It conveys the basic purpose but does not efficiently use space to add value.

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

Completeness2/5

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

Without annotations or output schema, the description fails to cover important context such as return values, file handling behavior, or prerequisite conditions. For a batch operation, more detail is needed for correct invocation.

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

Parameters3/5

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

Schema coverage is 100%, so all parameters have descriptions within the input schema. The description adds no additional meaning beyond what is already provided in the schema, e.g., it does not clarify the relationship between 'targets' and 'provider'.

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 'Translate base locale to multiple target dialects' clearly states the tool's action (translate) and resource (base locale to multiple target dialects). The tool name includes 'batch_translate_locales' which hints at batch processing of locale files. While it distinguishes from siblings like translate_text, it could be more explicit about targeting locale files.

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?

No guidance on when to use this tool versus alternatives such as translate_missing_keys or translate_text. The description implies usage for batch translation to multiple dialects, but lacks explicit context or when-not-to-use instructions.

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

check_formalityC

Check locale file for formality consistency

ParametersJSON Schema
NameRequiredDescriptionDefault
localePathYesPath to the locale file to check
registerNoRegister to check for (formal or informal)

TDQS

C2.8/5.0
Behavior1/5

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

With no annotations, the description must disclose behavioral traits but fails to mention what happens on inconsistency, return format, or side effects. The single sentence provides no behavioral detail.

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?

The description is a single, front-loaded sentence with no wasted words. It could be slightly more structured but is concise.

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

Completeness1/5

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

For a 2-parameter tool with no output schema, the description is too minimal. It lacks details on output, behavior, and integration with other tools, making it incomplete.

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

Parameters3/5

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

Schema description coverage is 100%, so baseline is 3. The description does not add meaning beyond the schema; it merely implies the tool checks formality but does not elaborate on parameters.

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

Purpose5/5

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

The description clearly states the verb 'Check' and the resource 'locale file', specifying the aspect 'formality consistency'. It distinguishes from sibling tools like detect_dialect by focusing on formality.

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?

No guidance is provided on when to use this tool versus alternatives such as detect_missing_keys or apply_gender_neutral. No context for when to check formality.

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

create_bilingual_docB

Create a side-by-side bilingual document with original and translated sections

ParametersJSON Schema
NameRequiredDescriptionDefault
filePathYesPath to the markdown file to translate
dialectNoSpanish dialect code (e.g., es-ES, es-MX, es-AR)
providerNoTranslation provider name (deepl, libre, mymemory)

TDQS

B3.1/5.0
Behavior2/5

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

No annotations provided, and the description fails to disclose behavioral traits such as whether it overwrites files, needs authentication, or has rate limits, leaving the agent uninformed about side effects.

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?

The description is a single sentence with no wasted words, but slightly more context (e.g., output format) could improve utility without harming conciseness.

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

Completeness2/5

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

For a tool that creates files, missing details on output naming, file overwriting behavior, and error handling make it incomplete given no output schema or annotations.

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

Parameters3/5

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

Schema coverage is 100%, so the description adds minimal value beyond the parameter names and types; it does not clarify how dialect or provider affect the output.

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

Purpose5/5

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

The description clearly states the tool creates a side-by-side bilingual document with original and translated sections, which is distinct from sibling tools like translate_markdown or translate_text.

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?

No guidance on when to use this tool versus alternatives like translate_markdown or batch_translate_locales, nor any mention of prerequisites or exclusions.

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

detect_dialectB

Detect Spanish dialect from text using keyword matching

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesText to analyze for dialect detection

TDQS

B3.4/5.0
Behavior2/5

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

With no annotations, the description must disclose behavioral traits. It mentions 'keyword matching' which hints at a rule-based approach but does not specify accuracy, return format, or behavior when no dialect is detected.

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?

The description is a single, focused sentence that front-loads the key purpose. It is concise but could potentially include more detail without sacrificing brevity.

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?

Given the simplicity of one parameter and no output schema, the description is minimally adequate. However, it does not specify which dialects are supported or the output format, leaving gaps for the agent.

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

Parameters4/5

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

There is only one parameter 'text' with schema description covering 100%. The description adds semantic context by specifying 'Spanish dialect' and 'keyword matching', which enhances understanding beyond the schema alone.

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

Purpose5/5

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

The description clearly states the action (detect), the resource (Spanish dialect from text), and the method (keyword matching). It effectively distinguishes from sibling tools like 'list_dialects' and 'manage_dialect_variants'.

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?

No guidance is provided on when to use this tool versus alternatives, nor any limitations or exclusions. The description lacks context for appropriate usage.

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

detect_missing_keysB

Compare two locale files and report missing keys

ParametersJSON Schema
NameRequiredDescriptionDefault
basePathYesPath to the base locale file
targetPathYesPath to the target locale file

TDQS

B3.4/5.0
Behavior2/5

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

No annotations are provided, so the description must carry full behavioral disclosure. It does not specify which file is the reference (base vs target), whether the comparison is recursive, or the format of the report. The description is too minimal to convey behavioral traits.

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

Conciseness5/5

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

The description is a single sentence of only 6 words, perfectly concise and front-loaded with the core action. Every word earns its place; no excess.

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

Completeness4/5

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

Given the simple nature of the tool (2 string parameters, no nested objects, no output schema) and clear input schema, the description is largely adequate. Minor missing details like recursion or file format expectations, but overall complete enough for a straightforward comparison utility.

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

Parameters3/5

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

Schema coverage is 100% with clear descriptions for each parameter. The description adds no extra meaning beyond what the schema provides, but the schema itself is sufficient. Baseline score of 3 is appropriate.

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

Purpose5/5

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

The description clearly states the tool's action ('Compare two locale files') and outcome ('report missing keys'). It uses specific verbs and resources, and distinguishes itself from the sibling tool 'translate_missing_keys' which performs a different action.

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?

The description provides no guidance on when to use this tool versus alternatives like 'translate_missing_keys'. It does not mention prerequisites, typical workflow, or context, leaving the agent to infer usage from the name alone.

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

extract_translatableA

Extract translatable text from a markdown file (excludes code blocks, HTML)

ParametersJSON Schema
NameRequiredDescriptionDefault
filePathYesPath to the markdown file to analyze

TDQS

A3.9/5.0
Behavior3/5

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

No annotations provided, so description must disclose all behaviors. It mentions exclusions (code blocks, HTML) but does not state whether the tool writes to file or returns output, or any side effects. Adequate but could be more transparent.

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

Conciseness5/5

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

One sentence, front-loaded with the action and key constraint. No wasted words.

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?

Description lacks mention of output format or return value. Given no output schema, the agent would benefit from knowing what the tool returns (e.g., list of strings). Otherwise, the description is adequate for a simple tool.

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

Parameters3/5

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

Single parameter 'filePath' is fully described in schema (100% coverage). Description adds context on what the tool does with the file but no additional parameter-level semantics beyond the schema. Baseline 3 achieved.

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

Purpose5/5

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

The description clearly states the action (extract), resource (translatable text from a markdown file), and key differentiator (excludes code blocks, HTML). It distinguishes itself from sibling tools like translate_markdown or batch_translate_locales.

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

Usage Guidelines4/5

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

The description provides context on when to use (extracting translatable text) and what it excludes, but does not explicitly state when not to use or mention alternative tools. Still clear enough for basic guidance.

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

list_dialectsA

List all 20 Spanish dialects with metadata

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior4/5

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

With no annotations, the description carries full burden. It accurately describes the tool as a read operation listing dialects with metadata. However, it does not disclose if the list is static or dynamic, or if any authentication is needed, but for a simple list 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.

Conciseness4/5

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

The description is a single sentence that gets straight to the point, with no extraneous information. It is concise but could include a bit more detail without harming brevity.

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?

While no output schema is provided, the description mentions 'metadata' but does not specify what fields that metadata includes. For a listing tool, more detail on the return structure would improve completeness.

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

Parameters4/5

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

The tool has no parameters, so the schema coverage is implicitly 100%. The description need not add parameter semantics as there are none, earning a baseline of 4.

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

Purpose5/5

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

The description clearly states the verb 'list' and the resource 'all 20 Spanish dialects with metadata', making the tool's purpose unmistakable. It distinguishes itself from sibling tools like 'detect_dialect' by specifying a listing function.

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?

No guidance is provided on when to use this tool versus alternatives such as 'detect_dialect' or 'manage_dialect_variants'. The context of usage (e.g., initial exploration, data retrieval) is missing.

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

manage_dialect_variantsB

Create dialect-specific variants of a locale file

ParametersJSON Schema
NameRequiredDescriptionDefault
sourcePathYesPath to the source locale file
variantYesTarget dialect variant (e.g., es-MX, es-AR, es-CO)
outputPathNoOutput path (optional, defaults to source path)

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations, the description must fully disclose behavior. It only states that variants are created, but does not describe whether the operation is destructive, overwrites files, requires specific permissions, or any side effects.

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

Conciseness5/5

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

The description is a single, clear sentence with no unnecessary words. It is front-loaded and efficiently conveys the core purpose.

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

Completeness2/5

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

Given the absence of an output schema and annotations, the description should provide more context about return values, error handling, or behavioral details. The minimal description leaves significant gaps for a tool with 3 parameters.

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

Parameters3/5

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

Schema coverage is 100%, so the schema already documents all parameters fully. The description does not add extra meaning beyond what is inferred from parameter names and descriptions, earning a baseline score of 3.

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

Purpose5/5

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

The description clearly states the verb 'Create' and the resource 'dialect-specific variants of a locale file'. It effectively distinguishes this tool from siblings like detect_dialect and list_dialects, which focus on detection and listing rather than creation.

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?

No guidance is provided on when to use this tool versus alternatives. There is no mention of prerequisites, typical scenarios, or comparison with sibling tools such as batch_translate_locales or translate_text.

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

search_glossaryB

Search the built-in glossary for technical and business terms

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesSearch query for glossary terms

TDQS

B3.4/5.0
Behavior2/5

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

No annotations are provided, and the description fails to disclose behavioral traits such as case sensitivity, fuzzy matching, pagination, or rate limits. For a search tool, these are important for proper use.

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

Conciseness5/5

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

The description is a concise single sentence with no redundancy. It is front-loaded with the action and resource.

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

Completeness2/5

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

Given the tool's simplicity and lack of output schema, the description should explain what the search returns (e.g., matches with definitions). It does not, leaving the agent uncertain about the output.

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

Parameters3/5

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

The schema has 100% coverage of the single parameter, and the description adds no additional meaning beyond what the schema already provides. Baseline score of 3 is appropriate.

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

Purpose5/5

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

The description clearly states the verb (Search) and the resource (built-in glossary for technical and business terms). It distinguishes the tool from siblings, which are all translation-related, making the purpose unambiguous.

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

Usage Guidelines3/5

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

The description implies usage for looking up glossary terms, but it does not provide explicit guidance on when to use this tool versus alternatives or when not to use it.

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

translate_api_docsB

Translate API documentation markdown with optimized handling for tables and lists

ParametersJSON Schema
NameRequiredDescriptionDefault
filePathYesPath to the API documentation markdown file
dialectNoSpanish dialect code (e.g., es-ES, es-MX, es-AR)
providerNoTranslation provider name (deepl, libre, mymemory)

TDQS

B3.4/5.0
Behavior2/5

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

With no annotations, the description carries the full burden but only mentions 'optimized handling' without detailing behavioral traits like idempotency, speed, or output format. It lacks essential context for a translation tool.

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

Conciseness5/5

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

A single, concise sentence that directly states the tool's purpose and key feature without extraneous text.

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

Completeness2/5

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

Given no output schema and multiple siblings, the description lacks completeness. It does not explain what happens with tables/lists, error handling, or how to interpret results.

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

Parameters3/5

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 no parameter-specific meaning beyond what the schema already provides.

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

Purpose5/5

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

The description clearly states 'translate API documentation markdown' as the action and resource, and highlights optimized handling for tables and lists, distinguishing it from sibling tools like translate_markdown.

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

Usage Guidelines3/5

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

The description implies usage for API documentation with tables/lists via 'optimized handling', but provides no explicit guidance on when to use this over siblings like translate_markdown or translate_text.

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

translate_code_commentC

Extract and translate code comments (basic text extraction)

ParametersJSON Schema
NameRequiredDescriptionDefault
codeYesSource code with comments to translate
dialectNoSpanish dialect code (e.g., es-ES, es-MX, es-AR)
providerNoTranslation provider name (deepl, libre, mymemory)

TDQS

C2.8/5.0
Behavior2/5

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

With no annotations present, the description must fully disclose behavioral traits. It mentions extraction and translation but fails to specify side effects (e.g., does it modify original code?), return format, or whether the translation is inserted back into code. The phrase 'basic text extraction' further undercuts clarity.

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

Conciseness3/5

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

The description is a single sentence, front-loaded with the main purpose, but the parenthetical '(basic text extraction)' is confusing and adds unnecessary ambiguity. While not verbose, it sacrifices clarity for brevity.

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

Completeness2/5

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

Given 3 parameters and no output schema or annotations, the description should explain the output format, default behaviors for optional parameters (dialect, provider), and scope of translation. It provides none of this, leaving the agent with significant gaps.

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

Parameters3/5

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

Schema coverage is 100%, so the input schema already provides clear parameter descriptions for code, dialect, and provider. The tool description adds no additional meaning or context beyond what the schema offers, earning the baseline score of 3.

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 'Extract and translate code comments (basic text extraction)' clearly states the action (extract and translate) and the resource (code comments), distinguishing it from sibling translation tools that target whole texts. However, the parenthetical '(basic text extraction)' introduces ambiguity about whether it only extracts or also translates.

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?

No guidance is provided on when to use this tool versus siblings like translate_text or translate_markdown. The description does not specify context, prerequisites, or alternatives, leaving the agent to infer that it is for code comments.

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

translate_markdownB

Translate a markdown file while preserving structure (code blocks, links, etc.)

ParametersJSON Schema
NameRequiredDescriptionDefault
filePathYesPath to the markdown file to translate
dialectNoSpanish dialect code (e.g., es-ES, es-MX, es-AR)
providerNoTranslation provider name (deepl, libre, mymemory)
formalNoUse formal tone (for languages that distinguish formal/informal)
informalNoUse informal tone (for languages that distinguish formal/informal)

TDQS

B3.2/5.0
Behavior3/5

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

No annotations provided, so the description carries the burden. It discloses that the tool preserves markdown structure, which is a key behavioral trait. However, it omits other important behaviors such as whether the file is overwritten or a new file created, error handling, or permission requirements.

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

Conciseness5/5

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

A single sentence that is front-loaded with the verb 'Translate', no unnecessary words, and efficiently conveys the core functionality.

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

Completeness2/5

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

Given no output schema and five parameters, the description fails to explain what the tool returns (e.g., translated file, translated content string). It also lacks information on side effects, failure modes, or prerequisites, leaving the agent underinformed.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all five parameters (filePath, dialect, provider, formal, informal). The tool description adds no additional parameter information beyond what the schema provides, meeting the baseline of 3.

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 clearly states the tool translates a markdown file and preserves structure (code blocks, links, etc.). It distinguishes from siblings like translate_text which handles plain text, but could more explicitly differentiate from translate_readme or other file-based tools.

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?

No guidance on when to use this tool versus alternatives like translate_text, translate_readme, or batch_translate_locales. The description only implies usage for markdown files but provides no exclusions or context for selecting this tool among many similar siblings.

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

translate_missing_keysB

Translate missing keys from base locale to target locale

ParametersJSON Schema
NameRequiredDescriptionDefault
basePathYesPath to the base locale file
targetPathYesPath to the target locale file
dialectNoSpanish dialect code (e.g., es-ES, es-MX, es-AR)
providerNoTranslation provider name (deepl, libre, mymemory)

TDQS

B3/5.0
Behavior2/5

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

With no annotations, the description carries full burden, but it only states 'translate missing keys' without disclosing behavioral traits like file overwriting, required file formats, or authentication needs.

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?

The description is a single, efficient sentence with no filler, though it could benefit from slightly more detail.

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

Completeness1/5

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

The description is very incomplete for a tool with 4 parameters and no output schema or annotations. It does not explain 'missing keys', the translation process, or expected output.

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

Parameters3/5

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

Schema coverage is 100%, so baseline is 3. The description adds no additional meaning beyond what the schema already provides for parameters.

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

Purpose5/5

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

The description clearly states the tool's purpose: translating missing keys from a base locale to a target locale. It uses a specific verb ('translate') and resource ('missing keys'), and distinguishes it from sibling tools like 'translate_text' that handle arbitrary text.

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?

No guidance is provided on when to use this tool versus alternatives (e.g., batch_translate_locales, detect_missing_keys). There is no mention of prerequisites or context.

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

translate_readmeB

Translate a README markdown file preserving structure

ParametersJSON Schema
NameRequiredDescriptionDefault
filePathYesPath to the README markdown file
dialectNoSpanish dialect code (e.g., es-ES, es-MX, es-AR)
providerNoTranslation provider name (deepl, libre, mymemory)
formalNoUse formal tone
informalNoUse informal tone

TDQS

B3.2/5.0
Behavior2/5

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

Only one behavioral trait disclosed: preserving structure. No information on expected side effects (e.g., file modification, required permissions, error handling, or format preservation beyond markdown). With no annotations, description falls short.

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

Conciseness5/5

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

Single sentence with no extraneous information. Immediately conveys core purpose and constraint.

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

Completeness2/5

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

Given no output schema, no annotations, and 5 parameters, description lacks critical context: output format (e.g., returns translated text, writes to file?), behavior on errors, and prerequisites (e.g., network access, API keys). Incomplete for a translation tool.

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

Parameters3/5

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

Schema description coverage is 100%, so schema already documents all parameters. The description adds no additional meaning or interaction details (e.g., mutual exclusivity of formal/informal, or effect of provider choice). Baseline 3 is appropriate.

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

Purpose5/5

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

Clearly states verb 'Translate', specific resource 'README markdown file', and key constraint 'preserving structure'. Distinguishes from sibling 'translate_markdown' which is more general, and other specific tools like 'translate_api_docs'.

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?

No guidance on when to use this tool vs alternatives such as translate_markdown or batch_translate_locales. No mention of prerequisites or context for use.

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

translate_textB

Translate text to a Spanish dialect

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesText to translate
dialectNoSpanish dialect code (e.g., es-ES, es-MX, es-AR)
providerNoTranslation provider name (deepl, libre, mymemory)
formalNoUse formal tone
informalNoUse informal tone

TDQS

B3.1/5.0
Behavior2/5

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

No annotations provided, and the description does not disclose behavioral traits such as idempotency, permissions, or side effects. For a translation tool, at minimum it should indicate it returns translated text.

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?

Single sentence, concise and front-loaded. Efficient, though could be slightly more informative without becoming verbose.

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

Completeness2/5

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

Description is too brief given 5 parameters and many siblings. It does not explain dialect limitations, the relationship between formal/informal, or the response structure (no output schema).

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

Parameters3/5

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

Schema coverage is 100%, so baseline is 3. The description adds no meaning beyond the schema's parameter descriptions; it only restates the tool's purpose.

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

Purpose5/5

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

The description uses specific verb 'Translate' and resource 'text', explicitly limiting to Spanish dialects. This clearly distinguishes from sibling tools like detect_dialect or list_dialects.

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?

No guidance on when to use this tool versus siblings like batch_translate_locales or check_formality. The description lacks any context about alternatives or exclusions.

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.

  1. 16 tool updatesv0.1.0
    • First observedapply_gender_neutral
    • First observedbatch_translate_locales
    • First observedcheck_formality
    • First observedcreate_bilingual_doc
    • First observeddetect_dialect
    • First observeddetect_missing_keys
    • First observedextract_translatable
    • First observedlist_dialects
    • First observedmanage_dialect_variants
    • First observedsearch_glossary
    • First observedtranslate_api_docs
    • First observedtranslate_code_comment
    • First observedtranslate_markdown
    • First observedtranslate_missing_keys
    • First observedtranslate_readme
    • First observedtranslate_text

TDQS

B3.4/5.0
Disambiguation4/5

Most tools have clearly distinct purposes, but there is some potential overlap among translate_markdown, translate_readme, and translate_api_docs; descriptions alleviate confusion slightly.

Naming Consistency5/5

All tools follow the verb_noun pattern in snake_case, making naming fully consistent and predictable.

Tool Count5/5

16 tools is well-scoped for a dialect translation server, covering translation, detection, management, and glossary without being excessive.

Completeness4/5

The tool set covers core translation, detection, and locale management needs, but could include a direct validation or export tool for full completeness.

Maintenance

ActivityActive
ResponsivenessResponsive

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

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/KyaniteLabs/DialectOS'

If you have feedback or need assistance with the MCP directory API, please join our Discord server