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.
9 tools: 9 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things0Claude Code: ask
- Only reads9Claude Code: allow: see these tools
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/mcpTools
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/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .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.
