Expatslist

City guides, local business listings and Q&A for expats and newcomers in cities worldwide.

我該用這個嗎

品質與安全性

A
說明品質
100%
結構描述完整度
82%
命名品質
95%
汙染風險
100%
權限相符程度
80%
協定合規性
100%

發現項目(2)

  • LOWTool 'browse' suggests web access but openWorldHint=false在 browse 中
  • LOWTool 'fetch' suggests web access but openWorldHint=false在 fetch 中

根據工具定義與協定合規性的自動化分析。

上下文成本

~2,807Token(工具定義)
~2.9 KB典型回應大小
顯著的注意力影響(128k 上下文的 2.19%)

這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。

安裝

一鍵安裝

將以下內容加入你的 `claude_desktop_config.json` 檔案:

{
  "mcpServers": {
    "mcp": {
      "url": "https://expatslist.org/api/mcp"
    }
  }
}

遠端端點

https://expatslist.org/api/mcpstreamable-http

它能做什麼

工具清單

工具(8)

🟢 唯讀🟡 寫入🔴 刪除⚪ 未知
🟢list_cities

Lists the cities ExpatsList covers, with the slug every other tool expects. Use it to resolve a city name the user typed, or when the user asks which cities are available. Returns nothing else; it does not search content.

輸入結構描述

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "cities": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "country": {
            "type": "string"
          },
          "url": {
            "type": "string"
          }
        },
        "required": [
          "slug",
          "name",
          "country",
          "url"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "cities"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢city_pulse(city, days)

Recent community activity in one city: new questions, missed-connection posts, recommendations, classifieds, blog posts and businesses, grouped by type with up to five summaries each and a link to the full section. Use it for "what are people talking about in X" or "what is new in X". Limitation: only the last 1 to 90 days, and only cities from list_cities.

輸入結構描述

{
  "type": "object",
  "properties": {
    "city": {
      "type": "string",
      "description": "City slug from list_cities, or a city name"
    },
    "days": {
      "default": 14,
      "description": "Look back this many days",
      "type": "integer",
      "minimum": 1,
      "maximum": 90
    }
  },
  "required": [
    "city"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "city": {
      "type": "object",
      "properties": {
        "slug": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "country": {
          "type": "string"
        },
        "url": {
          "type": "string"
        }
      },
      "required": [
        "slug",
        "name",
        "country",
        "url"
      ],
      "additionalProperties": false
    },
    "days": {
      "type": "number"
    },
    "sections": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "question",
                    "human_connection",
                    "recommendation",
                    "classified",
                    "blog",
                    "business"
                  ]
                },
                "title": {
                  "type": "string"
                },
                "summary": {
                  "type": "string"
                },
                "city": {
                  "type": "string"
                },
                "category": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "neighborhood": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "posted": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "url": {
                  "type": "string"
                },
                "answers": {
                  "type": "number"
                },
                "resolved": {
                  "type": "boolean"
                },
                "price": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "verified": {
                  "type": "boolean"
                }
              },
              "required": [
                "type",
                "title",
                "summary",
                "city",
                "url"
              ],
              "additionalProperties": false
            }
          },
          "more_url": {
            "type": "string"
          }
        },
        "required": [
          "items",
          "more_url"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "city",
    "days",
    "sections"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢search_expatslist(query, city, type, limit)

Keyword search across business listings, classifieds, blog posts, questions, recommendations and missed-connection posts, optionally limited to one city and one content type. Use it when the user names a thing to find (a dentist, a coworking space, a topic). Returns short summaries with links; full details are on the linked page. Limitation: keyword match, not semantic; at most 10 results.

輸入結構描述

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 2,
      "maxLength": 120,
      "description": "What to search for"
    },
    "city": {
      "description": "City slug or name; omit to search all cities",
      "type": "string"
    },
    "type": {
      "default": "all",
      "type": "string",
      "enum": [
        "all",
        "businesses",
        "classifieds",
        "blogs",
        "questions",
        "recommendations",
        "connections"
      ]
    },
    "limit": {
      "default": 8,
      "type": "integer",
      "minimum": 1,
      "maximum": 10
    }
  },
  "required": [
    "query"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string"
    },
    "city": {
      "type": [
        "string",
        "null"
      ]
    },
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "question",
              "human_connection",
              "recommendation",
              "classified",
              "blog",
              "business"
            ]
          },
          "title": {
            "type": "string"
          },
          "summary": {
            "type": "string"
          },
          "city": {
            "type": "string"
          },
          "category": {
            "type": [
              "string",
              "null"
            ]
          },
          "neighborhood": {
            "type": [
              "string",
              "null"
            ]
          },
          "posted": {
            "type": [
              "string",
              "null"
            ]
          },
          "url": {
            "type": "string"
          },
          "answers": {
            "type": "number"
          },
          "resolved": {
            "type": "boolean"
          },
          "price": {
            "type": [
              "string",
              "null"
            ]
          },
          "verified": {
            "type": "boolean"
          }
        },
        "required": [
          "type",
          "title",
          "summary",
          "city",
          "url"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "query",
    "city",
    "results"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢browse(type, city, category, limit)

Newest items of one content type in one city: questions, missed-connection posts (human_connection), recommendations, classifieds, blog posts or businesses. Optional category filter. For businesses with no category it returns the category list with counts instead of items. Use it for "latest questions in X", "any missed connections in X", "show me restaurants in X". Limitation: at most 10 items per call.

輸入結構描述

{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "enum": [
        "question",
        "human_connection",
        "recommendation",
        "classified",
        "blog",
        "business"
      ]
    },
    "city": {
      "type": "string",
      "description": "City slug from list_cities, or a city name"
    },
    "category": {
      "description": "Category slug or name, e.g. housing, restaurants, visas",
      "type": "string"
    },
    "limit": {
      "default": 6,
      "type": "integer",
      "minimum": 1,
      "maximum": 10
    }
  },
  "required": [
    "type",
    "city"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "enum": [
        "question",
        "human_connection",
        "recommendation",
        "classified",
        "blog",
        "business"
      ]
    },
    "city": {
      "type": "string"
    },
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "question",
              "human_connection",
              "recommendation",
              "classified",
              "blog",
              "business"
            ]
          },
          "title": {
            "type": "string"
          },
          "summary": {
            "type": "string"
          },
          "city": {
            "type": "string"
          },
          "category": {
            "type": [
              "string",
              "null"
            ]
          },
          "neighborhood": {
            "type": [
              "string",
              "null"
            ]
          },
          "posted": {
            "type": [
              "string",
              "null"
            ]
          },
          "url": {
            "type": "string"
          },
          "answers": {
            "type": "number"
          },
          "resolved": {
            "type": "boolean"
          },
          "price": {
            "type": [
              "string",
              "null"
            ]
          },
          "verified": {
            "type": "boolean"
          }
        },
        "required": [
          "type",
          "title",
          "summary",
          "city",
          "url"
        ],
        "additionalProperties": false
      }
    },
    "more_url": {
      "type": "string"
    },
    "categories": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          },
          "businesses": {
            "type": "number"
          },
          "subcategories": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "required": [
          "name",
          "slug",
          "businesses"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "type",
    "city",
    "items",
    "more_url"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢get_item(type, city, slug)

One item by type, city and slug: a question with its best answer and the count of further answers, a missed-connection post, a recommendation, a classified, a blog post or a business listing. Use it after a search or browse result when the user wants more on one item. Limitation: text is a summary of up to about 600 characters; contact details are never included and are on the linked page.

輸入結構描述

{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "enum": [
        "question",
        "human_connection",
        "recommendation",
        "classified",
        "blog",
        "business"
      ]
    },
    "city": {
      "type": "string",
      "description": "City slug from the result, or \"global\" for blog posts without a city"
    },
    "slug": {
      "type": "string",
      "description": "The slug at the end of the item url"
    }
  },
  "required": [
    "type",
    "city",
    "slug"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "enum": [
        "question",
        "human_connection",
        "recommendation",
        "classified",
        "blog",
        "business"
      ]
    },
    "title": {
      "type": "string"
    },
    "summary": {
      "type": "string"
    },
    "city": {
      "type": "string"
    },
    "category": {
      "type": [
        "string",
        "null"
      ]
    },
    "neighborhood": {
      "type": [
        "string",
        "null"
      ]
    },
    "posted": {
      "type": [
        "string",
        "null"
      ]
    },
    "url": {
      "type": "string"
    },
    "answers": {
      "type": "number"
    },
    "resolved": {
      "type": "boolean"
    },
    "price": {
      "type": [
        "string",
        "null"
      ]
    },
    "verified": {
      "type": "boolean"
    },
    "top_answer": {
      "type": [
        "string",
        "null"
      ]
    },
    "more_answers_on_site": {
      "type": "number"
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "type",
    "title",
    "summary",
    "city",
    "url"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢country_info(country, topic)

Reference numbers for one country from ExpatsList tools: digital nomad visa (requirements, income threshold, fee, duration), cost of living (rent, meals, utilities, coworking for up to five cities), healthcare (system, costs, English availability), tax (system, residency days, social security), safety (scores, risks, emergency number) or tipping (rates by service). Use it for factual questions about a country. Limitation: one country and one topic per call; figures are indicative and the linked page has the full table and sources.

輸入結構描述

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "minLength": 2,
      "maxLength": 60,
      "description": "Country name in English, e.g. Portugal"
    },
    "topic": {
      "type": "string",
      "enum": [
        "nomad_visa",
        "cost_of_living",
        "healthcare",
        "tax",
        "safety",
        "tipping"
      ]
    }
  },
  "required": [
    "country",
    "topic"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "topic": {
      "type": "string",
      "enum": [
        "nomad_visa",
        "cost_of_living",
        "healthcare",
        "tax",
        "safety",
        "tipping"
      ]
    },
    "country": {
      "type": "string"
    },
    "data": {
      "type": "array",
      "items": {
        "type": "object",
        "propertyNames": {
          "type": "string"
        },
        "additionalProperties": {}
      }
    },
    "url": {
      "type": "string"
    }
  },
  "required": [
    "topic",
    "country",
    "data",
    "url"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢search(query)

Connector-style search across all ExpatsList content. Returns ids for fetch. Prefer search_expatslist when you can filter by city or type.

輸入結構描述

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 2,
      "maxLength": 120
    }
  },
  "required": [
    "query"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "url": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "title",
          "url"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "results"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢fetch(id)

Connector-style fetch of one item by the id returned from search. Same summary as get_item.

輸入結構描述

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    }
  },
  "required": [
    "id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "title": {
      "type": "string"
    },
    "text": {
      "type": "string"
    },
    "url": {
      "type": "string"
    },
    "metadata": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    }
  },
  "required": [
    "id",
    "title",
    "text",
    "url"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

社群

為此伺服器評分

證據

近期觀測

已驗證未記錄版本8 個工具