API documentation

Traduttur Mediku exposes its English ⇄ Maltese medical dictionary as a free, read-only JSON API and as an MCP server for AI assistants. No API key, no sign-up.

Overview

All endpoints are GET, return application/json, and expose only published dictionary entries. CORS is open (Access-Control-Allow-Origin: *), so you can call them straight from a browser. Base path:

https://<your-site>/api/public

Dictionary responses are cached for 60 seconds; lexicon responses for one hour. Maltese diacritics (ħ, ġ, ż, ċ, għ) are accepted but never required — matching is diacritic-insensitive, so gilda finds ġilda.

GET /api/public/terms/{slug}

Fetch one entry by its stable slug, as returned in the slug field above. Responds 404 if the entry does not exist or is unpublished.

curl "https://<your-site>/api/public/terms/blood"

The body is a single entry object with the same shape as one item of the search response.

GET /api/public/lexicon

Linguistic enrichment from Ġabra, the open Maltese lexicon of the University of Malta: lemma, phonetic transcription, part of speech, Semitic root radicals, spelling variants, glosses and example sentences.

ParameterTypeNotes
wordstring, requiredThe word to look up.
from"maltese" | "english"Whether word is Maltese (default) or an English gloss.
curl "https://<your-site>/api/public/lexicon?word=deni"
curl "https://<your-site>/api/public/lexicon?word=fever&from=english"

Every response carries the required University of Malta attribution string. A 502 means the upstream Ġabra service was unreachable — retry with backoff.

Errors & rate limits

  • 400 — invalid query parameters. The body contains an error message and a details object naming the offending fields.
  • 404 — no published entry with that slug.
  • 500 — the dictionary was temporarily unavailable.
  • 502 — the upstream Ġabra lexicon did not answer.

There is no published request quota, but the API is offered on a fair-use basis. Cache responses on your side, respect the Cache-Control headers, and prefer paging with limit and offset over repeated full sweeps.

MCP server

The dictionary is also an MCP server, so ChatGPT, Claude, Cursor and Codex can look up Maltese medical vocabulary directly. The endpoint is public and needs no login:

https://<your-site>/mcp
  • translate_medical_term — exact translation of one term. Params: term, from (english | maltese).
  • search_medical_terms — fuzzy, two-way search. Params: query, direction, limit (≤50).
  • browse_medical_terms_by_letter — list a letter of the alphabet. Params: letter, limit (≤200), offset.
  • lookup_maltese_lexeme — Ġabra grammar, phonetics and spelling variants. Params: word, from.

Client configuration

{
  "mcpServers": {
    "traduttur-mediku": {
      "url": "https://<your-site>/mcp"
    }
  }
}

Attribution & terms of use

The API is free to use, including in commercial products, provided you credit Traduttur Mediku as the source of the translations and do not present the data as medical advice — it is a language reference to aid communication, not a clinical decision tool.

Data returned by /api/public/lexicon originates from Ġabra, and must be credited to the Language Technology Group, Institute of Linguistics and Language Technology, University of Malta. The attribution string is included in every lexicon response.

Spotted a wrong or missing translation? Use the suggest a term form. See also the privacy policy.