Kranli
New Swiss building permit applications by municipality and trade (last 90 days, official sources).
Sollte ich dies verwenden
Qualität und Sicherheit
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"permis-construire": {
"url": "https://kranli.ch/mcp"
}
}
}Remote-Endpunkte
https://kranli.ch/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (5)
🟢chercher_demandes(commune, canton, metier, jours, rayon_km, ...)
Search new building permit applications published in Switzerland (Kranli, official publications of the last 90 days) by municipality or canton, trade and period, newest first. Each application comes with its date, municipality, official description, status, trades, link to the official publication, source and mandatory notice ("formule"). / Cherche les nouvelles demandes de permis de construire publiées en Suisse (publications officielles des 90 derniers jours), par commune ou canton, métier et période, les plus récentes d’abord, avec le lien officiel, la source et la formule de chaque demande.
Eingabe-Schema
{
"type": "object",
"properties": {
"commune": {
"type": "string",
"maxLength": 80,
"description": "Municipality: name, postcode or identifier, e.g. \"Sion\", \"1950\", \"buchs-ag\". / Commune : nom, numéro postal ou identifiant."
},
"canton": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"description": "Two-letter canton code, e.g. \"VS\". / Sigle du canton, par exemple « VS »."
},
"metier": {
"type": "string",
"maxLength": 80,
"description": "Trade: identifier from the metiers tool or a few words, e.g. \"heat pump\", \"pompe à chaleur\", \"Wärmepumpe\", \"solaire\". / Métier : identifiant ou quelques mots."
},
"jours": {
"type": "integer",
"minimum": 1,
"maximum": 90,
"default": 30,
"description": "How many days back (at most 90). / Nombre de jours en arrière (90 au plus)."
},
"rayon_km": {
"type": "integer",
"minimum": 0,
"maximum": 50,
"default": 0,
"description": "With a municipality: also the municipalities within this many km. / Avec une commune : aussi les communes à moins de N km."
},
"limite": {
"type": "integer",
"minimum": 1,
"maximum": 25,
"default": 10,
"description": "Number of applications returned. / Nombre de demandes rendues."
},
"langue": {
"type": "string",
"enum": [
"fr",
"de",
"it",
"en"
],
"default": "fr",
"description": "Language of labels and of the answer (fr, de, it, en). / Langue des libellés et de la réponse."
}
},
"additionalProperties": false
}🟢trouver_commune(nom, canton, langue)
Find a Swiss municipality by name or postcode; returns its identifier, canton and number of applications in the last 7, 30 and 90 days. / Trouve une commune suisse par son nom ou son numéro postal : identifiant, canton et nombre de demandes récentes.
Eingabe-Schema
{
"type": "object",
"properties": {
"nom": {
"type": "string",
"minLength": 1,
"maxLength": 80,
"description": "Name or postcode, e.g. \"Sion\", \"Buchs AG\", \"8001\". / Nom ou numéro postal."
},
"canton": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"description": "Two-letter canton code, e.g. \"VS\". / Sigle du canton, par exemple « VS »."
},
"langue": {
"type": "string",
"enum": [
"fr",
"de",
"it",
"en"
],
"default": "fr",
"description": "Language of labels and of the answer (fr, de, it, en). / Langue des libellés et de la réponse."
}
},
"required": [
"nom"
],
"additionalProperties": false
}🟢communes_proches(commune, rayon_km, canton, langue)
List the municipalities within a radius of a municipality (distance between official centres, rounded to the km), with their recent applications. / Les communes autour d’une commune (distance entre centres officiels, arrondie au kilomètre), avec leurs demandes récentes.
Eingabe-Schema
{
"type": "object",
"properties": {
"commune": {
"type": "string",
"minLength": 1,
"maxLength": 80,
"description": "Municipality: name, postcode or identifier. / Commune : nom, numéro postal ou identifiant."
},
"rayon_km": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 10,
"description": "Radius in km. / Rayon en kilomètres."
},
"canton": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"description": "Two-letter canton code, e.g. \"VS\". / Sigle du canton, par exemple « VS »."
},
"langue": {
"type": "string",
"enum": [
"fr",
"de",
"it",
"en"
],
"default": "fr",
"description": "Language of labels and of the answer (fr, de, it, en). / Langue des libellés et de la réponse."
}
},
"required": [
"commune"
],
"additionalProperties": false
}🟢metiers(langue)
List the ten trade families used by Kranli (heating and heat pumps, solar, windows, roofing, facades, interior, outdoor and pools, new build, civil engineering, electrical) with their identifiers and recent counts. / Les dix familles de métiers de Kranli, avec leurs identifiants et leurs demandes récentes.
Eingabe-Schema
{
"type": "object",
"properties": {
"langue": {
"type": "string",
"enum": [
"fr",
"de",
"it",
"en"
],
"default": "fr",
"description": "Language of labels and of the answer (fr, de, it, en). / Langue des libellés et de la réponse."
}
},
"additionalProperties": false
}🟢resume_semaine(canton, langue)
Number of building permit applications of the last 7 days, by canton and by trade. / Le nombre de demandes de permis de construire des 7 derniers jours, par canton et par métier.
Eingabe-Schema
{
"type": "object",
"properties": {
"canton": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"description": "Two-letter canton code, e.g. \"VS\". / Sigle du canton, par exemple « VS »."
},
"langue": {
"type": "string",
"enum": [
"fr",
"de",
"it",
"en"
],
"default": "fr",
"description": "Language of labels and of the answer (fr, de, it, en). / Langue des libellés et de la réponse."
}
},
"additionalProperties": false
}Community
Nachweis