swissco CLI und MCP-Server

Schweizer Firmendaten aus dem Terminal oder für einen KI-Agenten: Handelsregister, SHAB, öffentliche Beschaffung, FINMA, GLEIF und ARAMIS, per Befehl oder als neun MCP-Tools.

Installation

Sie können swissco direkt ohne Installation ausführen oder dauerhaft installieren:

uvx swissco --help # run without installing pip install swissco # or install via pip

Benötigt Python 3.14 oder neuer. Auf PyPI verfügbar als swissco.

MCP-Server

swissco-mcp stellt dieselben Daten einem KI-Assistenten über das Model Context Protocol bereit. Seine neun Tools lesen nur: Sie finden eine Firma über ihre UID, durchsuchen das Handelsregister nach Firmenname oder Zweck, lesen SHAB-Publikationen, durchsuchen simap-Ausschreibungen, prüfen die FINMA-Liste, lösen einen LEI auf und finden vom Bund geförderte Forschung. Zugangsdaten braucht es keine.

In Claude Code genügt ein Befehl:

claude mcp add swissco -- uvx swissco-mcp

Claude Desktop, Cursor und andere Clients mit JSON-Konfiguration verwenden diesen Block:

{ "mcpServers": { "swissco": { "command": "uvx", "args": ["swissco-mcp"] } } }

Der Server läuft über stdio und benötigt Python 3.14 oder neuer. Er ist auf PyPI als swissco-mcp veröffentlicht, auf npm als Launcher (npx -y swissco-mcp) und in der offiziellen MCP-Registry als ch.prospex/swissco.

Tool Was es liefert
swissco_lookupAlles, was das Handelsregister zu einer Firma publiziert, auf Wunsch mit FINMA-Bewilligung und LEI
swissco_searchFirmen, deren Firmenname oder Zweck einen Begriff enthält
swissco_publicationsHandelsregisterpublikationen im SHAB für einen Zeitraum
swissco_eventsDie Registerereignisse einer Firma, jedes mit der UID der Publikation abgeglichen
swissco_tendersAuf simap publizierte Beschaffungsprojekte
swissco_vendorOb eine Firma ein Anbieterprofil auf simap hat, und was darin steht
swissco_finmaInstitute auf der FINMA-Liste der bewilligten Banken und Wertpapierhäuser
swissco_leiDer LEI einer Firma, die Einheit, die sie konsolidiert, und die Einheit an der Spitze dieser Kette
swissco_researchVom Bund geförderte Forschungsprojekte, Innosuisse und SNF eingeschlossen

Befehle

swissco lookup <UID>

Vollständiger Handelsregistereintrag eines Unternehmens: Name, UID, Rechtsform, Gemeinde, Adresse und Zweck. Mit --finma erhalten Sie zusätzlich den FINMA-Bewilligungstyp und die Aufsichtskategorie, mit --lei den Legal Entity Identifier und die Konzernstruktur aus GLEIF.

$ swissco lookup CHE-105.805.080 Name Nespresso SA UID CHE-105.805.080 Legal form AG Municipality Lausanne Canton VD

swissco search <query>

Suchen Sie nach dem eingetragenen Firmennamen oder im Unternehmenszweck. Die Ergebnisse lassen sich nach Kanton oder Rechtsform filtern.

$ swissco search "solar energy" --canton BE --format csv uid,name,legal_form,municipality,canton CHE-114.526.940,BKW Energie AG,AG,Bern,BE CHE-334.713.622,Solarkraft Berner Oberland AG,AG,Frutigen,BE

swissco publications

SHAB-Publikationen für einen gewählten Zeitraum, filterbar nach Kanton und Ereignistyp.

$ swissco publications --since 2026-09-01 --canton ZH --type NEWLY_REGISTERED uid name event CHE-248.357.133 Zurich AI Labs GmbH NEWLY_REGISTERED CHE-248.358.971 Helvetic Solar Solutions AG NEWLY_REGISTERED

swissco events <UID>

Alle im SHAB veröffentlichten Handelsregistermeldungen zu einem Unternehmen.

$ swissco events CHE-105.805.080 date event summary 2020-03-12 MUTATION Seat transfer to Lausanne 2018-06-01 CAPITAL_INCREASED Share capital CHF 200'000 → 250'000 2005-11-03 NEWLY_REGISTERED Initial registration

swissco tenders

Durchsuchen Sie öffentliche Beschaffungsprojekte auf simap nach Kanton und Datum. Filtern Sie nach Ausschreibungen, Zuschlägen oder freihändigen Vergaben.

$ swissco tenders --canton ZH --since 2026-08-01 --type tender title buyer canton publication_date Sanierung Schulhaus Mühlebach Baudirektion Kanton Zürich ZH 2026-08-15 IT-Infrastruktur 2027–2031 Universitätsspital Zürich ZH 2026-08-12

swissco vendor <query>

Suchen Sie ein Unternehmen im simap-Anbieterverzeichnis. Wenn Sie eine UID eingeben, wird sie mit dem Feld uidNo im Verzeichnis abgeglichen.

$ swissco vendor CHE-409.633.691 Name Implenia Schweiz AG UID CHE-409.633.691 City Dietlikon Canton ZH Company size large

swissco finma

Listen Sie die von der FINMA bewilligten Banken und Wertpapierhäuser mit ihrer UID auf oder suchen Sie nach einzelnen Instituten. Filtern Sie nach Bewilligungstyp, Aufsichtskategorie oder Namen.

$ swissco finma --category 3 name city licence_type category uid Zürcher Kantonalbank Zürich Bank 3 CHE-105.842.028 Banque Cantonale Vaudoise Lausanne Bank 3 CHE-105.925.867

swissco lei <UID>

Rufen Sie den Legal Entity Identifier eines Unternehmens bei GLEIF ab. Angezeigt werden der LEI, sein Registrierungsstatus sowie die direkte und die oberste Muttergesellschaft, die das Unternehmen in ihren Konzernabschluss einbeziehen. Mit --children sehen Sie, welche Unternehmen es selbst in seinen Konzernabschluss einbezieht.

$ swissco lei CHE-412.669.376 Legal name UBS Switzerland AG LEI 549300WOIFUSNYH0FL22 Registered as CHE-412.669.376 Jurisdiction CH Status ACTIVE Direct parent UBS Group AG (549300SZJ9VS8SGXAN81, CH) Ultimate parent UBS Group AG (549300SZJ9VS8SGXAN81, CH) Direct children 12

swissco research <query>

Durchsuchen Sie ARAMIS, das Verzeichnis öffentlich finanzierter Forschungsprojekte des Bundes. Eine eingegebene UID wird mit der UID der Projektteilnehmer abgeglichen. Bei einer Freitextsuche wird Ihre Eingabe unverändert verwendet.

$ swissco research CHE-115.694.164 title project_number office status start_date Hydrogen storage in metal hydrides SI/502345 SERI Completed 2022-03-01 Advanced fuel cell membranes SI/502891 SERI Ongoing 2024-01-15

swissco watch <file>

Erstellt für jedes Unternehmen einen digitalen Fingerabdruck aus Stammdaten, Adresse und Zweck. Bei Änderungen gibt der Befehl den Exit-Code 10 zurück, sonst 0. Für die regelmässige Ausführung mit cron geeignet.

$ swissco watch my_competitors.txt Checked 12 companies, 2 changed. $ echo $? 10

Ausgabeformate

Jeder Befehl unterstützt --format table|json|csv. Die Ausgabe bleibt bytegenau gleich, ob sie im Terminal angezeigt oder per Pipe weitergegeben wird. So lässt sich derselbe Befehl in Skripten und Notebooks verwenden.

Agent-Skill

swissco enthält einen Skill für Claude Code, Cursor, Codex und andere Coding-Agenten. Mit diesem Skill kann Ihr Agent Fragen in natürlicher Sprache beantworten, indem er selbst den passenden swissco-Befehl ausführt.

npx skills add prospex-ch/swissco-cli

Der Skill wird installiert unter .agents/skills/swissco/. Fügen Sie -g hinzu, um den Skill für alle Projekte zu installieren, oder --all hinzu, um die Standardwerte ohne Rückfragen zu übernehmen.

Nach der Installation können Sie Ihren Agenten zum Beispiel fragen oder beauftragen:

Welche Unternehmen in Zug erwähnen Blockchain in ihrem Unternehmenszweck? Hat sich bei CHE-105.943.826 seit Juni etwas geändert? Liste die diese Woche neu eingetragenen Unternehmen im Kanton Waadt auf.

Das swissco-CLI muss im PATH oder über uvx erreichbar sein, damit der Agent es ausführen kann.

Datenquellen

Quelle Daten Authentifizierung
Zefix on LINDAS Handelsregister: Stammdaten, Rechtsform, Adresse, Zweck Keine
SHAB SHAB-Publikationen mit Einordnung nach Ereignistyp Keine
Zefix REST Kapital, Status, Löschungsdatum, frühere Namen, Konzernbeziehungen Optionale Zugangsdaten
simap Öffentliches Beschaffungswesen: Ausschreibungen, Zuschläge, Anbieterverzeichnis mit UID Keine
FINMA Bewilligte Banken und Wertpapierhäuser: Bewilligungstyp, Aufsichtskategorie Keine
GLEIF Legal Entity Identifiers: LEI, Registrierungsstatus, Konzernstruktur (wer wen konsolidiert) Keine
ARAMIS Vom Bund finanzierte Forschungsprojekte: Titel, zuständiges Amt, Teilnehmer mit UID Keine

Alle Befehle funktionieren ohne Anmeldung. Mit Zefix-Zugangsdaten erhalten Sie zusätzliche Felder bei lookup und können nach Namensanfängen suchen mit search. Die FINMA-Daten decken Banken und Wertpapierhäuser ab. Andere Bewilligungstypen stehen auf separaten Listen.

Links