
Hermes — Air Quality Intelligence
Plugs Claude into the UK's fragmented air quality monitoring landscape with a unified interface. You get live readings from major networks (AURN, LAQN, AQE, SAQN and others), historical trend queries, Local Air Quality Management statistics, and WHO guideline compliance checks. The knowledge base covers regulatory context and intervention evidence. Built by South London Scientific, who run Argus dashboards and the RHEA intervention evaluation tool. Reach for this when you need to answer questions about UK pollution levels, assess exposure scenarios, or build context into environmental health analysis without manually wrangling data from a dozen different borough and national monitoring APIs.
- tools
- 15
- transport
- HTTP
- last updated
- May 5, 2026
Install
From registry metadata$ npx add-mcp https://hermes.southlondonscientific.com/mcp --name hermesRun in your terminal. add-mcp asks which agents to add it to (Claude Code, Codex, Cursor and more). Add -g to install it for every project.
Review the command, arguments and environment values before installing. MCP servers run with your local permissions.
Other ways
Claude Code
$ claude mcp add --transport http hermes https://hermes.southlondonscientific.com/mcpRun in your terminal. Add --scope user to make it available in every project.
Tools
Verified live · 15 toolsVerified live against the running server on Nov 6, 2026.
assess_location_aqComprehensive air quality assessment for a location in one call. Combines nearby monitor discovery and current readings with DAQI into a single response. Use this as the first tool call for any air quality question about a location. For long-term trend analysis, use the dedica...2 params
Comprehensive air quality assessment for a location in one call. Combines nearby monitor discovery and current readings with DAQI into a single response. Use this as the first tool call for any air quality question about a location. For long-term trend analysis, use the dedica...
location*stringpurposestringget_current_aqGet the most recent air quality readings near a location, with health context. Returns a 'summary' with a plain-English health assessment and advice for general and at-risk populations. Present the summary to users first. Also returns individual 'readings' from nearby monitors...4 params
Get the most recent air quality readings near a location, with health context. Returns a 'summary' with a plain-English health assessment and advice for general and at-risk populations. Present the summary to users first. Also returns individual 'readings' from nearby monitors...
location*stringpollutantsvalueradius_kmnumbersourcesvalueget_historical_aqGet historical air quality data for a site or location, with health context. Returns a 'narrative' with plain-English interpretation, WHO 24-hour guideline exceedance days, and guideline comparisons. Present the narrative to users first. Also returns 'data' and a per-site 'sum...6 params
Get historical air quality data for a site or location, with health context. Returns a 'narrative' with plain-English interpretation, WHO 24-hour guideline exceedance days, and guideline comparisons. Present the narrative to users first. Also returns 'data' and a per-site 'sum...
end_date*stringfrequencystringlocationvaluepollutantsvaluesite_codevaluestart_date*stringget_aqi_summaryGet an AQI assessment with health advice and WHO compliance check. Returns a 'summary' with a plain-English health assessment, advice for general and at-risk populations, and WHO guideline context. Present the summary to users first. Also returns raw 'aqi' and 'who_compliance'...3 params
Get an AQI assessment with health advice and WHO compliance check. Returns a 'summary' with a plain-English health assessment, advice for general and at-risk populations, and WHO guideline context. Present the summary to users first. Also returns raw 'aqi' and 'who_compliance'...
indexstringlocation*stringperiodstringlist_monitorsList air quality monitoring sites near a location, with context. Returns a 'summary' explaining how many monitors were found, their operational status, and what each monitor type represents. Present the summary to users first. Also returns a 'monitors' list with full metadata....3 params
List air quality monitoring sites near a location, with context. Returns a 'summary' explaining how many monitors were found, their operational status, and what each monitor type represents. Present the summary to users first. Also returns a 'monitors' list with full metadata....
location*stringradius_kmnumbersourcesvaluechart_aq_trendGenerate a time series chart of air quality data. Returns a PNG chart image with a brief text summary. Use this when users ask about trends, patterns, or want to visualise air quality over time. Args: start_date: Start date (ISO format, e.g. "2025-01-01"). end_date: End date (...8 params
Generate a time series chart of air quality data. Returns a PNG chart image with a brief text summary. Use this when users ask about trends, patterns, or want to visualise air quality over time. Args: start_date: Start date (ISO format, e.g. "2025-01-01"). end_date: End date (...
end_date*stringfrequencystringlocationvaluepollutantsvalueshow_daqi_bandsbooleanshow_who_guidelinesbooleansite_codevaluestart_date*stringtrend_analysisAnalyse the long-term trend in a pollutant near a location. Uses Theil-Sen slope estimation with Mann-Kendall significance testing to determine whether air quality is improving, worsening, or stable. Robust to outliers and missing data. Returns a 'summary' with plain-English t...3 params
Analyse the long-term trend in a pollutant near a location. Uses Theil-Sen slope estimation with Mann-Kendall significance testing to determine whether air quality is improving, worsening, or stable. Robust to outliers and missing data. Returns a 'summary' with plain-English t...
location*stringpollutantstringyearsintegercompare_locationsCompare current air quality across multiple locations side-by-side. Returns a ranked comparison by pollutant with DAQI bands and distance to nearest monitor. Useful for comparing development sites, school locations, or residential options. Args: locations: List of 2–6 location...2 params
Compare current air quality across multiple locations side-by-side. Returns a ranked comparison by pollutant with DAQI bands and distance to nearest monitor. Useful for comparing development sites, school locations, or residential options. Args: locations: List of 2–6 location...
locations*arraypollutantsvalueregulatory_statsGet LAQM Annual Status Report-style statistics for a location. Returns annual means, percentiles, exceedance counts, data capture percentages, and compliance assessment against UK legal limits and WHO guidelines. Args: location: Postcode, place name, or "lat,lon". year: Calend...3 params
Get LAQM Annual Status Report-style statistics for a location. Returns annual means, percentiles, exceedance counts, data capture percentages, and compliance assessment against UK legal limits and WHO guidelines. Args: location: Postcode, place name, or "lat,lon". year: Calend...
location*stringpollutantsvalueyearvaluetime_patternsAnalyse when pollution is highest — hour of day, day of week, and month. Returns temporal profiles showing typical patterns. Useful for advising on best times for outdoor exercise, school runs, or commuting. Args: location: Postcode, place name, or "lat,lon". pollutant: Pollut...3 params
Analyse when pollution is highest — hour of day, day of week, and month. Returns temporal profiles showing typical patterns. Useful for advising on best times for outdoor exercise, school runs, or commuting. Args: location: Postcode, place name, or "lat,lon". pollutant: Pollut...
location*stringperiodstringpollutantstringkb_get_guidelinesGet current air quality guideline and target values. Args: framework: "WHO", "UK", "EU", or "all" (default). pollutant: Optional filter for a specific pollutant. Returns the full guidelines document (markdown).2 params
Get current air quality guideline and target values. Args: framework: "WHO", "UK", "EU", or "all" (default). pollutant: Optional filter for a specific pollutant. Returns the full guidelines document (markdown).
frameworkstringpollutantvaluekb_get_health_effectsGet health evidence summaries for a pollutant and population group. Args: pollutant: "NO2", "PM2.5", "PM10", or "O3". population_group: "general", "children", "elderly", "respiratory", "cardiovascular", or "pregnant" (default "general"). Returns health effects document (markdo...2 params
Get health evidence summaries for a pollutant and population group. Args: pollutant: "NO2", "PM2.5", "PM10", or "O3". population_group: "general", "children", "elderly", "respiratory", "cardiovascular", or "pregnant" (default "general"). Returns health effects document (markdo...
pollutant*stringpopulation_groupstringkb_get_local_contextGet area-specific contextual information. Args: area: "southwark", "london", or a specific neighbourhood. Returns local context document (markdown).1 params
Get area-specific contextual information. Args: area: "southwark", "london", or a specific neighbourhood. Returns local context document (markdown).
areastringkb_get_practical_adviceGeneric protective-action guidance for a category of situation (NOT keyed to an individual user's context). For *personalised* advice that takes the user's specific health situation into account (asthma, pregnancy, gas cooker, tube commute, indoor sources), prefer the Clara MC...1 params
Generic protective-action guidance for a category of situation (NOT keyed to an individual user's context). For *personalised* advice that takes the user's specific health situation into account (asthma, pregnancy, gas cooker, tube commute, indoor sources), prefer the Clara MC...
situation*stringkb_get_monitoring_explainerGet plain-language explanations of monitoring methods and limitations. Args: topic: One of "how_monitors_work", "regulatory_vs_lowcost", "what_readings_mean", "why_numbers_differ", "representativeness", "data_quality", "what_monitors_measure". Returns monitoring explainer docu...1 params
Get plain-language explanations of monitoring methods and limitations. Args: topic: One of "how_monitors_work", "regulatory_vs_lowcost", "what_readings_mean", "why_numbers_differ", "representativeness", "data_quality", "what_monitors_measure". Returns monitoring explainer docu...
topic*stringSponsors
Details
- Website
- www.southlondonscientific.com
- Category
- Documents & Knowledge
- Transport
- HTTP
- Registry
- MCP registry, active
- Tools verified
- Nov 6, 2026