Swiss phone directory: search people and businesses, reverse number lookup, business categories.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Lists public directory entries in one business category, optionally narrowed to a locality/postcode/canton. Use search_swiss_directory instead for a free-text query.
The business category slug (e.g. "restaurant", "coiffeur", "sanitaer"). Valid slugs are the slug values in categories, as returned by get_directory_entry, or a top-level group slug such as "bau-handwerk".
Response language: de, fr, it, or en. Defaults to de.
Maximum number of results, 1-20.
Locality, postcode, or canton (e.g. "Baden", "5400", "ZH") to narrow the category to. Always put a place name here.
Lists public directory entries in one business category, optionally narrowed to a locality/postcode/canton. Use search_swiss_directory instead for a free-text query.
| Argument | Type | Description |
|---|---|---|
| lang | string | Response language: de, fr, it, or en. Defaults to de. |
| limit | integer | Maximum number of results, 1-20. |
| category* | string | The business category slug (e.g. "restaurant", "coiffeur", "sanitaer"). Valid slugs are the slug values in categories, as returned by get_directory_entry, or a top-level group slug such as "bau-handwerk". |
| location | string | Locality, postcode, or canton (e.g. "Baden", "5400", "ZH") to narrow the category to. Always put a place name here. |
{
"type": "object",
"required": [
"category"
],
"properties": {
"lang": {
"enum": [
"de",
"fr",
"it",
"en"
],
"type": "string",
"description": "Response language: de, fr, it, or en. Defaults to de."
},
"limit": {
"type": "integer",
"default": 10,
"maximum": 20,
"minimum": 1,
"description": "Maximum number of results, 1-20."
},
"category": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "The business category slug (e.g. \"restaurant\", \"coiffeur\", \"sanitaer\"). Valid slugs are the slug values in categories, as returned by get_directory_entry, or a top-level group slug such as \"bau-handwerk\"."
},
"location": {
"type": "string",
"maxLength": 200,
"description": "Locality, postcode, or canton (e.g. \"Baden\", \"5400\", \"ZH\") to narrow the category to. Always put a place name here."
}
},
"additionalProperties": false
}Fetches the full public detail for one directory entry by its entry_id (public_id), including phone numbers, opening hours, and links when the entry has them. Use get_directory_entry for phone numbers and opening hours; use search_swiss_directory or browse_business_category to find an entry_id first.
| Argument | Type | Description |
|---|---|---|
| lang | string | Response language: de, fr, it, or en. Defaults to de. |
| entry_id* | string | The entry's public_id, as returned by search_swiss_directory, browse_business_category, or reverse_phone_lookup. |
{
"type": "object",
"required": [
"entry_id"
],
"properties": {
"lang": {
"enum": [
"de",
"fr",
"it",
"en"
],
"type": "string",
"description": "Response language: de, fr, it, or en. Defaults to de."
},
"entry_id": {
"type": "string",
"maxLength": 32,
"minLength": 1,
"description": "The entry's public_id, as returned by search_swiss_directory, browse_business_category, or reverse_phone_lookup."
}
},
"additionalProperties": false
}Looks up the public directory entry (or entries) associated with a Swiss phone number. Accepts national ("079 123 45 67"), E.164 ("+41791234567"), or compact notation. Returns an empty result list when the number has no findable public listing.
| Argument | Type | Description |
|---|---|---|
| lang | string | Response language: de, fr, it, or en. Defaults to de. |
| phone_number* | string | The phone number to look up, in any common Swiss notation (national, E.164, or compact). |
{
"type": "object",
"required": [
"phone_number"
],
"properties": {
"lang": {
"enum": [
"de",
"fr",
"it",
"en"
],
"type": "string",
"description": "Response language: de, fr, it, or en. Defaults to de."
},
"phone_number": {
"type": "string",
"maxLength": 40,
"minLength": 1,
"description": "The phone number to look up, in any common Swiss notation (national, E.164, or compact)."
}
},
"additionalProperties": false
}Full-text search over the Swiss public phone/business directory (1820.ch). Matches ALL words in query, so a short keyword works best; put any place name in location, not query. For "business type X in place Y", browse_business_category with a category slug is an alternative. Use get_directory_entry for phone numbers and opening hours of a specific result.
| Argument | Type | Description |
|---|---|---|
| lang | string | Response language: de, fr, it, or en. Defaults to de. |
| limit | integer | Maximum number of results, 1-20. |
| query* | string | One short keyword: a person's or company name, or ONE business type (e.g. "Müller", "Migros", "Coiffeur"). Every word must match, so no sentences or extra adjectives. Never put a place name here — use location instead. |
| location | string | Locality, postcode, or canton (e.g. "Baden", "5400", "ZH") to narrow the search. Always put a place name here, never in query. |
| entry_type | string | Restrict results to person, business, or all entries. |
{
"type": "object",
"required": [
"query"
],
"properties": {
"lang": {
"enum": [
"de",
"fr",
"it",
"en"
],
"type": "string",
"description": "Response language: de, fr, it, or en. Defaults to de."
},
"limit": {
"type": "integer",
"default": 10,
"maximum": 20,
"minimum": 1,
"description": "Maximum number of results, 1-20."
},
"query": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "One short keyword: a person's or company name, or ONE business type (e.g. \"Müller\", \"Migros\", \"Coiffeur\"). Every word must match, so no sentences or extra adjectives. Never put a place name here — use location instead."
},
"location": {
"type": "string",
"maxLength": 200,
"description": "Locality, postcode, or canton (e.g. \"Baden\", \"5400\", \"ZH\") to narrow the search. Always put a place name here, never in query."
},
"entry_type": {
"enum": [
"person",
"business",
"all"
],
"type": "string",
"default": "all",
"description": "Restrict results to person, business, or all entries."
}
},
"additionalProperties": false
}