Skip to main content
Glama

ablaut-mcp

An MCP server that lets AI agents conjugate verbs in 20+ languages. Each tool call is one request to the hosted ablaut API, where the engine runs as native Rust: no local build, sub-millisecond compute. Set ABLAUT_API_URL to point at another instance.

The API is in early access and requires a key, passed via the ABLAUT_API_KEY environment variable. Request one at ablaut.dev (the API dialog).

Try the engine in the browser at ablaut.dev; full API and response-shape reference at ablaut.dev/api.

Setup

Claude Code:

claude mcp add ablaut -- npx -y @v4nn4/ablaut-mcp

Claude Desktop, Cursor, or any other MCP client:

{
  "mcpServers": {
    "ablaut": {
      "command": "npx",
      "args": ["-y", "@v4nn4/ablaut-mcp"]
    }
  }
}

Related MCP server: APIClaw

Tools

  • conjugate (verb, language): the full conjugation table for an infinitive, covering every simple and composed tense of the language's written standard. Language codes are ISO 639-1 (fr), ISO 639-3 (fra), or English names (French), case-insensitive.

  • find_infinitive (form, language): reverse lookup — the infinitive(s) a conjugated form belongs to, with the slots it occupies (suis matches both être and suivre).

  • list_languages: supported languages and their maturity status.

Languages

German, French, Spanish, Portuguese, Italian, Romanian, Swedish, English, Danish, Czech, Slovenian, Estonian, Finnish, and Irish. Every language is validated against two independent gold lexicons; see the ablaut repository for per-language accuracy and adjudication logs.

Hosted API

We are building a hosted conjugation API (REST and remote MCP): sub-millisecond responses, one endpoint for all languages. Interested? Tell us at ablaut.dev.

License

MIT OR Apache-2.0.

Available Tools

3 tools
conjugateConjugate a verbA
Read-onlyIdempotent

Full conjugation table for a verb in one of 20+ languages. Input is the infinitive (e.g. 'aufstehen', 'appeler', 'vorbi'); the result covers the language's written standard, validated against two independent gold lexicons. Field reference: https://www.ablaut.dev/api

ParametersJSON Schema
NameRequiredDescriptionDefault
verbYesThe infinitive to conjugate
languageNoLanguage code (ISO 639-1 like 'fr', ISO 639-3 like 'fra', or an English name like 'French'). Defaults to German.de

Output Schema

ParametersJSON Schema
NameRequiredDescription
langYes
verbYes
tableYesThe conjugation table; fields are language-specific

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered. The description adds valuable behavioral context beyond annotations: the result covers the 'written standard' and is 'validated against two independent gold lexicons,' plus a field reference URL. This helps set expectations about output reliability and structure.

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 three sentences with no filler: it states the core function, gives input examples, and then adds a key detail about scope plus a reference link. Every sentence earns its place.

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

Completeness5/5

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

With an output schema present, return values need no explanation. The description covers input format, language scope, output standards, validation, and a field reference. Nothing an agent needs to call the tool correctly 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?

Schema coverage is 100%, so the schema already documents both parameters. The description reinforces that 'verb' is an infinitive with examples, but adds no new semantics beyond the schema. 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?

The description begins with a precise verb+resource statement: 'Full conjugation table for a verb in one of 20+ languages.' It clearly distinguishes itself from the sibling tools find_infinitive and list_languages by focusing on producing conjugations from an infinitive input.

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 clearly states the required input condition ('Input is the infinitive') and gives concrete examples, making the usage context explicit. It does not explicitly mention when not to use it or route to siblings, but the context is clear enough for an agent to choose this tool for conjugation tasks.

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

find_infinitiveFind the infinitive of a conjugated formA
Read-onlyIdempotent

Reverse lookup: given any conjugated form and a language, returns the infinitive(s) whose paradigm contains it, with the slots it occupies (e.g. 'suis' in French matches both être and suivre). Full coverage for fr/es/de/en; irregular forms in all 20+ languages.

ParametersJSON Schema
NameRequiredDescriptionDefault
formYesThe conjugated form to look up
languageYesLanguage code (ISO 639-1, ISO 639-3, or an English name)

Output Schema

ParametersJSON Schema
NameRequiredDescription
formYes
matchesYes

TDQS

A4.5/5.0
Behavior5/5

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

Given that annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, the safety profile is covered. The description adds valuable behavioral context beyond the annotations: it returns multiple possible infinitives, reports the slots the form occupies, includes coverage caveats for fr/es/de/en, and notes irregular forms are handled across all languages.

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 two sentences with no wasted words. It front-loads the core purpose with 'Reverse lookup', then immediately explains the return behavior and gives a clarifying example. The coverage note at the end is concise and useful, and every sentence earns its place.

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

Completeness5/5

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

For a simple read-only two-parameter lookup with a full schema and an output schema present, the description is complete. It explains what the tool returns, how it handles ambiguity, what coverage to expect, and which languages are supported. Nothing essential is missing for an agent to invoke it correctly.

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%, and both parameters already have clear descriptions in the schema ('The conjugated form to look up' and 'Language code'). The description reinforces this but does not add meaningful new parameter-level detail beyond what the schema already provides, so the 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 opens with 'Reverse lookup', which names a specific operation and resource: converting a conjugated form into its infinitive(s). It also distinguishes this from the sibling tool 'conjugate' by clearly stating the direction of the lookup, and provides a concrete ambiguous example ('suis' matching both être and suivre), so an agent can confidently tell it apart.

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 makes the usage context explicit: use this when you have a conjugated form and want the infinitive(s). It does not explicitly name alternatives or exclusion conditions, but the 'reverse lookup' framing plus the sibling name 'conjugate' make the appropriate use case clear enough.

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

list_languagesList supported languagesA
Read-onlyIdempotent

The 20+ languages ablaut conjugates, with their codes and maturity status (beta: verified at 100% against two gold lexicons; wip: known gaps).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
languagesYes

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already establish readOnly/idempotent/non-destructive behavior. The description adds meaningful context by defining maturity semantics (beta: verified at 100% against two gold lexicons; wip: known gaps) and stating the scope of 20+ languages. No contradiction with annotations.

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?

A single compact sentence that front-loads the language count and then defines the maturity values. However, the phrasing 'languages ablaut conjugates' is grammatically unclear, slightly hurting the structure.

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

Completeness5/5

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

For a zero-parameter list endpoint with an output schema and full safety annotations, the description covers the essential return contents (languages, codes, maturity) and the meaning of statuses. Nothing an agent needs to decide whether to invoke it is missing.

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 are no parameters, so parameter documentation is not needed; the schema coverage is 100% by default. The description appropriately focuses on the data the tool returns rather than input semantics.

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 title and description clearly identify this as a listing tool for the 20+ languages Ablaut supports, including codes and maturity status. This distinguishes it from the sibling conjugation tools, though the description's grammar ('languages ablaut conjugates') is awkward and it never explicitly says 'returns a list'.

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 call this tool versus conjugate or find_infinitive. Usage must be inferred from the title and sibling names, so an agent gets no explicit routing 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. 3 tool updatesv0.3.2
    • First observedconjugate
    • First observedfind_infinitive
    • First observedlist_languages

TDQS

A4.3/5.0
Disambiguation5/5

Each tool has a clearly distinct role: conjugate produces full paradigms, find_infinitive maps inflected forms back to infinitives, and list_languages provides metadata. There is no overlap or ambiguity between them.

Naming Consistency5/5

All tool names follow a consistent verb_object pattern in lowercase snake_case: conjugate, find_infinitive, list_languages. The naming is predictable and matches the action each tool performs.

Tool Count5/5

Three tools is well-scoped for a conjugation-focused server: one for the primary action, one for reverse lookup, and one for language metadata. Each tool earns its place without unnecessary duplication.

Completeness5/5

For a read-only conjugation reference domain, the tool set is complete: it lists available languages, produces full conjugation tables, and supports reverse lookup from inflected forms. No critical operation or workflow dead end is missing.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI agents to dynamically discover and invoke containerized tools that can be registered at runtime without redeployment. Built on Cloudflare Workers with scale-to-zero containers for secure, isolated tool execution.
    -
  • A
    license
    A
    quality
    B
    maintenance
    The API layer for AI agents. World's biggest API index with 22,000+ APIs and growing. Agents discover and call APIs at runtime with semantic search, structured metadata, and 18 Direct Call APIs including AI providers.
    14
    1,767
    8
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Persistent memory API for AI agents — store, recall, and inject semantically-searchable context across sessions. EU-hosted, GDPR-compliant. Supports Claude, Cursor, Cline, and any MCP-compatible client.
    4
    2
    MIT

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/ablaut-dev/ablaut-mcp'

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