Skip to content

unesco-heritage-mcp-server

by cyanheads · remote · local (npm) · no sign-in to list tools · v0.2.1 · published by GitHub user cyanheads

Search UNESCO World Heritage sites, intangible heritage, biosphere reserves, and Global Geoparks.

Read only

9 tools: 9 only read.

Scanned Oct 21, 2026

No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http unesco-heritage https://unesco-heritage.caseyjhand.com/mcp

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

9 tools

Only reads 9Claude Code: allow
  • unesco_get_biosphere_reserveFetch one biosphere reserve's full record by mab_id: its introduction, ecological and socio-economic characteristics, core, buffer, and transition areas (terrestrial and marine, in…No findings

    Why it is in this group

    • The name "unesco_get_biosphere_reserve" says "get": a word for reading.
    Description, as the server wrote it
    Fetch one biosphere reserve's full record by mab_id: its introduction, ecological and socio-economic characteristics, core, buffer, and transition areas (terrestrial and marine, in hectares) with resident population by zone, designation, extension, renaming, and periodic-review years, coordinates, and its UNESCO page.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • openWorldHint: true
  • unesco_get_geoparkFetch one UNESCO Global Geopark's full record by ugg_id: its countries, designation year, transnational status, area and resident population as recorded, coordinates, UNESCO's intr…No findings

    Why it is in this group

    • The name "unesco_get_geopark" says "get": a word for reading.
    Description, as the server wrote it
    Fetch one UNESCO Global Geopark's full record by ugg_id: its countries, designation year, transnational status, area and resident population as recorded, coordinates, UNESCO's introduction and description, its account of how the geopark sustains local communities, its own website, and its UNESCO page.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • openWorldHint: true
  • unesco_get_intangible_heritage_elementFetch one Intangible Cultural Heritage element's full record by ich_ref: its description, the list it is inscribed on, the countries that share it, its inscription year, UNESCO con…No findings

    Why it is in this group

    • The name "unesco_get_intangible_heritage_element" says "get": a word for reading.
    Description, as the server wrote it
    Fetch one Intangible Cultural Heritage element's full record by ich_ref: its description, the list it is inscribed on, the countries that share it, its inscription year, UNESCO concept terms, the World Heritage sites UNESCO links to it, its UNESCO page, and the main image with its caption and copyright credit. description_language fr returns UNESCO's French description instead of the English one.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • openWorldHint: true
  • unesco_get_siteFetch one World Heritage site's full record by id_no: its description, statement of Outstanding Universal Value, each inscription criterion with its meaning (criterion (vi) marked …No findings

    Why it is in this group

    • The name "unesco_get_site" says "get": a word for reading.
    Description, as the server wrote it
    Fetch one World Heritage site's full record by id_no: its description, statement of Outstanding Universal Value, each inscription criterion with its meaning (criterion (vi) marked as inferred), States Parties, coordinates, area, inscription and later years, Danger-list year, component parts, names in six languages, and the main image with its copyright credit. description_language returns UNESCO's French, Spanish, Russian, Arabic, or Chinese description instead of the English one. Intangible heritage UNESCO links to the site is listed by unesco_search_intangible_heritage with world_heritage_site.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • openWorldHint: true
  • unesco_list_referenceList the vocabulary the other unesco_ tools accept and the coverage of the underlying datasets: the ten inscription criteria with their meanings and site counts, the countries in e…No findings

    Why it is in this group

    • The name "unesco_list_reference" says "list": a word for reading.
    Description, as the server wrote it
    List the vocabulary the other unesco_ tools accept and the coverage of the underlying datasets: the ten inscription criteria with their meanings and site counts, the countries in each dataset with their ISO alpha-2 and alpha-3 codes and record counts, the five UNESCO regions, the three intangible heritage lists, the MAB regional networks, and each dataset's record count, license, and data date. Set filter to narrow a topic to matching entries, for example a country name to find its code.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • openWorldHint: true
  • unesco_search_biosphere_reservesSearch the World Network of Biosphere Reserves (UNESCO Man and the Biosphere Programme) by keyword, country, region, MAB regional network, designation year range, transboundary or …No findings

    Why it is in this group

    • The name "unesco_search_biosphere_reserves" says "search": a word for reading.
    Description, as the server wrote it
    Search the World Network of Biosphere Reserves (UNESCO Man and the Biosphere Programme) by keyword, country, region, MAB regional network, designation year range, transboundary or Small Island Developing States status, or distance from a point. Every keyword must appear at the start of a word in the reserve's name, introduction, or ecological or socio-economic description; there is no biome or ecosystem field, so an ecosystem search is a keyword search such as mangrove or alpine. A country is an ISO 3166-1 alpha-2 or alpha-3 code. A transboundary reserve appears once per participating country, each with its own mab_id. Results page with next_cursor and carry facet counts over the whole match.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • openWorldHint: true
  • unesco_search_geoparksSearch UNESCO Global Geoparks by keyword, country, designation year range, transnational status, or distance from a point.No findings

    Why it is in this group

    • The name "unesco_search_geoparks" says "search": a word for reading.
    Description, as the server wrote it
    Search UNESCO Global Geoparks by keyword, country, designation year range, transnational status, or distance from a point. Every keyword must appear at the start of a word in the geopark's name, introduction, description, or account of how it sustains local communities, and name matches rank first. A country is an ISO 3166-1 alpha-2 or alpha-3 code and matches every geopark it takes part in, transnational geoparks included. Geoparks UNESCO recognized before the Global Geopark label existed are dated 2015, the year it was created. Results page with next_cursor and carry facet counts over the whole match.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • openWorldHint: true
  • unesco_search_intangible_heritageSearch UNESCO's Intangible Cultural Heritage lists — the Representative List, the Urgent Safeguarding List, and the Register of Good Safeguarding Practices — by keyword, country, l…No findings

    Why it is in this group

    • The name "unesco_search_intangible_heritage" says "search": a word for reading.
    Description, as the server wrote it
    Search UNESCO's Intangible Cultural Heritage lists — the Representative List, the Urgent Safeguarding List, and the Register of Good Safeguarding Practices — by keyword, country, list, inscription year range, multinational status, or linked World Heritage site. Every keyword must appear at the start of a word in an element's English or French name, its UNESCO concept terms, or its description, and name matches rank first. A country is an ISO 3166-1 alpha-2 or alpha-3 code and matches every element it shares, multinational elements included. world_heritage_site takes a site's id_no and lists the elements UNESCO links to it. Rows omit the description; read it with unesco_get_intangible_heritage_element. Results page with next_cursor and carry facet counts over the whole match.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • openWorldHint: true
  • unesco_search_sitesSearch the UNESCO World Heritage List by keyword, country, category (Cultural, Natural, Mixed), region, inscription criteria (i)–(x), inscription year range, Danger-list status, tr…No findings

    Why it is in this group

    • The name "unesco_search_sites" says "search": a word for reading.
    Description, as the server wrote it
    Search the UNESCO World Heritage List by keyword, country, category (Cultural, Natural, Mixed), region, inscription criteria (i)–(x), inscription year range, Danger-list status, transboundary status, or distance from a point. Every keyword must appear at the start of a word in a site's name (any of six languages), description, or statement of Outstanding Universal Value, and name matches rank first. A country is an ISO 3166-1 alpha-2 or alpha-3 code and matches every site it shares, transboundary sites included. Set in_danger to true for the List of World Heritage in Danger; the data records the year of each site's current Danger-list entry but no threat factors. Criterion (vi) is inferred from each site's statement of Outstanding Universal Value and marked as inferred. Results page with next_cursor and carry facet counts over the whole match.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • openWorldHint: true

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 0.2.1. Values in angle brackets are yours to fill in.

claude mcp add --transport http unesco-heritage https://unesco-heritage.caseyjhand.com/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__unesco-heritage__unesco_search_sites",
      "mcp__unesco-heritage__unesco_get_site",
      "mcp__unesco-heritage__unesco_search_intangible_heritage",
      "mcp__unesco-heritage__unesco_get_intangible_heritage_element",
      "mcp__unesco-heritage__unesco_search_biosphere_reserves",
      "mcp__unesco-heritage__unesco_get_biosphere_reserve",
      "mcp__unesco-heritage__unesco_search_geoparks",
      "mcp__unesco-heritage__unesco_get_geopark",
      "mcp__unesco-heritage__unesco_list_reference"
    ],
    "ask": [],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as unesco-heritage. Review it before you use it.