File: //opt/textanalyse/tools/german_synonyms_tool.py
# tools/german_synonyms_tool.py
import requests
def get_synonyms_de(word: str) -> list[str]:
"""
Ruft deutsche Synonyme von OpenThesaurus ab.
"""
url = "https://www.openthesaurus.de/synonyme/search"
params = {"q": word, "format": "application/json"}
resp = requests.get(url, params=params, timeout=5)
data = resp.json()
synonyms = []
for synset in data.get("synsets", []):
for term in synset.get("terms", []):
synonyms.append(term.get("term"))
# Duplikate entfernen und Reihenfolge erhalten
return list(dict.fromkeys(synonyms))