Files
yourpart3/mcp/language-course-server
..

Language Course MCP Server

Model-Context-Protocol-Server zum Ergänzen und Abfragen von Sprachkurs-Inhalten: Glossar (Begriffe/Phrasen), neue Einträge speichern, Konversationsübungen als Rollenspiel-Prompts.

Liegt bewusst neben der YourPart-App (mcp/language-course-server/); Daten sind zunächst eine lokale JSON-Datei. Du kannst Inhalte später in backend/scripts/create-language-courses.js / Vocab-Modelle oder per API spiegeln.

Tools

Tool Zweck
search_terms Glossar durchsuchen (query, optional targetLang, nativeLang)
add_phrase Neue Phrase in glossary.json schreiben
conversation_practice Zufälliges Szenario zum Üben (optional topicHint)
export_glossary_snippet Letzte n Einträge als JSON für Export
llm_status Prüft, ob API-Key/Modell gesetzt sind (ohne Netz)
llm_chat Freier Chat mit dem LLM (userMessage, optional systemPrompt)
llm_language_tutor mode: dialogue (Rollenspiel in Zielsprache) oder evaluate (Feedback zur Antwort)

LLM-Anbindung (OpenAI-kompatibel)

Voraussetzung für llm_*: ein API-Key und optional Base-URL / Modell.

Variable Bedeutung
LANGUAGE_COURSE_LLM_API_KEY oder OPENAI_API_KEY Pflicht für LLM-Tools
LANGUAGE_COURSE_LLM_BASE_URL Leer = OpenAI-Default; z.B. http://127.0.0.1:11434/v1 (Ollama)
LANGUAGE_COURSE_LLM_MODEL Default: gpt-4o-mini

Lokal: cp .env.example .env und Key eintragen. Beim Start wird mcp/language-course-server/.env geladen (sofern vorhanden).

Cursor: dieselben Variablen im env-Block des MCP-Eintrags setzen (oder nur Pfad zur .env vermeiden und Keys dort nicht duplizieren dann Server per Wrapper starten, der dotenv lädt; unser Server lädt .env automatisch aus seinem Ordner).

Ollama-Beispiel:

LANGUAGE_COURSE_LLM_BASE_URL=http://127.0.0.1:11434/v1
LANGUAGE_COURSE_LLM_MODEL=llama3.2
LANGUAGE_COURSE_LLM_API_KEY=ollama

Daten

  • Standard: data/glossary.json (wird bei Bedarf angelegt).
  • Alternativ: Umgebungsvariable LANGUAGE_COURSE_MCP_DATA auf ein Verzeichnis setzen (dort liegt glossary.json).

Installation

cd mcp/language-course-server && npm install

Cursor einbinden

In den Cursor-Einstellungen unter MCP einen Server hinzufügen, z.B.:

{
  "mcpServers": {
    "language-course": {
      "command": "node",
      "args": ["/ABSOLUTER/PFAD/zu/YourPart3/mcp/language-course-server/src/server.mjs"],
      "env": {
        "LANGUAGE_COURSE_MCP_DATA": "/ABSOLUTER/PFAD/zu/YourPart3/mcp/language-course-server/data",
        "OPENAI_API_KEY": "sk-…"
      }
    }
  }
}

args und LANGUAGE_COURSE_MCP_DATA an deinen Rechner anpassen.

Manuell testen

cd mcp/language-course-server && npm run inspector

Öffnet den MCP Inspector; dort Tools ausprobieren.

Hinweis zur App

Die Sprachkurse in der App nutzen VocabCourse / vocabService (siehe backend/). Dieser MCP ist eine autororientierte Ergänzung für deinen Workflow in der IDE.

YourPart-Web: Unter Einstellungen → Sprachassistent (/settings/language-assistant) speichern Nutzer API-Key und Metadaten in community.user_param (Typen llm_settings / llm_api_key, Gruppe languageAssistant in type.settings) — verschlüsselt wie andere Profilparameter. Der lokale MCP nutzt weiterhin die Umgebungsvariablen hier; beides ist getrennt, bis ein Backend-Proxy die gespeicherten Werte nutzt.