Eldertongue
概要
作者による説明(英語の原文)
Old English dictionary over MCP: headwords, inflection tables, form ID, Beowulf citations.
PopNx MCPの3つの柱
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
- 利用者の声iレビューはまだありませんレビューは今後のステップで、アカウント機能と一緒に始まります
- 私たちの基本チェックi3項目中3項目に合格公開情報からチェック。コードはまだスキャンしていません
- 利用状況iとても新しい★ –
できること
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
- 接続方法: クラウドで動く
- トランスポート: Streamable HTTP
- カテゴリ: 検索・AIの記憶
インストール
使っているAIアプリを選んで、設定をコピーしてください。
インストールの前に
- 基本チェック:3項目中3項目に合格
- 作者のサーバーで動きます。あなたが頼んだ内容は、作者のサーバーを通ります。
- できること:5件(ツール) lookup_headword, inflect, identify_form, english_to_old_english …
- レジストリには、入力が必要なキーは載っていません。
必要なもの
- クラウドで動くインストール不要。インターネット経由でつながります
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
ウェブ、デスクトップ、モバイルのClaudeで使えます:
- Settings → Connectors を開く
- Add custom connector を押す
- 下のアドレスを貼り付けて Add を押す
- サインインを求められたら、作者のサービスにサインインする
https://eldertongue.com/mcpターミナルでこれを実行します
claude mcp add --transport http eldertongue https://eldertongue.com/mcpまたは、設定を自分でコピーする
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"eldertongue": {
"url": "https://eldertongue.com/mcp"
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
または、設定を自分でコピーする
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"eldertongue": {
"type": "http",
"url": "https://eldertongue.com/mcp"
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
ChatGPTがつなげるのは、インターネット上のサーバーだけです:
- ウェブ版のChatGPTを開き → Settings → Connectors (Apps)
- Create または Add を押す(プランによっては、先に Advanced で Developer mode をオンにする必要があります)
- 下のアドレスを貼り付け、名前を付けて保存する
- サインインを求められたら、作者のサービスにサインインする
https://eldertongue.com/mcpメニューの名前は、プランや時期によって少し違うことがあります。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
できること
ツールの名前と説明は、サーバーが2026年11月6日に返したそのままの内容です。書いたのは作者で、私たちではありません。プレーンテキストとして表示しています。
lookup_headwordLook up an Old English headword (macrons optional) in the eldertongue dictionary. Returns senses, IPA, syllables, part of speech, gender, noun declension / verb class, etymology, and the eldertongue.com page URL.
inflectReturn the full declension (nouns/adjectives) or conjugation (verbs) table for an Old English headword. Every word form carries an anchor URL into the eldertongue.com entry page.
identify_formGiven any inflected form (e.g. cyninges, band, gōdra), return the headwords it could belong to and the grammatical reading (case, number, gender, person, tense, mood…) of each.
english_to_old_englishGiven a modern English word (e.g. king, ship, write), list Old English headwords whose definitions mention it, with a score, part of speech, gloss, and the eldertongue.com page URL for each.
beowulf_occurrencesGiven an Old English headword, return every line of Bēowulf that carries it: the line numbers, the line text, the spellings used, and a link to the poem line on eldertongue.com.
基本チェックi
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月10日にチェック
- ✓ 合格
作者とリポジトリが一致
レジストリ名は、リポジトリを所有するGitHubアカウント gowinder で確認済みです
- … 未チェック
今もメンテナンスされている
このリポジトリはまだGitHubから読み取っていません
- … 未チェック
ライセンスがある
このリポジトリはまだGitHubから読み取っていません
- ✓ 合格
エンドポイントが応答する
83ミリ秒で応答(HTTP 200)
- – 対象外
OAuthでサインイン
サインイン不要
- ✓ 合格
ツールの説明に隠れた指示がない
5件のツールの説明を読み、AIへの隠れた指示は見つかりませんでした
検索・AIの記憶のほかのサーバーとの比較i
- このカテゴリのほかの5832件のうち0%よりスターが多い
- このカテゴリのほかの5832件のうち88%より最近レジストリに公開
- 基本チェックの結果が、このカテゴリのほかの5832件のうち100%と同じかそれ以上
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
よくある質問
Eldertongueは安全ですか?
当てはまる基本チェック3項目のうち3項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
どんなキーやコードが必要ですか?
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
パソコンで動きますか、それともクラウドですか?
作者のクラウドで動きます。インストール不要でインターネット経由でつながりますが、送った内容は作者のサーバーを通ります。
今もメンテナンスされていますか?
GitHubリポジトリの最終更新は–、最新バージョン(1.0.0)がレジストリに届いたのは5 日前です。
どのアプリで使えますか?
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。URLでつながるので、リモートMCPサーバーに対応したアプリ(開発者モードのChatGPTなど)でも使えます。
代わりに使えるものは?
同じカテゴリには:Context7, Codebase Memory, Exa
代わりの候補
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Codebase Memory
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Exa
Connect AI agents to Exa for web search, content fetching, and multi-step research.
作者のREADME
READMEを開く
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
eldertongue — Old English dictionary MCP server
A remote Model Context Protocol server that gives LLM agents and editors read-only access to eldertongue.com, an Old English (Anglo-Saxon) dictionary built from Wiktionary data.
The dictionary covers roughly 14,000 headword pages, plus reverse Modern English → Old English lookup and a full Bēowulf verse index. This repository holds the public-facing documentation, client configuration samples, and an agent skill for the hosted MCP endpoint. The server itself is a hosted, managed service — there is no code to run here.
A human-readable overview of the server — the five tools, client setup, limits and licence — is at https://eldertongue.com/mcp-server.
Who it's for
- Agents and assistants that need to look up, inflect, or disambiguate Old English words and want citations back to a stable page URL.
- Editors and IDEs (Claude Desktop, Claude Code, Cursor, VS Code) that speak MCP and want a ready-made reference tool for historical linguistics.
- Developers who prefer plain REST over MCP — every tool has a same-origin REST equivalent (see the table below).
If you only need to read a definition by hand, the website itself is the fastest route. This endpoint exists so a program can get structured, citable data.
Project
| Website | https://eldertongue.com |
| MCP endpoint | https://eldertongue.com/mcp (Streamable HTTP, no auth) |
| Repository | https://github.com/gowinder/eldertongue-mcp |
| MCP Registry | io.github.gowinder/eldertongue (listing) |
| Code licence | MIT (this repository, see LICENSE) |
| Data licence | CC BY-SA 4.0 (dictionary content) |
| Contact | |
| Logo | logo-512.png · logo-1024.png |
Packaging
This repository is also a portable Agent Plugins package: plugin.json holds the manifest, mcp.json declares the hosted Streamable HTTP server, and skills/old-english-lookup/ contains the agent skill. Clients that implement the format can load the MCP server and the skill straight from the repository URL.
server.json is the Official MCP Registry manifest for the hosted endpoint; it is published as io.github.gowinder/eldertongue (version 1.0.0, streamable-http).
Endpoints
| Purpose | URL | Notes |
|---|---|---|
| MCP server | https://eldertongue.com/mcp | Streamable HTTP transport, read-only, no auth |
| OpenAPI 3.1 | https://eldertongue.com/openapi.json | Machine-readable description of the REST API |
| REST — headword lookup | GET /api/lookup?word= | Same data as lookup_headword |
| REST — inflection | GET /api/inflect?word= | Same data as inflect |
| REST — identify a form | GET /api/identify?form= | Same data as identify_form |
| REST — English → Old English | GET /api/english?word= | Same data as english_to_old_english |
| REST — Bēowulf index | GET /api/beowulf?word= | Same data as beowulf_occurrences |
| REST — health | GET /api/health | Liveness check |
All REST paths are rooted at https://eldertongue.com.
Tools
The MCP server exposes five tools. All take a single string argument and return JSON.
Every successful tools/call returns two `text` content blocks:
- the tool result as pretty-printed JSON — the objects shown under each tool below;
- a fixed source line you can pass straight through to a reader:
Source: Eldertongue — Old English Dictionary, https://eldertongue.com (full declension tables, examples and Beowulf context). Please cite https://eldertongue.com when using this data.
A result with "found": false is still a success, so it carries the same two blocks. Only an error (isError: true) differs: it returns a single text block holding Error: … and no source line.
1. lookup_headword
Look up an Old English headword. Input { "word": string } — the headword, with or without macrons (cyning or cȳning). Returns whether it was found, the normalized headword, canonical page and Wiktionary URLs, part of speech, grammatical gender(s), IPA, syllable split, declension or verb class, etymology, and a list of senses.
Input:
{ "word": "cyning" }
Response JSON (first content block, excerpt):
{
"found": true, "headword": "cyning", "pageUrl": "https://eldertongue.com/word/cyning", "wiktionaryUrl": "https://en.wiktionary.org/wiki/cyning#Old_English", "partOfSpeech": "noun", "genders": ["masculine"], "ipa": ["/ˈky.ninɡ/", "[ˈky.niŋɡ]"], "syllables": ["ˈky", "ninɡ"], "declension": { "label": "strong a-stem", "href": "/declension/strong-a-stem" }, "verbClass": null, "etymology": "From Proto-West Germanic *kuning, from Proto-Germanic *kuningaz, ultimately from Proto-Indo-European *ǵenh₁- (\"to procreate\"). Equivalent to cynn + -ing.", "senses": [ { "definition": "king", "tags": [] } ], "senseCount": 1, "indexable": true }
senses[] items have definition and tags. verbClass is populated for verbs and null otherwise. indexable reflects whether the entry is a full indexed headword page.
2. inflect
Return the full declension or conjugation table for a word. Input { "word": string }. The response has a top-level found / hasInflection flag and an inflection[] array — one entry per part-of-speech reading that has a table. Each entry carries a partOfSpeech, a paradigmKind, one or more tables, and a flat cells list; every inflected form has an anchor URL of the shape https://eldertongue.com/word/ # .
Input:
{ "word": "cyning" }
Response JSON (first content block, excerpt):
{
"found": true, "headword": "cyning", "pageUrl": "https://eldertongue.com/word/cyning", "hasInflection": true, "inflection": [ { "partOfSpeech": "noun", "paradigmKind": "noun", "tables": [ { "title": "Declension", "kind": "noun", "cols": ["Singular", "Plural"], "groups": [ { "title": null, "rows": [ { "label": "Nominative", "cells": [ { "label": "nominative singular", "forms": [{ "form": "cyning", "url": "https://eldertongue.com/word/cyning#nom-sg" }] }, { "label": "nominative plural", "forms": [{ "form": "cyningas", "url": "https://eldertongue.com/word/cyning#nom-pl" }] } ] }, { "label": "Genitive", "cells": [ { "label": "genitive singular", "forms": [{ "form": "cyninges", "url": "https://eldertongue.com/word/cyning#gen-sg" }] }, { "label": "genitive plural", "forms": [{ "form": "cyninga", "url": "https://eldertongue.com/word/cyning#gen-pl" }] } ] } ] } ] } ], "cells": [ { "id": "nom-sg", "label": "nominative singular", "forms": [{ "form": "cyning", "url": "https://eldertongue.com/word/cyning#nom-sg" }] }, { "id": "nom-pl", "label": "nominative plural", "forms": [{ "form": "cyningas", "url": "https://eldertongue.com/word/cyning#nom-pl" }] } ] } ] }
Structure in brief: inflection[] → tables[] → groups[] → rows[] → cells[], where each row cell is { label, forms: [{ form, url }] | null }. The flat cells[] array — each item { id, label, forms: [{ form, url }] } — is convenient when you just want every form with its id.
3. identify_form
Identify an arbitrary inflected form — e.g. cyninges — and return the analyses that could explain it. Input { "form": string }. There may be more than one candidate analysis.
Input:
{ "form": "cyninges" }
Response JSON (first content block, excerpt):
{
"analyses": [ { "lemma": "cyning", "lemmaPageUrl": "https://eldertongue.com/word/cyning", "cellId": "gen-sg", "tag": "genitive singular", "grammar": { "case": "genitive", "number": "singular" }, "formUrl": "https://eldertongue.com/word/cyning#gen-sg" } ] }
grammar includes only the grammatical categories the form actually marks — here case and number; categories that don't apply are omitted rather than nulled.
4. english_to_old_english
Reverse lookup: given a Modern English word, return ranked Old English candidates. Input { "word": string }. Candidates are ranked by a data-pipeline score; each carries a short gloss and a link to its headword page, and the response includes the reverse-lookup page URL.
Input:
{ "word": "king" }
Response JSON (first content block, excerpt):
{
"candidates": [ { "lemma": "cyning", "display": "cyning", "partOfSpeech": "noun", "score": 24, "gloss": "king", "pageUrl": "https://eldertongue.com/word/cyning" }, { "lemma": "Friscyning", "display": "Friscyning", "partOfSpeech": "noun", "score": 15, "gloss": "king of Frisia", "pageUrl": "https://eldertongue.com/word/~friscyning" }, { "lemma": "leodcyning", "display": "leodcyning", "partOfSpeech": "noun", "score": 12, "gloss": "king, ruler", "pageUrl": "https://eldertongue.com/word/leodcyning" } ], "pageUrl": "https://eldertongue.com/english/king" }
5. beowulf_occurrences
Find where a word appears in Bēowulf. Input { "word": string }. Returns how many times and on how many lines the word occurs, a per-spelling breakdown, and a list of occurrences with line number, verse text, and a deep link to the line (https://eldertongue.com/beowulf#l ). occurrencesTotal is the full count; occurrences[] may be a capped window of them.
Input:
{ "word": "cyning" }
Response JSON (first content block, excerpt):
{
"times": 51, "lines": 51, "forms": [ { "form": "cyning", "times": 38, "lines": 38 }, { "form": "cyninges", "times": 7, "lines": 7 }, { "form": "cyninga", "times": 3, "lines": 3 }, { "form": "cyninge", "times": 3, "lines": 3 } ], "occurrences": [ { "line": 11, "text": "gomban gyldan: þæt wæs gōd cyning!", "forms": ["cyning"], "url": "https://eldertongue.com/beowulf#l11" } ], "occurrencesTotal": 51 }
Client configuration
The endpoint speaks MCP over Streamable HTTP at https://eldertongue.com/mcp. There is nothing to install and no key to set. Copy the sample for your client from configs/ or use the snippet below.
Claude Desktop and Claude Code
Claude Desktop reads an mcpServers block from its config file (~/Library/Application Support/Claude/claude_desktop_config.json on macOS, %APPDATA%\Claude\claude_desktop_config.json on Windows):
{
"mcpServers": { "eldertongue": { "url": "https://eldertongue.com/mcp" } } }
Claude Code adds the same remote server from the command line:
claude mcp add --transport http eldertongue https://eldertongue.com/mcp
The equivalent config lives in .mcp.json at your project root:
{
"mcpServers": { "eldertongue": { "type": "http", "url": "https://eldertongue.com/mcp" } } }
Cursor
Add the server to .cursor/mcp.json in your project (or the global Cursor MCP file). Cursor uses the mcpServers key:
{
"mcpServers": { "eldertongue"
冒頭だけを表示しています。続きはリポジトリで読めます