swiss-cultural-heritage-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| heritage_search_artistsA | Sucht Schweizer Künstler·innen in den SIKART-Daten (~17'000 Einträge). SIKART (Lexikon zur Kunst in der Schweiz, herausgegeben vom Schweizerischen
Institut für Kunstwissenschaft SIK-ISEA) dokumentiert historische und
zeitgenössische Kunstschaffende mit biografischen Grunddaten. Die Suche läuft
als CKAN-DataStore-Volltextsuche über alle Felder; mehrere Begriffe werden
UND-verknüpft. Liefert die exakte Suche keine Treffer, wird automatisch
breiter mit dem spezifischsten Begriff gesucht und das Resultat als
Args: params (ArtistSearchInput): - query (str | None): Name, Beruf oder Stichwort (z. B. 'Hodler') - region (str | None): Geburts-/Sterbeort oder Kanton (z. B. 'Basel') - limit (int): Max. Ergebnisse (Standard: 20) - offset (int): Paginierungs-Offset - response_format: 'markdown' oder 'json' Returns: str: Liste gefundener Künstler·innen mit Name, Lebensdaten, Kanton, Kurzbiografie. |
| heritage_get_artistA | Ruft den vollständigen SIKART-Datensatz zu einer Künstler·in ab. Args: params (ArtistDetailInput): - artist_id (str): SIKART-ID (HAUPTNR aus heritage_search_artists) - response_format: 'markdown' oder 'json' Returns: str: Vollständiges Profil mit Lebensdaten, Orten, Kurzbiografie und Links. |
| heritage_search_museum_datasetsA | Sucht Datensätze des Schweizerischen Nationalmuseums (SNM) auf opendata.swiss. Das SNM publiziert Sammlungsdaten als Open Data: Numismatik (~100'000 Münzen),
Siegelsammlung (~80'000 Objekte), Spezialsammlungen und weitere. Bei 0
exakten Treffern wird die Solr-Suche automatisch gelockert (OR-verknüpfte
Präfix-Wildcards) und das Resultat als Args: params (MuseumSearchInput): - query (str | None): Suchbegriff über Titel/Beschreibung - collection (str | None): Sammlungsfilter (z. B. 'numismatik') - limit / offset: Paginierung - response_format: 'markdown' oder 'json' Returns: str: Liste verfügbarer SNM-Datensätze mit Titel, Beschreibung und Download-URLs (CSV, XLSX, JSON). |
| heritage_browse_collectionA | Durchsucht Objekte innerhalb eines SNM-Sammlungsdatensatzes via CKAN DataStore. Voraussetzung: Resource-ID aus Args: params (CollectionBrowseInput): - resource_id (str): CKAN Resource-ID (aus heritage_search_museum_datasets) - query (str | None): Suchbegriff (z. B. 'Zürich', 'Karl der Grosse', 'Gold') - limit / offset: Paginierung - response_format: 'markdown' oder 'json' Returns: str: Liste von Sammlungsobjekten mit verfügbaren Feldern. |
| heritage_search_helveticatA | Durchsucht die Schweizerische Nationalbibliothek (Helveticat). Zwei Zugänge derselben Quelle, und der Aufruf wählt sie:
Die Trennung ist nicht Geschmack, sondern gemessen: SRU kennt die
OAI-Sets nicht ( Args:
params (HelvticatSearchInput):
- query (str | None): Suchbegriff (serverseitig ohne Returns: str: Liste von Publikationen mit Titel, Autor, Jahr, Schlagwörtern und Identifier. |
| heritage_list_nb_collectionsA | Listet verfügbare Sammlungen/Sets der Nationalbibliothek auf (OAI-PMH ListSets). Args: params (NbCollectionsInput | None): - response_format: 'markdown' (Standard) oder 'json' Returns: str: Liste aller OAI-PMH Sets mit Bezeichner (setSpec) und Name. |
| heritage_get_publicationA | Ruft die Metadaten einer Publikation der NB ab — ausgewählte MARC21-Felder. Die Quelle liefert MARCXML. Dieses Werkzeug bildet daraus eine Auswahl von Feldern auf Dublin-Core-ähnliche Schlüssel ab: Titel, Urheber·innen, Mitwirkende, Verlag, Erscheinungsjahr, Typ, Umfang, Sprache, Schlagwörter, Beschreibung, Rechte, Reihe und Identifier. Was NICHT enthalten ist: alles ausserhalb dieser Auswahl — Kontrollfelder,
die Ausgabebezeichnung (MARC 250), Erscheinungsverlauf, lokale Felder.
«Vollständige Metadaten» wäre also falsch, und die Antwort darf nicht als
der ganze Katalogsatz gelesen werden. Wer den braucht, nimmt den Permalink
aus Args: params (PublicationDetailInput): - identifier (str): OAI-ID aus heritage_search_helveticat - response_format: 'markdown' oder 'json' Returns: str: Ausgewählte, auf DC-Schlüssel normalisierte Felder — nicht der vollständige Katalogsatz. |
| heritage_cross_searchA | Durchsucht SIK-ISEA, SNM und NB gleichzeitig nach einem Begriff. Fächert auf drei Upstreams auf (i. d. R. > 2 s). Sofern der Client einen
Progress-Token gesendet hat, wird nach jeder abgeschlossenen Quelle
Args:
params (CrossSearchInput):
- query (str): Suchbegriff
- sources (list[str]): ['sik_isea', 'snm', 'nb'] (Standard: alle)
- limit_per_source (int): Max. Ergebnisse je Quelle (Standard: 5)
- response_format: 'markdown' (Standard) oder 'json'
ctx (Context): Vom MCP-SDK injiziert (Progress/Logging); bei direkten
Aufrufen ohne Request Returns: ResultEnvelope | str: Aggregierte Ergebnisse aus allen gewählten Quellen. |
| search_heritageA | Durchsucht Schweizer Gedächtnisinstitutionen (Memobase, Dodis) föderiert. Föderierte Fassade über zwei Quellen mit offenen, standardisierten
Schnittstellen: Memobase (audiovisuelles Kulturerbe, Linked-Open-Data-API)
und Dodis (Diplomatische Dokumente der Schweiz, JSON-REST/Solr). Bei
Jeder Treffer trägt Quelle, Permalink und Lizenz, wobei Metadaten- und Digitalisat-Lizenz getrennt ausgewiesen werden (sie fallen bei diesen Quellen auseinander). Es werden nur Metadaten und Links geliefert — keine geschützten Volltexte.
Args:
params (HeritageSearchInput):
- query (str): Suchbegriff
- collection: 'memobase' | 'dodis' | 'all'
- date_from/date_to: Jahr-Filter (clientseitig)
- media_type (str): Typ-Filter (clientseitig)
- limit/offset: Paginierung pro Quelle
- response_format: 'markdown' oder 'json'
ctx (Context): vom MCP-SDK injiziert (Progress/Warnungen); bei direktem
Aufruf Returns: ResultEnvelope | str: Aggregierte, normalisierte Treffer inkl. Provenienz. |
| get_heritage_itemA | Ruft die vollständigen Metadaten eines Objekts aus Memobase oder Dodis ab. Liefert Metadaten, Permalink und Lizenz (Metadaten- und Digitalisat-/Dokument- recht getrennt). Geschützte Volltexte (Dodis-Transkriptionen) werden nicht reproduziert — dafür verweist die Antwort auf den Permalink. Args: params (HeritageItemInput): - collection: 'memobase' oder 'dodis' - item_id (str): Objekt-ID aus search_heritage - response_format: 'markdown' oder 'json' Returns: ResultEnvelope | str: Objekt-Metadaten inkl. Provenienz und Lizenz. |
| list_heritage_collectionsA | Listet die Gedächtnisinstitutionen der föderierten Fassade und ihren Status auf. Discovery-Tool für Args: params (HeritageCollectionsInput | None): - response_format: 'markdown' (Standard) oder 'json' Returns: ResultEnvelope | str: Sammlungen mit Status, Protokoll, Auth und Lizenzen. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| heritage_research_artist | Strukturierter Recherche-Prompt zu einer Schweizer Künstler·in. Args: artist_name: Name der zu recherchierenden Künstler·in context: Forschungskontext (z. B. 'Unterricht Sek I', 'Ausstellung', 'Monografie') |
| heritage_find_educational_resources | Prompt zur Suche nach Bildungsressourcen aus Schweizer Kulturerbe-Quellen. Args: topic: Thema für den Unterricht (z. B. 'Mittelalter', 'Schweizer Kunst', 'Migration') school_level: Schulstufe (z. B. 'Primarstufe', 'Sekundarstufe I', 'Gymnasium') |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| sik_isea_overview | Übersicht SIK-ISEA: Datenquelle, Umfang und verfügbare Tools. |
| nb_collections_overview | Statische Übersicht der Nationalbibliothek-Sammlungen und ihrer zwei Zugänge. |
TDQS
Scored across 11 tools
The source-specific tools are clearly separated into search/detail pairs for SIKART, the National Library, the SNM, and the Memobase/Dodis facade. However, `heritage_cross_search` and `search_heritage` are both multi-source search tools covering different institutions, and `heritage_list_nb_collections` vs. `list_heritage_collections` have similar names, so descriptions are needed to avoid misselection.
Eight tools follow a `heritage_<verb>_<object>` pattern, but `search_heritage`, `get_heritage_item`, and `list_heritage_collections` reverse the order, breaking predictability. The verbs are specific and all names are readable snake_case, so the naming is mixed rather than chaotic.
11 tools is a well-scoped count for the stated purpose of searching Swiss cultural heritage sources. Each search tool has a corresponding detail/lookup tool, plus collection discovery and cross-search tools, without unnecessary redundancy.
The set covers search and detail for SIKART, the National Library, the National Museum datasets/objects, and the Memobase/Dodis facade, along with collection discovery and cross-searching. Minor gaps remain: there is no single-object retrieval for SNM objects beyond a browse query, and no unified cross-search across all five sources.