norse

Grounds LLMs in real Old Norse: lemmas, mediopassive paradigms, English→Old Norse lookup.

使うべきか

品質と安全性

A
説明の品質
100%
スキーマの完全性
95%
命名の品質
80%
ポイズニングのリスク
100%
権限の一致
100%
プロトコルへの準拠
100%

ツール定義とプロトコルへの準拠に関する自動分析に基づいています。

コンテキストコスト

~4,853トークン数(ツール定義)
~27.1 KB一般的なレスポンスサイズ
注意への影響は大きい(128k コンテキストの 3.79%)

これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。

インストール

ワンクリックインストール

これを `claude_desktop_config.json` ファイルに追加してください:

{
  "mcpServers": {
    "norse": {
      "url": "https://norse.valksor.com/mcp"
    }
  }
}

リモートエンドポイント

https://norse.valksor.com/mcpstreamable-http

できること

ツール一覧

ツール(2)

🟢 読み取り専用🟡 書き込み🔴 削除⚪ 不明
🟢norse_search(query, search_language, include_forms, max_forms)

Look an Old Norse word up on Wiktionary and return its senses plus full declension/conjugation tables — attested content (including the verbs' mediopassive voice), not invented. Any form of the word works; an inflected query is resolved to its lemma automatically via previously cached paradigms and the result notes the resolution. With search_language='eng' the query is an English word instead: the result lists its per-sense Old Norse equivalents (the translations block) plus their expanded entries. Returns Markdown plus the same result as structuredContent matching the declared outputSchema. Results are cached server-side; first-time queries reach the live upstream politely and calls are rate limited — on a rate-limit error, wait a few seconds and retry. Content is from en.wiktionary.org (CC BY-SA 4.0 — attribute and share alike if republished).

入力スキーマ

{
  "type": "object",
  "properties": {
    "query": {
      "description": "The word to look up, in the language search_language names. Old Norse (default): a SINGLE Old Norse word, any form — an inflected form ('mǫnnum') is resolved to its lemma ('maðr') automatically via cached paradigms, and the result says so; diacritics are optional once a paradigm is cached ('madr' and 'mathr' both find maðr, 'monnum' finds mǫnnum). English (search_language='eng'): the English word whose Old Norse equivalents you want — multiword entries like 'apple tree' work.",
      "maxLength": 80,
      "minLength": 1,
      "title": "Query",
      "type": "string"
    },
    "search_language": {
      "$ref": "#/$defs/SearchLanguage",
      "default": "non",
      "description": "Language the query word is in: 'non' (default) looks the Old Norse word up directly; 'eng' finds the Old Norse equivalents of an English word (per-sense, from Wiktionary's translation tables) and returns their full entries. Glosses are in English either way."
    },
    "include_forms": {
      "default": true,
      "description": "When true (default), each match's full declension/conjugation table is returned INLINE — usable cases/tenses (and the verbs' mediopassive voice) in ONE call, no follow-up norse_get_inflections. Set false for a cheap screen of which entries exist. Bounded by a per-search cap — use max_forms to adjust per call. For eng queries this governs the expanded Old Norse entries; the per-sense translations list itself is always returned.",
      "title": "Include Forms",
      "type": "boolean"
    },
    "max_forms": {
      "anyOf": [
        {
          "maximum": 12,
          "minimum": 0,
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional override for how many inflection tables to expand this call (0–12). On an uncached query each table is one politely paced upstream fetch, so high values on cold queries are slow. Omit for the server default.",
      "title": "Max Forms"
    }
  },
  "required": [
    "query"
  ],
  "$defs": {
    "SearchLanguage": {
      "description": "The query language. ``non`` looks an Old Norse word up directly (any of its\nforms — an inflected query resolves via cached paradigms). ``eng`` searches in\nreverse: the English Wiktionary page for the query word lists per-sense Old\nNorse translations, and each distinct lemma is then looked up normally.",
      "enum": [
        "non",
        "eng"
      ],
      "title": "SearchLanguage",
      "type": "string"
    }
  },
  "title": "norse_searchArguments"
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "query": {
      "title": "Query",
      "type": "string"
    },
    "language": {
      "$ref": "#/$defs/SearchLanguage"
    },
    "found": {
      "description": "False when nothing matched. For an eng query, True means Old Norse translations were found — entries may still be empty when none of them could be expanded (see translations).",
      "title": "Found",
      "type": "boolean"
    },
    "handles": {
      "items": {
        "$ref": "#/$defs/InflectionHandle"
      },
      "title": "Handles",
      "type": "array"
    },
    "entries": {
      "items": {
        "$ref": "#/$defs/Entry"
      },
      "title": "Entries",
      "type": "array"
    },
    "forms_truncated": {
      "default": 0,
      "description": "How many handles did NOT get an inline table because the per-search cap was reached.",
      "title": "Forms Truncated",
      "type": "integer"
    },
    "translations": {
      "description": "Populated only for eng queries (always [] for non): the Old Norse terms each English sense translates to, in sense order. Entries/handles below are the expanded dictionary entries of those terms.",
      "items": {
        "$ref": "#/$defs/TranslationSense"
      },
      "title": "Translations",
      "type": "array"
    },
    "translations_truncated": {
      "default": 0,
      "description": "How many distinct translated lemmas were NOT expanded into entries because the per-search expansion cap was reached (they still appear under translations).",
      "title": "Translations Truncated",
      "type": "integer"
    },
    "search_method": {
      "default": "direct",
      "description": "How the match was found: 'direct' = the query itself matched; 'lemma_index' = an inflected form resolved via a previously cached paradigm; 'translations' = an English query resolved via Wiktionary translation tables.",
      "enum": [
        "direct",
        "lemma_index",
        "translations"
      ],
      "title": "Search Method",
      "type": "string"
    },
    "resolved_from": {
      "default": "",
      "description": "The original inflected query when resolved; else empty. non queries only — always empty for eng results.",
      "title": "Resolved From",
      "type": "string"
    },
    "resolved_lemma": {
      "default": "",
      "description": "The lemma actually searched when resolved; else empty. non queries only — always empty for eng results.",
      "title": "Resolved Lemma",
      "type": "string"
    },
    "source": {
      "default": "Wiktionary, the free dictionary (en.wiktionary.org), Old Norse entries. Wikimedia Foundation. Text available under CC BY-SA 4.0; attribution and share-alike required when republishing. (CC BY-SA 4.0)",
      "title": "Source",
      "type": "string"
    }
  },
  "required": [
    "query",
    "language",
    "found"
  ],
  "$defs": {
    "Entry": {
      "description": "One Old Norse entry on the page: the headword (page title) with one\npart-of-speech section's senses.",
      "properties": {
        "headword": {
          "title": "Headword",
          "type": "string"
        },
        "part_of_speech": {
          "default": "",
          "title": "Part Of Speech",
          "type": "string"
        },
        "entry_id": {
          "default": "",
          "description": "Page title — feed to norse_get_inflections.",
          "title": "Entry Id",
          "type": "string"
        },
        "word_class": {
          "default": "",
          "description": "POS section — feed to norse_get_inflections.",
          "title": "Word Class",
          "type": "string"
        },
        "senses": {
          "items": {
            "$ref": "#/$defs/Sense"
          },
          "title": "Senses",
          "type": "array"
        }
      },
      "required": [
        "headword"
      ],
      "title": "Entry",
      "type": "object"
    },
    "InflectionHandle": {
      "description": "A structured anchor for fetching a full paradigm: feed ``entry_id`` (the page\ntitle) + ``word_class`` (the POS section) to ``norse_get_inflections`` — or ask\n``search`` to include the table inline (``forms``).",
      "properties": {
        "entry_id": {
          "description": "Wiktionary page title — the lemma itself.",
          "title": "Entry Id",
          "type": "string"
        },
        "word_class": {
          "description": "Part-of-speech section, e.g. 'verb', 'noun'.",
          "title": "Word Class",
          "type": "string"
        },
        "context": {
          "default": "",
          "description": "Nearby headword / hint.",
          "title": "Context",
          "type": "string"
        },
        "pos_hint": {
          "default": "",
          "description": "Part-of-speech hint.",
          "title": "Pos Hint",
          "type": "string"
        },
        "forms": {
          "anyOf": [
            {
              "discriminator": {
                "mapping": {
                  "nominal": "#/$defs/NorseNominalParadigm",
                  "not_found": "#/$defs/ParadigmNotFound",
                  "verbal": "#/$defs/NorseVerbalParadigm"
                },
                "propertyName": "category"
              },
              "oneOf": [
                {
                  "$ref": "#/$defs/NorseNominalParadigm"
                },
                {
                  "$ref": "#/$defs/NorseVerbalParadigm"
                },
                {
                  "$ref": "#/$defs/ParadigmNotFound"
                }
              ]
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The full paradigm, populated when a search is asked to include forms. None when not requested or beyond the cap.",
          "title": "Forms"
        }
      },
      "required": [
        "entry_id",
        "word_class"
      ],
      "title": "InflectionHandle",
      "type": "object"
    },
    "NorseNominalParadigm": {
      "description": "Declension of a noun/adjective/etc.: case key → {singular, plural}.\n\nNoun tables split by definiteness, folded into the key as a prefix:\n'indefinite nominative', 'definite genitive'. Adjective tables split by gender\n(suffixed: 'nominative feminine') and come one per declension class and degree,\nfolded in as a caption-derived prefix: 'strong nominative feminine',\n'weak superlative accusative neuter', 'comparative dative masculine'.\n``category`` discriminates this from the verbal and not-found shapes — switch\non it before reading the body.",
      "properties": {
        "category": {
          "const": "nominal",
          "default": "nominal",
          "title": "Category",
          "type": "string"
        },
        "entry_id": {
          "title": "Entry Id",
          "type": "string"
        },
        "word_class": {
          "title": "Word Class",
          "type": "string"
        },
        "found": {
          "const": true,
          "default": true,
          "title": "Found",
          "type": "boolean"
        },
        "cases": {
          "additionalProperties": {
            "$ref": "#/$defs/NorseNumberForms"
          },
          "description": "Case key (lower-case: 'nominative', 'genitive', …; nouns prefix the definiteness — 'indefinite nominative'; adjectives prefix the caption-derived declension class/degree and suffix the gender — 'strong nominative feminine') → its singular/plural forms, in table order.",
          "title": "Cases",
          "type": "object"
        },
        "source": {
          "default": "Wiktionary, the free dictionary (en.wiktionary.org), Old Norse entries. Wikimedia Foundation. Text available under CC BY-SA 4.0; attribution and share-alike required when republishing. (CC BY-SA 4.0)",
          "title": "Source",
          "type": "string"
        }
      },
      "required": [
        "entry_id",
        "word_class",
        "cases"
      ],
      "title": "NorseNominalParadigm",
      "type": "object"
    },
    "NorseNumberForms": {
      "description": "A declension cell: the two number forms of one case key. Forms are verbatim\nnormalized Old Norse; alternates stay comma-separated as Wiktionary renders\nthem. A number the table doesn't give (defective paradigms) is an empty\nstring.",
      "properties": {
        "singular": {
          "default": "",
          "title": "Singular",
          "type": "string"
        },
        "plural": {
          "default": "",
          "title": "Plural",
          "type": "string"
        }
      },
      "title": "NorseNumberForms",
      "type": "object"
    },
    "NorseVerbalParadigm": {
      "description": "Conjugation of a verb, grouped the way Wiktionary's tables are: finite cells\nkeyed by mood and tense → person-and-number → form, plus the non-finite forms\n(infinitive and the participles). The mediopassive voice renders as its own\ntable and its keys carry a 'mediopassive ' prefix; active keys are bare.",
      "properties": {
        "category": {
          "const": "verbal",
          "default": "verbal",
          "title": "Category",
          "type": "string"
        },
        "entry_id": {
          "title": "Entry Id",
          "type": "string"
        },
        "word_class": {
          "title": "Word Class",
          "type": "string"
        },
        "found": {
          "const": true,
          "default": true,
          "title": "Found",
          "type": "boolean"
        },
        "finite": {
          "additionalProperties": {
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "description": "Mood and tense (lower-case: 'indicative present', 'subjunctive past', 'imperative present'; the mediopassive table's keys are prefixed — 'mediopassive indicative past') → person and number ('first singular' … 'third plural') → the form. Alternates are comma-separated; an em-dash cell (no such form) is omitted.",
          "title": "Finite",
          "type": "object"
        },
        "nonfinite": {
          "additionalProperties": {
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "description": "Non-finite form ('infinitive', 'present participle', 'past participle'; mediopassive-prefixed for that voice) → {'form': <the form>}.",
          "title": "Nonfinite",
          "type": "object"
        },
        "source": {
          "default": "Wiktionary, the free dictionary (en.wiktionary.org), Old Norse entries. Wikimedia Foundation. Text available under CC BY-SA 4.0; attribution and share-alike required when republishing. (CC BY-SA 4.0)",
          "title": "Source",
          "type": "string"
        }
      },
      "required": [
        "entry_id",
        "word_class",
        "finite",
        "nonfinite"
      ],
      "title": "NorseVerbalParadigm",
      "type": "object"
    },
    "ParadigmNotFound": {
      "description": "No inflection table for this page/POS (no Old Norse section, no table, or\nthe page doesn't exist). ``found`` is False and there is no body.",
      "properties": {
        "category": {
          "const": "not_found",
          "default": "not_found",
          "title": "Category",
          "type": "string"
        },
        "entry_id": {
          "title": "Entry Id",
          "type": "string"
        },
        "word_class": {
          "title": "Word Class",
          "type": "string"
        },
        "found": {
          "const": false,
          "default": false,
          "title": "Found",
          "type": "boolean"
        },
        "source": {
          "default": "Wiktionary, the free dictionary (en.wiktionary.org), Old Norse entries. Wikimedia Foundation. Text available under CC BY-SA 4.0; attribution and share-alike required when republishing. (CC BY-SA 4.0)",
          "title": "Source",
          "type": "string"
        }
      },
      "required": [
        "entry_id",
        "word_class"
      ],
      "title": "ParadigmNotFound",
      "type": "object"
    },
    "SearchLanguage": {
      "description": "The query language. ``non`` looks an Old Norse word up directly (any of its\nforms — an inflected query resolves via cached paradigms). ``eng`` searches in\nreverse: the English Wiktionary page for the query word lists per-sense Old\nNorse translations, and each distinct lemma is then looked up normally.",
      "enum": [
        "non",
        "eng"
      ],
      "title": "SearchLanguage",
      "type": "string"
    },
    "Sense": {
      "description": "One sense of an entry: the (HTML-stripped) Wiktionary definition line.",
      "properties": {
        "label": {
          "default": "",
          "title": "Label",
          "type": "string"
        },
        "gloss": {
          "title": "Gloss",
          "type": "string"
        },
        "examples": {
          "items": {
            "type": "string"
          },
          "title": "Examples",
          "type": "array"
        }
      },
      "required": [
        "gloss"
      ],
      "title": "Sense",
      "type": "object"
    },
    "TranslationSense": {
      "description": "One English sense (a translations table) and the Old Norse terms it offers.",
      "properties": {
        "sense": {
          "description": "The sense gloss the source table carries.",
          "title": "Sense",
          "type": "string"
        },
        "terms": {
          "items": {
            "$ref": "#/$defs/TranslationTerm"
          },
          "title": "Terms",
          "type": "array"
        }
      },
      "required": [
        "sense"
      ],
      "title": "TranslationSense",
      "type": "object"
    },
    "TranslationTerm": {
      "description": "One Old Norse word a translations table offers for an English sense.\n``word`` is the Wiktionary page title (what an ``eng`` search re-searches and\nwhat ``norse_get_inflections`` needs).",
      "properties": {
        "word": {
          "description": "Wiktionary page title — the lemma itself.",
          "title": "Word",
          "type": "string"
        },
        "display": {
          "default": "",
          "description": "Rendered form when it differs from the title.",
          "title": "Display",
          "type": "string"
        },
        "gender": {
          "default": "",
          "description": "Grammatical gender as marked, e.g. 'n'.",
          "title": "Gender",
          "type": "string"
        },
        "qualifier": {
          "default": "",
          "description": "Usage qualifier as marked, e.g. 'poetic'; else empty.",
          "title": "Qualifier",
          "type": "string"
        }
      },
      "required": [
        "word"
      ],
      "title": "TranslationTerm",
      "type": "object"
    }
  },
  "description": "The result of a dictionary search.",
  "title": "SearchResult"
}
🟢norse_get_inflections(entry_id, word_class)

Fetch the full declension (nominals) or conjugation (verbs — active AND mediopassive) tables for a lemma identified by a search result's inflection handle (entry_id + word_class). Use this only when a search ran without inline forms or left a match un-expanded — a default search already returns each match's table inline. Returns Markdown plus the table as structuredContent with the shape {"result": <paradigm>} per the declared outputSchema — switch on result.category ('nominal' | 'verbal' | 'not_found') before reading the body. Content from en.wiktionary.org (CC BY-SA 4.0).

入力スキーマ

{
  "type": "object",
  "properties": {
    "entry_id": {
      "description": "The Wiktionary page title (the lemma) from a search result's inflection handle, e.g. 'maðr', 'kasta'.",
      "maxLength": 80,
      "minLength": 1,
      "title": "Entry Id",
      "type": "string"
    },
    "word_class": {
      "description": "The part-of-speech section from a search result's inflection handle, e.g. 'verb', 'noun', 'adjective'.",
      "maxLength": 24,
      "minLength": 1,
      "pattern": "^[a-z ]+$",
      "title": "Word Class",
      "type": "string"
    }
  },
  "required": [
    "entry_id",
    "word_class"
  ],
  "title": "norse_get_inflectionsArguments"
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "result": {
      "discriminator": {
        "mapping": {
          "nominal": "#/$defs/NorseNominalParadigm",
          "not_found": "#/$defs/ParadigmNotFound",
          "verbal": "#/$defs/NorseVerbalParadigm"
        },
        "propertyName": "category"
      },
      "oneOf": [
        {
          "$ref": "#/$defs/NorseNominalParadigm"
        },
        {
          "$ref": "#/$defs/NorseVerbalParadigm"
        },
        {
          "$ref": "#/$defs/ParadigmNotFound"
        }
      ],
      "title": "Result"
    }
  },
  "required": [
    "result"
  ],
  "$defs": {
    "NorseNominalParadigm": {
      "description": "Declension of a noun/adjective/etc.: case key → {singular, plural}.\n\nNoun tables split by definiteness, folded into the key as a prefix:\n'indefinite nominative', 'definite genitive'. Adjective tables split by gender\n(suffixed: 'nominative feminine') and come one per declension class and degree,\nfolded in as a caption-derived prefix: 'strong nominative feminine',\n'weak superlative accusative neuter', 'comparative dative masculine'.\n``category`` discriminates this from the verbal and not-found shapes — switch\non it before reading the body.",
      "properties": {
        "category": {
          "const": "nominal",
          "default": "nominal",
          "title": "Category",
          "type": "string"
        },
        "entry_id": {
          "title": "Entry Id",
          "type": "string"
        },
        "word_class": {
          "title": "Word Class",
          "type": "string"
        },
        "found": {
          "const": true,
          "default": true,
          "title": "Found",
          "type": "boolean"
        },
        "cases": {
          "additionalProperties": {
            "$ref": "#/$defs/NorseNumberForms"
          },
          "description": "Case key (lower-case: 'nominative', 'genitive', …; nouns prefix the definiteness — 'indefinite nominative'; adjectives prefix the caption-derived declension class/degree and suffix the gender — 'strong nominative feminine') → its singular/plural forms, in table order.",
          "title": "Cases",
          "type": "object"
        },
        "source": {
          "default": "Wiktionary, the free dictionary (en.wiktionary.org), Old Norse entries. Wikimedia Foundation. Text available under CC BY-SA 4.0; attribution and share-alike required when republishing. (CC BY-SA 4.0)",
          "title": "Source",
          "type": "string"
        }
      },
      "required": [
        "entry_id",
        "word_class",
        "cases"
      ],
      "title": "NorseNominalParadigm",
      "type": "object"
    },
    "NorseNumberForms": {
      "description": "A declension cell: the two number forms of one case key. Forms are verbatim\nnormalized Old Norse; alternates stay comma-separated as Wiktionary renders\nthem. A number the table doesn't give (defective paradigms) is an empty\nstring.",
      "properties": {
        "singular": {
          "default": "",
          "title": "Singular",
          "type": "string"
        },
        "plural": {
          "default": "",
          "title": "Plural",
          "type": "string"
        }
      },
      "title": "NorseNumberForms",
      "type": "object"
    },
    "NorseVerbalParadigm": {
      "description": "Conjugation of a verb, grouped the way Wiktionary's tables are: finite cells\nkeyed by mood and tense → person-and-number → form, plus the non-finite forms\n(infinitive and the participles). The mediopassive voice renders as its own\ntable and its keys carry a 'mediopassive ' prefix; active keys are bare.",
      "properties": {
        "category": {
          "const": "verbal",
          "default": "verbal",
          "title": "Category",
          "type": "string"
        },
        "entry_id": {
          "title": "Entry Id",
          "type": "string"
        },
        "word_class": {
          "title": "Word Class",
          "type": "string"
        },
        "found": {
          "const": true,
          "default": true,
          "title": "Found",
          "type": "boolean"
        },
        "finite": {
          "additionalProperties": {
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "description": "Mood and tense (lower-case: 'indicative present', 'subjunctive past', 'imperative present'; the mediopassive table's keys are prefixed — 'mediopassive indicative past') → person and number ('first singular' … 'third plural') → the form. Alternates are comma-separated; an em-dash cell (no such form) is omitted.",
          "title": "Finite",
          "type": "object"
        },
        "nonfinite": {
          "additionalProperties": {
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "description": "Non-finite form ('infinitive', 'present participle', 'past participle'; mediopassive-prefixed for that voice) → {'form': <the form>}.",
          "title": "Nonfinite",
          "type": "object"
        },
        "source": {
          "default": "Wiktionary, the free dictionary (en.wiktionary.org), Old Norse entries. Wikimedia Foundation. Text available under CC BY-SA 4.0; attribution and share-alike required when republishing. (CC BY-SA 4.0)",
          "title": "Source",
          "type": "string"
        }
      },
      "required": [
        "entry_id",
        "word_class",
        "finite",
        "nonfinite"
      ],
      "title": "NorseVerbalParadigm",
      "type": "object"
    },
    "ParadigmNotFound": {
      "description": "No inflection table for this page/POS (no Old Norse section, no table, or\nthe page doesn't exist). ``found`` is False and there is no body.",
      "properties": {
        "category": {
          "const": "not_found",
          "default": "not_found",
          "title": "Category",
          "type": "string"
        },
        "entry_id": {
          "title": "Entry Id",
          "type": "string"
        },
        "word_class": {
          "title": "Word Class",
          "type": "string"
        },
        "found": {
          "const": false,
          "default": false,
          "title": "Found",
          "type": "boolean"
        },
        "source": {
          "default": "Wiktionary, the free dictionary (en.wiktionary.org), Old Norse entries. Wikimedia Foundation. Text available under CC BY-SA 4.0; attribution and share-alike required when republishing. (CC BY-SA 4.0)",
          "title": "Source",
          "type": "string"
        }
      },
      "required": [
        "entry_id",
        "word_class"
      ],
      "title": "ParadigmNotFound",
      "type": "object"
    }
  },
  "title": "norse_get_inflectionsOutput"
}

コミュニティ

このサーバーを評価する

エビデンス

最近の観測

検証済みバージョンは記録されていませんツール 2 件
検証済みバージョンは記録されていませんツール 2 件