ablaut-mcp
OfficialClick on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@ablaut-mcpconjugate 'to speak' in French"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
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-mcpClaude 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 (suismatches 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 toolsconjugateConjugate a verbARead-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
| Name | Required | Description | Default |
|---|---|---|---|
| verb | Yes | The infinitive to conjugate | |
| language | No | Language code (ISO 639-1 like 'fr', ISO 639-3 like 'fra', or an English name like 'French'). Defaults to German. | de |
Output Schema
| Name | Required | Description |
|---|---|---|
| lang | Yes | |
| verb | Yes | |
| table | Yes | The conjugation table; fields are language-specific |
TDQS
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.
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.
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.
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.
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.
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 formARead-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.
| Name | Required | Description | Default |
|---|---|---|---|
| form | Yes | The conjugated form to look up | |
| language | Yes | Language code (ISO 639-1, ISO 639-3, or an English name) |
Output Schema
| Name | Required | Description |
|---|---|---|
| form | Yes | |
| matches | Yes |
TDQS
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.
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.
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.
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.
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.
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 languagesARead-onlyIdempotent
The 20+ languages ablaut conjugates, with their codes and maturity status (beta: verified at 100% against two gold lexicons; wip: known gaps).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| languages | Yes |
TDQS
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.
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.
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.
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.
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.
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.
3 tool updates
v0.3.2- First observed
conjugate - First observed
find_infinitive - First observed
list_languages
TDQS
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.
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.
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.
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
Related MCP Connectors
Verified, pay-per-use API tools for AI agents through one authenticated connection.
Transcribe audio & video to text for AI agents: 100+ languages, speaker labels, webhooks.
The agent-native cloud: database, functions, AI, storage, computers. 50 tools, one API key.
16 AI-native tools with dual SSE + streamable-http transport. Free tier available.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables 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.-
- AlicenseAqualityBmaintenanceThe 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.141,7678MIT
- AlicenseAqualityDmaintenancePersistent 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.42MIT
- AlicenseNot gradedqualityDmaintenanceProvision KYC-free, crypto-paid Nordic VPS and dedicated servers from any AI agent. Enables natural language hosting workflows including comparison, top-up, and provisioning of anonymous servers.MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ablaut-dev/ablaut-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server