accueil / serveurs / Recherche & Web / io.github.soheil1lotfi/swiss-grounding-mcp
io.github.soheil1lotfi/swiss-grounding-mcp
serveur MCP (Model Context Protocol) · swiss-grounding 0.1.0
Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur.
Est-ce que io.github.soheil1lotfi/swiss-grounding-mcp est sûr ?
Au dernier audit MCP Hub, le serveur MCP « io.github.soheil1lotfi/swiss-grounding-mcp » est classé « Non encore testé ». Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur. Le verdict est réévalué en continu ; consultez la fiche pour l'état à jour.
Méthode : MCP Hub analyse la description de chaque outil (couche 1) et, pour le verdict fort, exécute le serveur dans une micro-VM isolée avec leurres et réseau bloqué (couche 2). On publie des noms et des compteurs, jamais le contenu brut renvoyé par un outil.
Les 13 outils
- company_register≈ 229 tokens
Check whether a company is registered: UID, legal seat, commercial register and VAT status, from the federal UID register.
Paramètres, retour & exemple (1)
Paramètresname_or_uid· string · requis
Company name or UID (CHE-123.456.789).
Exemple d'appel{"name": "company_register", "arguments": {"name_or_uid": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": {}, "status": "ok", "summary": "texte", "guidance": "texte", "citations": [], "missing_context": []}} - current_weather≈ 294 tokens
Latest measured weather (temperature, humidity, precipitation, wind) at the MeteoSwiss station nearest to a Swiss municipality. Measurements only, no forecasts.
Paramètres, retour & exemple (2)
Paramètresplace· ? · optionnel
Place as the user said it: municipality, postcode, address or canton, any language (e.g. 'Genf', '8003').language· string · optionnel · de | fr | it | rm | en
Language of the user's question.
Exemple d'appel{"name": "current_weather", "arguments": {"place": "texte", "language": "de"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": {}, "status": "ok", "summary": "texte", "guidance": "texte", "citations": [], "missing_context": []}} - federal_votes≈ 297 tokens
Subjects of the next federal popular vote, or official results of a past vote.
Paramètres, retour & exemple (3)
Paramètresplace· ? · optionnel
Canton to add its result, optional.language· string · optionnel · de | fr | it | rm | en
Language of the user's question.vote_date· ? · optionnel
ISO date of a vote; omit for the next vote (or the latest if none is scheduled).
Exemple d'appel{"name": "federal_votes", "arguments": {"place": "texte", "language": "de", "vote_date": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": {}, "status": "ok", "summary": "texte", "guidance": "texte", "citations": [], "missing_context": []}} - health_insurance_premiums≈ 530 tokens
Cheapest mandatory basic health insurance premiums (Grundversicherung, assurance de base, assicurazione di base — every plan here is basic insurance) for a municipality, age and deductible, from the official FOPH premium data (same data as priminfo.admin.ch).
Paramètres, retour & exemple (6)
Paramètresage· ? · optionnel
Age of the insured person.year· ? · optionnel
Premium year; default current year.place· ? · optionnel
Place as the user said it: municipality, postcode, address or canton, any language (e.g. 'Genf', '8003').franchise· ? · optionnel
Deductible in CHF (adults 300-2500, children 0-600). Omit to get the cheapest offer for every deductible.accident_cover· boolean · optionnel
Include accident cover (default no: employees are insured by their employer).insurance_model· ? · optionnel
Only if the user explicitly asks for one insurance model. Leave empty to compare all models (the cheapest is usually an alternative model).
Exemple d'appel{"name": "health_insurance_premiums", "arguments": {"age": "texte", "year": "texte", "place": "texte", "franchise": "texte", "accident_cover": true, "insurance_model": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": {}, "status": "ok", "summary": "texte", "guidance": "texte", "citations": [], "missing_context": []}} - public_transport≈ 344 tokens
Swiss public transport connections or next departures (official timetable data).
Paramètres, retour & exemple (5)
Paramètreswhen· ? · optionnel
ISO date-time (Europe/Zurich), e.g. 2026-10-01T08:30; default now.limit· integer · optionnelorigin· ? · optionnel
Departure station or place, e.g. 'Zürich HB'.arrival· boolean · optionnel
Interpret `when` as arrival time.destination· ? · optionnel
Destination; omit for a departure board.
Exemple d'appel{"name": "public_transport", "arguments": {"when": "texte", "limit": 1, "origin": "texte", "arrival": true, "destination": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": {}, "status": "ok", "summary": "texte", "guidance": "texte", "citations": [], "missing_context": []}} - read_official_page≈ 309 tokens
Fetch the current text of an official Swiss page (live, respecting robots.txt) and return the passages around `focus`. Only official Swiss domains are allowed.
Paramètres, retour & exemple (3)
Paramètresurl· string · requis
URL on an official Swiss domain (admin.ch, ch.ch, a cantonal or municipal site), typically from search_official_info.focus· ? · optionnel
Words to focus on, e.g. 'délai 12 mois'.max_chars· integer · optionnel
Exemple d'appel{"name": "read_official_page", "arguments": {"url": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": {}, "status": "ok", "summary": "texte", "guidance": "texte", "citations": [], "missing_context": []}} - search_official_info≈ 428 tokens
Full-text search over official Swiss web pages: ch.ch (all languages), federal offices, the 26 cantons and large cities. Use for procedures, rules, deadlines, fees and "how do I…" questions (permits, moving, taxes, social insurance, driving licences, customs, schools, housing, voting). Give `place` to restrict results to federal + that canton/municipality. Returns verbatim excerpts with URLs.
Paramètres, retour & exemple (4)
Paramètreslimit· integer · optionnelplace· ? · optionnel
Place as the user said it: municipality, postcode, address or canton, any language (e.g. 'Genf', '8003').query· string · requis
Key words of the question, best in the language of the source (e.g. 'permis de conduire étranger échanger').language· ? · optionnel
Exemple d'appel{"name": "search_official_info", "arguments": {"query": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": {}, "status": "ok", "summary": "texte", "guidance": "texte", "citations": [], "missing_context": []}} - swiss_coverage≈ 206 tokens
List the topics, geography, sources and freshness this server covers, and what it does not. Call this only when unsure whether a question is in scope.
Paramètres, retour & exemple (0)
Exemple d'appel{"name": "swiss_coverage", "arguments": {}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": {}, "status": "ok", "summary": "texte", "guidance": "texte", "citations": [], "missing_context": []}} - swiss_federal_law≈ 380 tokens
Quote federal law from the official consolidated text on Fedlex (version currently in force), with article links. Federal law only; cantonal law is not included.
Paramètres, retour & exemple (4)
Paramètresquery· ? · optionnel
Title words to find an act, or (with sr_number) a topic to find the relevant articles, e.g. 'Kündigungsfrist'.article· ? · optionnel
Article number, e.g. '335c', '42'.language· string · optionnel · de | fr | it | rm | en
Language of the user's question.sr_number· ? · optionnel
SR number or abbreviation: '220' or 'OR'/'CO', 'ZGB'/'CC', 'SVG', 'VZV', 'AIG', 'KVG', 'AHVG', 'MWSTG'…
Exemple d'appel{"name": "swiss_federal_law", "arguments": {"query": "texte", "article": "texte", "language": "de", "sr_number": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": {}, "status": "ok", "summary": "texte", "guidance": "texte", "citations": [], "missing_context": []}} - swiss_holidays≈ 338 tokens
School holidays by canton or municipality, or public holidays, for a year.
Paramètres, retour & exemple (4)
Paramètreskind· string · optionnel · school | public
School holidays or public holidays.year· ? · optionnel
Calendar year; default current year.place· ? · optionnel
Place as the user said it: municipality, postcode, address or canton, any language (e.g. 'Genf', '8003').language· string · optionnel · de | fr | it | rm | en
Language of the user's question.
Exemple d'appel{"name": "swiss_holidays", "arguments": {"kind": "school", "year": "texte", "place": "texte", "language": "de"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": {}, "status": "ok", "summary": "texte", "guidance": "texte", "citations": [], "missing_context": []}} - swiss_place_info≈ 284 tokens
Resolve a Swiss place to its official municipality: BFS number, canton, district, postcodes, permanent resident population (latest BFS figure) and official website. Use for "how many people live in X", "which canton is X in", or to find a municipality's website.
Paramètres, retour & exemple (1)
Paramètresplace· ? · optionnel
Place as the user said it: municipality, postcode, address or canton, any language (e.g. 'Genf', '8003').
Exemple d'appel{"name": "swiss_place_info", "arguments": {"place": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": {}, "status": "ok", "summary": "texte", "guidance": "texte", "citations": [], "missing_context": []}} - swiss_rates≈ 306 tokens
Current mortgage reference interest rate for rents (BWO) or SNB CHF exchange rates.
Paramètres, retour & exemple (3)
Paramètreskind· string · requis · reference_interest_rate | exchange_rate
Mortgage reference rate for rents (BWO), or SNB exchange rate.currency· ? · optionnel
For exchange_rate: EUR, USD, GBP…language· string · optionnel · de | fr | it | rm | en
Language of the user's question.
Exemple d'appel{"name": "swiss_rates", "arguments": {"kind": "reference_interest_rate"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": {}, "status": "ok", "summary": "texte", "guidance": "texte", "citations": [], "missing_context": []}} - waste_collection≈ 380 tokens
Next waste collection dates (cardboard, paper, household waste, green waste…) from municipal open data. Needs the municipality; some cities also need postcode or street (the tool will say).
Paramètres, retour & exemple (4)
Paramètresplace· ? · optionnel
Place as the user said it: municipality, postcode, address or canton, any language (e.g. 'Genf', '8003').street· ? · optionnel
Street (and number) if the user gave one.from_date· ? · optionnel
ISO date to start from; default today.waste_type· ? · optionnel
e.g. Karton/carton/cartone, Papier, Kehricht, Grüngut, Metall. Omit for all types.
Exemple d'appel{"name": "waste_collection", "arguments": {"place": "texte", "street": "texte", "from_date": "texte", "waste_type": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": {}, "status": "ok", "summary": "texte", "guidance": "texte", "citations": [], "missing_context": []}}
C'est votre serveur ?
Revendiquez-le sur l'espace créateur (preuve GitHub, domaine ou npm) pour afficher le badge « propriétaire vérifié » et lancer un pentest comportemental à la demande afin d'obtenir le badge « Vérifié ».
Source
ghcr.io/gastaan/swiss-grounding-mcp:0.1.1