MCP endpoint to APIbase catalog (https://apibase.pro/llms.txt). USDC: x402 Base, MPP Tempo.
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.
Resolve an Australian Business Number (ABN) to full entity details using the official Australian Business Register (ABR). Returns entity name, entity type (company, sole trader, partnership, government entity, etc.), ABN status (Active/Cancelled), GST registration date, registered address state and postcode, ACN (if a company), and all registered trading/business names. Covers 15M+ ABNs across all Australian states and territories. Data is live from the ATO-managed national register. Source: ABR, free registration, commercial use permitted.
Australian Business Number (ABN) — 11-digit numeric identifier, spaces optional (e.g. "33 051 775 556" or "33051775556")
Tool list last changed Oct 25, 2026.
Resolve an Australian Business Number (ABN) to full entity details using the official Australian Business Register (ABR). Returns entity name, entity type (company, sole trader, partnership, government entity, etc.), ABN status (Active/Cancelled), GST registration date, registered address state and postcode, ACN (if a company), and all registered trading/business names. Covers 15M+ ABNs across all Australian states and territories. Data is live from the ATO-managed national register. Source: ABR, free registration, commercial use permitted.
| Argument | Type | Description |
|---|---|---|
| abn* | string | Australian Business Number (ABN) — 11-digit numeric identifier, spaces optional (e.g. "33 051 775 556" or "33051775556") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"abn"
],
"properties": {
"abn": {
"type": "string",
"description": "Australian Business Number (ABN) — 11-digit numeric identifier, spaces optional (e.g. \"33 051 775 556\" or \"33051775556\")"
}
},
"additionalProperties": false
}Resolve an Australian Company Number (ACN) or ASIC-registered number to full entity details via the Australian Business Register (ABR). Returns the linked ABN, entity name, company type, ABN status, GST registration, registered address, and all associated business names. ACN is a 9-digit number issued by ASIC to every registered Australian company. Use this when you have an ACN from an invoice, contract, or company extract and need to verify the entity against the national register. Source: ABR, free registration, commercial use permitted.
| Argument | Type | Description |
|---|---|---|
| acn* | string | Australian Company Number (ACN) — 9-digit numeric identifier issued by ASIC, spaces optional (e.g. "051 775 556" or "051775556") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"acn"
],
"properties": {
"acn": {
"type": "string",
"description": "Australian Company Number (ACN) — 9-digit numeric identifier issued by ASIC, spaces optional (e.g. \"051 775 556\" or \"051775556\")"
}
},
"additionalProperties": false
}Search the Australian Business Register (ABR) by business name to find matching entities. Returns ranked matches with ABN, entity name, name type (Entity Name, Trading Name, Business Name), current status, registered state, and postcode. Supports partial name matching and relevance scoring. Optionally filter by Australian state (NSW, VIC, QLD, SA, WA, TAS, NT, ACT) or postcode. Returns up to 50 matches per call. Covers all 15M+ ABN-holders including companies, sole traders, partnerships, trusts, and government entities. Source: ABR, free registration, commercial use permitted.
| Argument | Type | Description |
|---|---|---|
| name* | string | Business name to search for (e.g. "Telstra", "Qantas Airways"). Partial names supported. |
| state | string | Filter results to a specific Australian state or territory using the standard abbreviation (e.g. "VIC", "NSW"). |
| postcode | string | Filter results to businesses registered in a specific Australian postcode (e.g. "3000" for Melbourne CBD). |
| max_results | integer | Maximum number of matching businesses to return (1–50, default 10). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Business name to search for (e.g. \"Telstra\", \"Qantas Airways\"). Partial names supported."
},
"state": {
"enum": [
"NSW",
"VIC",
"QLD",
"SA",
"WA",
"TAS",
"NT",
"ACT"
],
"type": "string",
"description": "Filter results to a specific Australian state or territory using the standard abbreviation (e.g. \"VIC\", \"NSW\")."
},
"postcode": {
"type": "string",
"description": "Filter results to businesses registered in a specific Australian postcode (e.g. \"3000\" for Melbourne CBD)."
},
"max_results": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of matching businesses to return (1–50, default 10)."
}
},
"additionalProperties": false
}Retrieve quarterly Estimated Resident Population (ERP) for Australia from the ABS ERP_Q dataset. Returns total population counts, annual numeric change, or annual percentage change. Data covers all ages combined, broken down by sex (persons/males/females) and geography (Australia or individual states/territories: NSW, VIC, QLD, SA, WA, TAS, NT, ACT). Updated quarterly by the ABS. Source: ABS Demographic Statistics, CC BY 4.0.
| Argument | Type | Description |
|---|---|---|
| sex | string | Sex breakdown. persons = total population (default), males or females for gender-disaggregated estimates. |
| last_n | integer | Number of most-recent quarterly observations to return (1–40). Defaults to 8 (2 years of quarterly data). |
| region | string | Geographic region. australia = national total, or specify a state/territory: nsw (New South Wales), vic (Victoria), qld (Queensland), sa (South Australia), wa (Western Australia), tas (Tasmania), nt (Northern Territory), act (Australian Capital Territory). Defaults to australia. |
| measure | string | Population measure. estimated_resident_population = total ERP count (persons), annual_change = numeric change from same quarter previous year (persons), annual_pct_change = percentage change from same quarter previous year. Defaults to estimated_resident_population. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"sex": {
"enum": [
"persons",
"males",
"females"
],
"type": "string",
"description": "Sex breakdown. persons = total population (default), males or females for gender-disaggregated estimates."
},
"last_n": {
"type": "integer",
"maximum": 40,
"minimum": 1,
"description": "Number of most-recent quarterly observations to return (1–40). Defaults to 8 (2 years of quarterly data)."
},
"region": {
"enum": [
"australia",
"nsw",
"vic",
"qld",
"sa",
"wa",
"tas",
"nt",
"act"
],
"type": "string",
"description": "Geographic region. australia = national total, or specify a state/territory: nsw (New South Wales), vic (Victoria), qld (Queensland), sa (South Australia), wa (Western Australia), tas (Tasmania), nt (Northern Territory), act (Australian Capital Territory). Defaults to australia."
},
"measure": {
"enum": [
"estimated_resident_population",
"annual_change",
"annual_pct_change"
],
"type": "string",
"description": "Population measure. estimated_resident_population = total ERP count (persons), annual_change = numeric change from same quarter previous year (persons), annual_pct_change = percentage change from same quarter previous year. Defaults to estimated_resident_population."
}
},
"additionalProperties": false
}Retrieve Australia Consumer Price Index (CPI) data from the ABS CPI dataset. Returns the All Groups CPI as annual percentage change (year-on-year inflation), index numbers (base 2011–12 = 100), or period-on-period percentage change. Available nationally (weighted 8-city average) and for individual capital cities: Sydney, Melbourne, Brisbane, Adelaide, Perth, Hobart, Darwin, and Canberra. Monthly and quarterly frequency. Source: ABS Cat. 6401.0, CC BY 4.0.
| Argument | Type | Description |
|---|---|---|
| last_n | integer | Number of most-recent observations to return (1–60). Monthly = up to 5 years; quarterly = up to 15 years. Defaults to 12 (1 year of monthly data). |
| region | string | Geographic region. australia = weighted national average across all 8 capital cities, or specify an individual capital city. Defaults to australia. |
| measure | string | CPI measure type. annual_change = percentage change from same period previous year (monthly data only, most commonly used), index = CPI index number (base 2011–12 = 100, monthly or quarterly), period_change = percentage change from previous period. Defaults to annual_change. |
| frequency | string | Data frequency. monthly = released monthly (note: annual_change measure is monthly only), quarterly = released quarterly. Ignored when measure is annual_change (always monthly). Defaults to monthly. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"last_n": {
"type": "integer",
"maximum": 60,
"minimum": 1,
"description": "Number of most-recent observations to return (1–60). Monthly = up to 5 years; quarterly = up to 15 years. Defaults to 12 (1 year of monthly data)."
},
"region": {
"enum": [
"australia",
"sydney",
"melbourne",
"brisbane",
"adelaide",
"perth",
"hobart",
"darwin",
"canberra"
],
"type": "string",
"description": "Geographic region. australia = weighted national average across all 8 capital cities, or specify an individual capital city. Defaults to australia."
},
"measure": {
"enum": [
"annual_change",
"index",
"period_change"
],
"type": "string",
"description": "CPI measure type. annual_change = percentage change from same period previous year (monthly data only, most commonly used), index = CPI index number (base 2011–12 = 100, monthly or quarterly), period_change = percentage change from previous period. Defaults to annual_change."
},
"frequency": {
"enum": [
"monthly",
"quarterly"
],
"type": "string",
"description": "Data frequency. monthly = released monthly (note: annual_change measure is monthly only), quarterly = released quarterly. Ignored when measure is annual_change (always monthly). Defaults to monthly."
}
},
"additionalProperties": false
}Retrieve Australian Gross Domestic Product (GDP) data from the ABS National Accounts Key Aggregates (ANA_AGG). Returns quarterly chain volume measures (seasonally adjusted AUD millions), current price estimates, GDP per capita, GDP per hour worked, or hours worked in the market sector. Data spans from 1959 onwards. Source: Australian Bureau of Statistics, CC BY 4.0, commercial use permitted.
| Argument | Type | Description |
|---|---|---|
| item | string | Economic aggregate to retrieve. gdp = Gross Domestic Product (AUD millions), gdp_per_capita = GDP per person (AUD), gdp_per_hour_worked = GDP per hour worked (AUD), gva_per_hour_worked = Gross value added per hour (market sector), hours_worked = total hours worked (market sector, millions). Defaults to gdp. |
| last_n | integer | Number of most-recent quarterly observations to return (1–40). Each observation is one quarter (Q1=Jan–Mar, Q2=Apr–Jun, Q3=Jul–Sep, Q4=Oct–Dec). Defaults to 8 (2 years). |
| measure | string | GDP measure type. chain_volume = seasonally-adjusted volume (AUD millions), current_prices = nominal AUD millions, chain_volume_change = quarter-on-quarter % change, index = volume index. Omit to return both chain_volume and current_prices. |
| adjustment | string | Statistical adjustment type. seasonally_adjusted removes seasonal effects for trend analysis, trend is a smoothed version, original is the raw figure. Defaults to seasonally_adjusted. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"item": {
"enum": [
"gdp",
"gdp_per_capita",
"gdp_per_hour_worked",
"gva_per_hour_worked",
"hours_worked"
],
"type": "string",
"description": "Economic aggregate to retrieve. gdp = Gross Domestic Product (AUD millions), gdp_per_capita = GDP per person (AUD), gdp_per_hour_worked = GDP per hour worked (AUD), gva_per_hour_worked = Gross value added per hour (market sector), hours_worked = total hours worked (market sector, millions). Defaults to gdp."
},
"last_n": {
"type": "integer",
"maximum": 40,
"minimum": 1,
"description": "Number of most-recent quarterly observations to return (1–40). Each observation is one quarter (Q1=Jan–Mar, Q2=Apr–Jun, Q3=Jul–Sep, Q4=Oct–Dec). Defaults to 8 (2 years)."
},
"measure": {
"enum": [
"chain_volume",
"current_prices",
"chain_volume_change",
"index"
],
"type": "string",
"description": "GDP measure type. chain_volume = seasonally-adjusted volume (AUD millions), current_prices = nominal AUD millions, chain_volume_change = quarter-on-quarter % change, index = volume index. Omit to return both chain_volume and current_prices."
},
"adjustment": {
"enum": [
"seasonally_adjusted",
"trend",
"original"
],
"type": "string",
"description": "Statistical adjustment type. seasonally_adjusted removes seasonal effects for trend analysis, trend is a smoothed version, original is the raw figure. Defaults to seasonally_adjusted."
}
},
"additionalProperties": false
}Retrieve Australian labour market statistics from the ABS Labour Force Survey (LF). Returns monthly seasonally adjusted data on unemployment rate (%), number of employed persons (thousands), participation rate (%), total labour force size, or civilian population aged 15+. Breakdowns available by sex (persons/males/females) and geography (Australia national or individual states and territories). Source: ABS Cat. 6202.0, CC BY 4.0.
| Argument | Type | Description |
|---|---|---|
| sex | string | Sex breakdown. persons = total (male + female), males or females for gender-disaggregated data. Defaults to persons. |
| last_n | integer | Number of most-recent monthly observations to return (1–60, up to 5 years). Defaults to 12 (1 year). |
| region | string | Geographic region. australia = national aggregate, or specify an Australian state/territory abbreviation: nsw (New South Wales), vic (Victoria), qld (Queensland), sa (South Australia), wa (Western Australia), tas (Tasmania), nt (Northern Territory), act (Australian Capital Territory). Defaults to australia. |
| measure | string | Labour market indicator. unemployment_rate = % of labour force unemployed, employed = number of employed persons (thousands), participation_rate = % of civilian population in labour force, labour_force = total labour force (thousands), civilian_population = total civilian population aged 15+ (thousands). Defaults to unemployment_rate, employed, and participation_rate combined. |
| adjustment | string | Statistical adjustment. seasonally_adjusted is recommended for comparing months, trend is a smoothed version for long-term analysis, original is the raw survey estimate. Defaults to seasonally_adjusted. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"sex": {
"enum": [
"persons",
"males",
"females"
],
"type": "string",
"description": "Sex breakdown. persons = total (male + female), males or females for gender-disaggregated data. Defaults to persons."
},
"last_n": {
"type": "integer",
"maximum": 60,
"minimum": 1,
"description": "Number of most-recent monthly observations to return (1–60, up to 5 years). Defaults to 12 (1 year)."
},
"region": {
"enum": [
"australia",
"nsw",
"vic",
"qld",
"sa",
"wa",
"tas",
"nt",
"act"
],
"type": "string",
"description": "Geographic region. australia = national aggregate, or specify an Australian state/territory abbreviation: nsw (New South Wales), vic (Victoria), qld (Queensland), sa (South Australia), wa (Western Australia), tas (Tasmania), nt (Northern Territory), act (Australian Capital Territory). Defaults to australia."
},
"measure": {
"enum": [
"unemployment_rate",
"employed",
"participation_rate",
"labour_force",
"civilian_population"
],
"type": "string",
"description": "Labour market indicator. unemployment_rate = % of labour force unemployed, employed = number of employed persons (thousands), participation_rate = % of civilian population in labour force, labour_force = total labour force (thousands), civilian_population = total civilian population aged 15+ (thousands). Defaults to unemployment_rate, employed, and participation_rate combined."
},
"adjustment": {
"enum": [
"seasonally_adjusted",
"trend",
"original"
],
"type": "string",
"description": "Statistical adjustment. seasonally_adjusted is recommended for comparing months, trend is a smoothed version for long-term analysis, original is the raw survey estimate. Defaults to seasonally_adjusted."
}
},
"additionalProperties": false
}Retrieve Australia Balance of Payments (BOP) statistics from the ABS BOP dataset. Returns quarterly current prices or chain volume measures for key trade aggregates: current account balance, goods and services credits (exports), goods and services debits (imports), goods credits, goods debits, and primary income credits. Seasonally adjusted, trend, or original data. AUD millions. Source: ABS Cat. 5302.0, CC BY 4.0.
| Argument | Type | Description |
|---|---|---|
| items | array | Balance of payments items to retrieve. current_account = overall current account balance (AUD millions), goods_services_credits = total exports of goods and services, goods_services_debits = total imports of goods and services, goods_credits = goods exports only, goods_debits = goods imports only, primary_income_credits = income credits (investment income received). Defaults to current_account, goods_services_credits, and goods_services_debits. |
| last_n | integer | Number of most-recent quarterly observations to return (1–40). Defaults to 8 (2 years). |
| measure | string | Measurement basis. current_prices = nominal AUD millions (recommended), chain_volume = inflation-adjusted volume, implicit_price_index = price deflator index, terms_of_trade = ratio of export to import prices (available for selected items only). Defaults to current_prices. |
| adjustment | string | Statistical adjustment. seasonally_adjusted removes predictable seasonal patterns, trend is a smoothed version, original is the raw quarterly estimate. Defaults to seasonally_adjusted. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"items": {
"type": "array",
"items": {
"enum": [
"current_account",
"goods_services_credits",
"goods_services_debits",
"goods_credits",
"goods_debits",
"primary_income_credits"
],
"type": "string"
},
"description": "Balance of payments items to retrieve. current_account = overall current account balance (AUD millions), goods_services_credits = total exports of goods and services, goods_services_debits = total imports of goods and services, goods_credits = goods exports only, goods_debits = goods imports only, primary_income_credits = income credits (investment income received). Defaults to current_account, goods_services_credits, and goods_services_debits."
},
"last_n": {
"type": "integer",
"maximum": 40,
"minimum": 1,
"description": "Number of most-recent quarterly observations to return (1–40). Defaults to 8 (2 years)."
},
"measure": {
"enum": [
"current_prices",
"chain_volume",
"implicit_price_index",
"terms_of_trade"
],
"type": "string",
"description": "Measurement basis. current_prices = nominal AUD millions (recommended), chain_volume = inflation-adjusted volume, implicit_price_index = price deflator index, terms_of_trade = ratio of export to import prices (available for selected items only). Defaults to current_prices."
},
"adjustment": {
"enum": [
"seasonally_adjusted",
"trend",
"original"
],
"type": "string",
"description": "Statistical adjustment. seasonally_adjusted removes predictable seasonal patterns, trend is a smoothed version, original is the raw quarterly estimate. Defaults to seasonally_adjusted."
}
},
"additionalProperties": false
}Get time-series usage data — calls, cost, cache hits per hour or day over a period. Visualize usage patterns and trends. Choose granularity: hourly (for 1d period) or daily (for 7d/30d). Free, no charge (APIbase)
| Argument | Type | Description |
|---|---|---|
| period | string | Time period: "1d", "7d", or "30d". Default: "7d" |
| granularity | string | Time bucket granularity: "hour" or "day". Default: "day" |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"period": {
"enum": [
"1d",
"7d",
"30d"
],
"type": "string",
"default": "7d",
"description": "Time period: \"1d\", \"7d\", or \"30d\". Default: \"7d\""
},
"granularity": {
"enum": [
"hour",
"day"
],
"type": "string",
"default": "day",
"description": "Time bucket granularity: \"hour\" or \"day\". Default: \"day\""
}
},
"additionalProperties": false
}Get per-tool usage breakdown — calls, cost, cache hits, average latency, last used. Sort by cost (highest spend), calls (most used), or latency (slowest). Identify your most-used and most-expensive tools. Free, no charge (APIbase)
| Argument | Type | Description |
|---|---|---|
| sort | string | Sort tools by: "cost" (highest spend), "calls" (most used), or "latency" (slowest). Default: "calls" |
| limit | integer | Max number of tools to return (1-100). Default: 20 |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"sort": {
"enum": [
"cost",
"calls",
"latency"
],
"type": "string",
"default": "calls",
"description": "Sort tools by: \"cost\" (highest spend), \"calls\" (most used), or \"latency\" (slowest). Default: \"calls\""
},
"limit": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1,
"description": "Max number of tools to return (1-100). Default: 20"
}
},
"additionalProperties": false
}Get your API usage summary — total calls, total cost, cache hit rate, average latency, and unique tools used. Filter by period: 1 day, 7 days, or 30 days. See how efficiently you are using the platform. Free, no charge (APIbase)
| Argument | Type | Description |
|---|---|---|
| period | string | Time period for usage stats: "1d" (24 hours), "7d" (7 days), or "30d" (30 days). Default: "7d" |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"period": {
"enum": [
"1d",
"7d",
"30d"
],
"type": "string",
"default": "7d",
"description": "Time period for usage stats: \"1d\" (24 hours), \"7d\" (7 days), or \"30d\" (30 days). Default: \"7d\""
}
},
"additionalProperties": false
}Fetch annual macroeconomic time-series data from the ADB Key Indicators Database for any combination of Asian Development Bank member economies and SDMX indicators. Returns structured observations with values, units, data sources, and footnotes. Covers GDP, population, inflation, exchange rates, trade, energy, SDGs, and 700+ other indicators for 50 Asia-Pacific economies (China=PRC, India=IND, Japan=JPN, Indonesia=INO, etc.) from 1960s onward. Workflow: (1) adbkidb.dataflows_list to pick a topic, (2) adbkidb.indicators to find indicator codes, (3) this tool to fetch values. Example: dataflow=EO_NA, indicator_codes=[NGDP_XDC], economy_codes=[PRC,IND], start_year=2015 returns GDP at current prices for China and India from 2015 to present. Source: kidb.adb.org SDMX v3.0 API — ADB open data, no auth, 20 req/min.
| Argument | Type | Description |
|---|---|---|
| dataflow* | string | KIDB dataflow code (e.g. "EO_NA" for National Accounts, "PPL_POP" for Population, "MFP_XR" for Exchange Rates). Use adbkidb.dataflows_list to discover codes, then adbkidb.indicators to find indicator codes within the dataflow. |
| end_year | integer | End year for the data range (e.g. 2024). Defaults to current year. Annual frequency only (A). |
| start_year | integer | Start year for the data range (e.g. 2010). Data availability varies by indicator; most series begin 1990–2000. Defaults to 2000. |
| economy_codes* | array | One or more ADB economy codes (e.g. ["PRC"] for China, ["IND"] for India, ["JPN"] for Japan, ["PRC","IND","INO"] for multiple). Use adbkidb.economies to list all 50 codes. Maximum 10. |
| indicator_codes* | array | One or more indicator codes within the dataflow (e.g. ["NGDP_XDC"] for GDP at current prices in EO_NA, ["LP_PE_NUM_MOP"] for population in PPL_POP). Use adbkidb.indicators to discover codes. Maximum 10. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"dataflow",
"indicator_codes",
"economy_codes"
],
"properties": {
"dataflow": {
"type": "string",
"minLength": 1,
"description": "KIDB dataflow code (e.g. \"EO_NA\" for National Accounts, \"PPL_POP\" for Population, \"MFP_XR\" for Exchange Rates). Use adbkidb.dataflows_list to discover codes, then adbkidb.indicators to find indicator codes within the dataflow."
},
"end_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1960,
"description": "End year for the data range (e.g. 2024). Defaults to current year. Annual frequency only (A)."
},
"start_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1960,
"description": "Start year for the data range (e.g. 2010). Data availability varies by indicator; most series begin 1990–2000. Defaults to 2000."
},
"economy_codes": {
"type": "array",
"items": {
"type": "string",
"maxLength": 3,
"minLength": 2
},
"maxItems": 10,
"minItems": 1,
"description": "One or more ADB economy codes (e.g. [\"PRC\"] for China, [\"IND\"] for India, [\"JPN\"] for Japan, [\"PRC\",\"IND\",\"INO\"] for multiple). Use adbkidb.economies to list all 50 codes. Maximum 10."
},
"indicator_codes": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"maxItems": 10,
"minItems": 1,
"description": "One or more indicator codes within the dataflow (e.g. [\"NGDP_XDC\"] for GDP at current prices in EO_NA, [\"LP_PE_NUM_MOP\"] for population in PPL_POP). Use adbkidb.indicators to discover codes. Maximum 10."
}
},
"additionalProperties": false
}List the 62 available dataflow categories in the ADB Key Indicators Database (KIDB). Covers macroeconomic and social statistics for 50 Asia-Pacific economies. Dataflows are hierarchical topic groups: People (PPL), Economy and Output (EO), Money Finance and Prices (MFP), Government and Governance (GG), Globalization (GLB), Energy and Electricity (EGELC), Transport and Communication (TC), Environment and Climate Change (ENV), and Sustainable Development Goals (SDG_01–SDG_17). Use the returned code with adbkidb.indicators to discover indicator codes, then adbkidb.data to fetch actual values. Source: kidb.adb.org — Asian Development Bank open data, no auth required.
| Argument | Type | Description |
|---|---|---|
| search | string | Optional keyword to filter dataflows by code or name (e.g. "gdp", "SDG", "EO_NA"). Leave empty to list all 62 dataflows. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"search": {
"type": "string",
"description": "Optional keyword to filter dataflows by code or name (e.g. \"gdp\", \"SDG\", \"EO_NA\"). Leave empty to list all 62 dataflows."
}
},
"additionalProperties": false
}List the 50 ADB member economy codes used to query the Key Indicators Database. Returns each economy's 3-letter code and full name. These codes are used as economy_codes in adbkidb.data queries. Key codes: PRC (China), IND (India), JPN (Japan), INO (Indonesia), KOR (Korea), PAK (Pakistan), BAN (Bangladesh), PHI (Philippines), VIE (Viet Nam), THA (Thailand). Note: China is PRC (not CHN), Indonesia is INO (not IDN), Bangladesh is BAN (not BGD). Source: kidb.adb.org — Asian Development Bank member economy reference.
| Argument | Type | Description |
|---|---|---|
| search | string | Optional keyword to filter ADB member economies by code or name (e.g. "india", "PRC", "south"). Leave empty to list all 50 ADB member economies with their 3-letter codes. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"search": {
"type": "string",
"description": "Optional keyword to filter ADB member economies by code or name (e.g. \"india\", \"PRC\", \"south\"). Leave empty to list all 50 ADB member economies with their 3-letter codes."
}
},
"additionalProperties": false
}List all available indicators within an ADB KIDB dataflow. Returns indicator codes, names, and descriptions for a given topic category. For example, dataflow EO_NA returns GDP, GVA, investment, and savings indicators with codes like NGDP_XDC (GDP at current prices) and NGDP_RPCH (real GDP growth). Use the returned codes with adbkidb.data to query actual time-series observations. Typical dataflow codes: PPL_POP (population), EO_NA (national accounts), MFP_XR (exchange rates), GLB_ET (external trade), ENV_CC (climate data). Source: kidb.adb.org — Asian Development Bank open data, no auth required.
| Argument | Type | Description |
|---|---|---|
| dataflow* | string | KIDB dataflow code to list indicators for (e.g. "EO_NA" for National Accounts, "PPL_POP" for Population, "MFP_XR" for Exchange Rates, "SDG_01" for SDG No Poverty). Use adbkidb.dataflows_list to discover all 62 codes. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"dataflow"
],
"properties": {
"dataflow": {
"type": "string",
"minLength": 1,
"description": "KIDB dataflow code to list indicators for (e.g. \"EO_NA\" for National Accounts, \"PPL_POP\" for Population, \"MFP_XR\" for Exchange Rates, \"SDG_01\" for SDG No Poverty). Use adbkidb.dataflows_list to discover all 62 codes."
}
},
"additionalProperties": false
}Forward geocode a US or Canada address to coordinates — returns lat/lng, parsed address components (street, city, state, ZIP, county), accuracy type (rooftop/range/street), and data source. USPS-standardized results with Census data (Geocodio)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max results to return (default 5, max 20) |
| address* | string | US or Canada address to geocode (e.g. "1600 Pennsylvania Ave NW, Washington DC", "350 5th Ave, New York, NY 10118") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"address"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Max results to return (default 5, max 20)"
},
"address": {
"type": "string",
"minLength": 3,
"description": "US or Canada address to geocode (e.g. \"1600 Pennsylvania Ave NW, Washington DC\", \"350 5th Ave, New York, NY 10118\")"
}
},
"additionalProperties": false
}Reverse geocode latitude/longitude to a US or Canada address — returns formatted address, parsed components (street, city, state, ZIP, county), accuracy type, and source. Supports multiple results ranked by proximity (Geocodio)
| Argument | Type | Description |
|---|---|---|
| lat* | number | Latitude (24-72 range for US/Canada, e.g. 38.8976) |
| lon* | number | Longitude (negative for Western Hemisphere, e.g. -77.0365) |
| limit | integer | Max results to return (default 5, max 20) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"maximum": 72,
"minimum": 24,
"description": "Latitude (24-72 range for US/Canada, e.g. 38.8976)"
},
"lon": {
"type": "number",
"maximum": -50,
"minimum": -180,
"description": "Longitude (negative for Western Hemisphere, e.g. -77.0365)"
},
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Max results to return (default 5, max 20)"
}
},
"additionalProperties": false
}Look up a postal/ZIP code in 60+ countries — returns city name, state/region, and lat/lon coordinates. Supports US, UK, Germany, France, Japan, Brazil, India, Australia, and 50+ more countries. Provide country code (ISO 2-letter) + postal code (Zippopotam.us)
| Argument | Type | Description |
|---|---|---|
| postal_code* | string | Postal/ZIP code (e.g. "90210" for US, "10115" for Germany, "SW1A" for UK, "75001" for France) |
| country_code* | string | ISO 3166-1 alpha-2 country code (e.g. "us", "de", "gb", "fr", "jp", "br", "in", "au"). Supports 60+ countries |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country_code",
"postal_code"
],
"properties": {
"postal_code": {
"type": "string",
"minLength": 1,
"description": "Postal/ZIP code (e.g. \"90210\" for US, \"10115\" for Germany, \"SW1A\" for UK, \"75001\" for France)"
},
"country_code": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO 3166-1 alpha-2 country code (e.g. \"us\", \"de\", \"gb\", \"fr\", \"jp\", \"br\", \"in\", \"au\"). Supports 60+ countries"
}
},
"additionalProperties": false
}Look up a UK postcode — returns district, region, country, ward, parish, parliamentary constituency, and lat/lon coordinates. Backed by ONS/Ordnance Survey data. Example: "SW1A 1AA" → Westminster, London (Postcodes.io)
| Argument | Type | Description |
|---|---|---|
| postcode* | string | UK postcode to look up (e.g. "SW1A 1AA" for Westminster, "EC2R 8AH" for City of London, "M1 1AA" for Manchester). Returns district, region, country, lat/lon, parliamentary constituency |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"postcode"
],
"properties": {
"postcode": {
"type": "string",
"minLength": 1,
"description": "UK postcode to look up (e.g. \"SW1A 1AA\" for Westminster, \"EC2R 8AH\" for City of London, \"M1 1AA\" for Manchester). Returns district, region, country, lat/lon, parliamentary constituency"
}
},
"additionalProperties": false
}Find nearest UK postcodes to a lat/lon coordinate — returns postcodes sorted by distance with district info. Use for reverse geocoding in the UK (Postcodes.io)
| Argument | Type | Description |
|---|---|---|
| lat* | number | Latitude (e.g. 51.5074 for London) |
| lon* | number | Longitude (e.g. -0.1278 for London) |
| limit | integer | Max results (1-10, default 5) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"description": "Latitude (e.g. 51.5074 for London)"
},
"lon": {
"type": "number",
"description": "Longitude (e.g. -0.1278 for London)"
},
"limit": {
"type": "integer",
"default": 5,
"maximum": 10,
"minimum": 1,
"description": "Max results (1-10, default 5)"
}
},
"additionalProperties": false
}Check if a UK postcode is valid and exists — returns true/false. Use for form validation or data cleaning (Postcodes.io)
| Argument | Type | Description |
|---|---|---|
| postcode* | string | UK postcode to validate (e.g. "SW1A 1AA"). Returns true if valid format and exists |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"postcode"
],
"properties": {
"postcode": {
"type": "string",
"minLength": 1,
"description": "UK postcode to validate (e.g. \"SW1A 1AA\"). Returns true if valid format and exists"
}
},
"additionalProperties": false
}Look up aircraft details by Mode-S transponder hex code (e.g. "400F6B") or ICAO registration mark (tail number, e.g. "G-RVCL", "N123AB"). Returns aircraft type, ICAO type designator, manufacturer, registered owner, country of registration, and photo URLs when available. Mode-S codes are 6-character hexadecimal unique to each aircraft; registrations follow national formats (N-prefix for US, G- for UK, etc.). Source: ADS-B DB — api.adsbdb.com, MIT license, no auth.
| Argument | Type | Description |
|---|---|---|
| identifier* | string | Aircraft identifier: Mode-S hex code (e.g. "400F6B", "A05ED9") or ICAO registration mark (e.g. "G-RVCL", "N123AB"). Mode-S is a 6-character hexadecimal transponder code; registration is the tail number. Both formats are accepted. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"identifier"
],
"properties": {
"identifier": {
"type": "string",
"description": "Aircraft identifier: Mode-S hex code (e.g. \"400F6B\", \"A05ED9\") or ICAO registration mark (e.g. \"G-RVCL\", \"N123AB\"). Mode-S is a 6-character hexadecimal transponder code; registration is the tail number. Both formats are accepted."
}
},
"additionalProperties": false
}Look up airline details by ICAO 3-letter code (e.g. "BAW" for British Airways, "UAL" for United Airlines) or IATA 2-letter code (e.g. "BA", "UA"). Returns airline name, both ICAO and IATA codes, country of registration, and radio telephony callsign used in ATC communications (e.g. "SPEEDBIRD" for British Airways). Useful for decoding transponder callsigns and identifying aircraft operators. Source: ADS-B DB — api.adsbdb.com, MIT license, no auth.
| Argument | Type | Description |
|---|---|---|
| code* | string | Airline code to look up. Accepts ICAO 3-letter codes (e.g. "BAW" for British Airways, "UAL" for United) or IATA 2-letter codes (e.g. "BA", "UA"). ICAO codes are preferred for unambiguous lookup. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"code"
],
"properties": {
"code": {
"type": "string",
"description": "Airline code to look up. Accepts ICAO 3-letter codes (e.g. \"BAW\" for British Airways, \"UAL\" for United) or IATA 2-letter codes (e.g. \"BA\", \"UA\"). ICAO codes are preferred for unambiguous lookup."
}
},
"additionalProperties": false
}Resolve a flight callsign (e.g. "BAW123", "UAL456") to its origin and destination airports plus operating airline. Returns full airport details: ICAO and IATA codes, name, municipality, country, coordinates, and elevation. Also returns airline name, codes, and ATC callsign. Callsigns combine the airline ICAO code with a flight number and are broadcast by ATC transponders. Useful for enriching ADS-B flight tracking data with route context. Source: ADS-B DB — api.adsbdb.com, MIT license, no auth.
| Argument | Type | Description |
|---|---|---|
| callsign* | string | Flight callsign to resolve, typically the airline ICAO code followed by flight number (e.g. "BAW123" for British Airways flight 123, "UAL456" for United flight 456). Returns origin, destination airports and airline details. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"callsign"
],
"properties": {
"callsign": {
"type": "string",
"description": "Flight callsign to resolve, typically the airline ICAO code followed by flight number (e.g. \"BAW123\" for British Airways flight 123, \"UAL456\" for United flight 456). Returns origin, destination airports and airline details."
}
},
"additionalProperties": false
}List all 54 African countries with ISO codes, capitals, regional classifications, currencies, languages, area, timezone, and border countries. Optionally filter by sub-region: North Africa, West Africa, East Africa, Central Africa, or Southern Africa. Use as a discovery step to get country codes for other Africa API tools.
| Argument | Type | Description |
|---|---|---|
| region | string | Filter by African sub-region. One of: "North Africa", "West Africa", "East Africa", "Central Africa", "Southern Africa". Omit to return all 54 countries. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"region": {
"enum": [
"North Africa",
"West Africa",
"East Africa",
"Central Africa",
"Southern Africa"
],
"type": "string",
"description": "Filter by African sub-region. One of: \"North Africa\", \"West Africa\", \"East Africa\", \"Central Africa\", \"Southern Africa\". Omit to return all 54 countries."
}
},
"additionalProperties": false
}Get a live macroeconomic snapshot for an African country. Returns 20–60 indicators across economy (GDP, inflation, trade), climate (precipitation, air quality), health (life expectancy, access to services), and demographic signals. Sources: World Bank WDI, IMF, UN, NASA POWER. Use country_code from africa.countries.list. Ideal for rapid country assessment and investment screening across 54 African nations.
| Argument | Type | Description |
|---|---|---|
| country_code* | string | ISO 3166-1 alpha-2 country code (2-letter lowercase, e.g. "ng" for Nigeria, "ke" for Kenya, "za" for South Africa, "eg" for Egypt, "gh" for Ghana). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country_code"
],
"properties": {
"country_code": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO 3166-1 alpha-2 country code (2-letter lowercase, e.g. \"ng\" for Nigeria, \"ke\" for Kenya, \"za\" for South Africa, \"eg\" for Egypt, \"gh\" for Ghana)."
}
},
"additionalProperties": false
}Query a specific economic indicator time series for an African country. Supports 120+ metrics including GDP (gdp_usd), inflation rate (inflation_pct), GDP per capita (gdp_per_capita_usd), unemployment (unemployment_pct), trade balance (trade_balance_usd), foreign direct investment (fdi_inflows_usd), and more. Returns annual data sourced from World Bank, IMF, and UN. Omit start_year/end_year for latest value; supply both for a historical range (e.g. 2010–2024). Use africa.countries.signals to discover available metric_key values for a country.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of data points to return (1–100, default 20). |
| end_year | integer | End year for historical range (e.g. 2024). Required when start_year is provided. |
| metric_key* | string | Economic indicator key (e.g. "gdp_usd" for GDP in USD, "inflation_pct" for CPI inflation rate, "gdp_per_capita_usd" for GDP per capita, "unemployment_pct" for unemployment rate, "trade_balance_usd" for trade balance, "fdi_inflows_usd" for foreign direct investment). Use africa.countries.signals to discover available metric_key values for a country. |
| start_year | integer | Start year for historical range (e.g. 2015). Omit along with end_year to return the single latest observation. |
| country_code* | string | ISO 3166-1 alpha-2 country code (2-letter lowercase, e.g. "ng", "ke", "za", "eg", "gh"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country_code",
"metric_key"
],
"properties": {
"limit": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1,
"description": "Maximum number of data points to return (1–100, default 20)."
},
"end_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1960,
"description": "End year for historical range (e.g. 2024). Required when start_year is provided."
},
"metric_key": {
"type": "string",
"description": "Economic indicator key (e.g. \"gdp_usd\" for GDP in USD, \"inflation_pct\" for CPI inflation rate, \"gdp_per_capita_usd\" for GDP per capita, \"unemployment_pct\" for unemployment rate, \"trade_balance_usd\" for trade balance, \"fdi_inflows_usd\" for foreign direct investment). Use africa.countries.signals to discover available metric_key values for a country."
},
"start_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1960,
"description": "Start year for historical range (e.g. 2015). Omit along with end_year to return the single latest observation."
},
"country_code": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO 3166-1 alpha-2 country code (2-letter lowercase, e.g. \"ng\", \"ke\", \"za\", \"eg\", \"gh\")."
}
},
"additionalProperties": false
}Get daily USD exchange rates for all 50+ African currencies. Returns current rate per USD for NGN (Nigerian naira), KES (Kenyan shilling), ZAR (South African rand), EGP (Egyptian pound), GHS (Ghanaian cedi), ETB (Ethiopian birr), MAD (Moroccan dirham), and all other African currency pairs. Rates updated daily. Filter by country code to get the rate for a specific country's currency.
| Argument | Type | Description |
|---|---|---|
| country_code | string | Filter FX rates to the currency of a single country (ISO 3166-1 alpha-2, e.g. "ng" for NGN, "ke" for KES, "za" for ZAR). Omit to return all 50+ African currency rates. |
| quote_currencies | string | Comma-separated list of specific quote currencies to return (e.g. "NGN,KES,ZAR,GHS,EGP"). Omit to return all available African currencies. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"country_code": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Filter FX rates to the currency of a single country (ISO 3166-1 alpha-2, e.g. \"ng\" for NGN, \"ke\" for KES, \"za\" for ZAR). Omit to return all 50+ African currency rates."
},
"quote_currencies": {
"type": "string",
"description": "Comma-separated list of specific quote currencies to return (e.g. \"NGN,KES,ZAR,GHS,EGP\"). Omit to return all available African currencies."
}
},
"additionalProperties": false
}List presidential, parliamentary, and local government elections across all 54 African countries. Returns election scope (presidential/parliamentary/local), status (upcoming/completed/ongoing), dates, and country. Filter by country code, election status, or year range. Use status="upcoming" to find upcoming African elections relevant to political risk analysis or investment due diligence. Data sourced from Wikidata and official election commission records.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of elections to return (1–100, default 20). |
| status | string | Filter by election status: "upcoming" (future elections), "completed" (past elections), or "ongoing" (elections currently in progress). |
| end_year | integer | Filter elections up to and including this year (e.g. 2025). |
| start_year | integer | Filter elections from this year onwards (e.g. 2020). |
| country_code | string | ISO 3166-1 alpha-2 country code to filter elections to a single country (e.g. "ng", "ke", "za", "eg"). Omit to return elections for all 54 countries. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1,
"description": "Maximum number of elections to return (1–100, default 20)."
},
"status": {
"enum": [
"upcoming",
"completed",
"ongoing"
],
"type": "string",
"description": "Filter by election status: \"upcoming\" (future elections), \"completed\" (past elections), or \"ongoing\" (elections currently in progress)."
},
"end_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1990,
"description": "Filter elections up to and including this year (e.g. 2025)."
},
"start_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1990,
"description": "Filter elections from this year onwards (e.g. 2020)."
},
"country_code": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO 3166-1 alpha-2 country code to filter elections to a single country (e.g. \"ng\", \"ke\", \"za\", \"eg\"). Omit to return elections for all 54 countries."
}
},
"additionalProperties": false
}⚡ ACTION: Generate images from text prompts using Stable Diffusion — supports style presets (anime, cinematic, pixel-art, photographic...), aspect ratios, negative prompts. Returns base64 PNG data URI. Powered by Stability AI
| Argument | Type | Description |
|---|---|---|
| prompt* | string | Text prompt describing the image to generate (e.g. "a futuristic city at sunset, cyberpunk style, detailed") |
| aspect_ratio | string | Image aspect ratio (default "1:1") |
| style_preset | string | Style preset to guide generation |
| negative_prompt | string | What to exclude from the image (e.g. "blurry, low quality, text, watermark") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"prompt"
],
"properties": {
"prompt": {
"type": "string",
"maxLength": 10000,
"minLength": 1,
"description": "Text prompt describing the image to generate (e.g. \"a futuristic city at sunset, cyberpunk style, detailed\")"
},
"aspect_ratio": {
"enum": [
"1:1",
"16:9",
"21:9",
"2:3",
"3:2",
"4:5",
"5:4",
"9:16",
"9:21"
],
"type": "string",
"description": "Image aspect ratio (default \"1:1\")"
},
"style_preset": {
"enum": [
"3d-model",
"analog-film",
"anime",
"cinematic",
"comic-book",
"digital-art",
"enhance",
"fantasy-art",
"isometric",
"line-art",
"low-poly",
"neon-punk",
"origami",
"photographic",
"pixel-art",
"tile-texture"
],
"type": "string",
"description": "Style preset to guide generation"
},
"negative_prompt": {
"type": "string",
"description": "What to exclude from the image (e.g. \"blurry, low quality, text, watermark\")"
}
},
"additionalProperties": false
}Extract text from any image or PDF URL using OCR — supports 20+ languages including English, Russian, Chinese, Japanese, Korean, Arabic. Returns recognized text. Handles PNG, JPG, GIF, BMP, PDF, TIFF (OCR.space)
| Argument | Type | Description |
|---|---|---|
| url* | string | URL of the image or PDF to extract text from (PNG, JPG, GIF, BMP, PDF, TIFF supported) |
| filetype | string | File type hint — set if URL has no extension or content-type is wrong |
| language | string | OCR language: "eng" (English, default), "rus" (Russian), "ger" (German), "fre" (French), "spa" (Spanish), "jpn" (Japanese), "kor" (Korean), "chs" (Chinese Simplified) |
| detect_orientation | boolean | Auto-detect and correct image orientation (default false) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "URL of the image or PDF to extract text from (PNG, JPG, GIF, BMP, PDF, TIFF supported)"
},
"filetype": {
"enum": [
"PNG",
"JPG",
"GIF",
"BMP",
"PDF",
"TIFF"
],
"type": "string",
"description": "File type hint — set if URL has no extension or content-type is wrong"
},
"language": {
"enum": [
"eng",
"ara",
"chs",
"cht",
"dan",
"dut",
"fin",
"fre",
"ger",
"gre",
"hun",
"ita",
"jpn",
"kor",
"nor",
"pol",
"por",
"rus",
"spa",
"swe",
"tur"
],
"type": "string",
"description": "OCR language: \"eng\" (English, default), \"rus\" (Russian), \"ger\" (German), \"fre\" (French), \"spa\" (Spanish), \"jpn\" (Japanese), \"kor\" (Korean), \"chs\" (Chinese Simplified)"
},
"detect_orientation": {
"type": "boolean",
"description": "Auto-detect and correct image orientation (default false)"
}
},
"additionalProperties": false
}Get MIP business analysis results — business name, category, location, competitors, value propositions, and market surface data (AIPush)
| Argument | Type | Description |
|---|---|---|
| website_domain* | string | Domain to get the MIP business analysis for. Must have completed setup (mip_status = "ready"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"website_domain"
],
"properties": {
"website_domain": {
"type": "string",
"maxLength": 253,
"minLength": 3,
"description": "Domain to get the MIP business analysis for. Must have completed setup (mip_status = \"ready\")."
}
},
"additionalProperties": false
}Test whether AI assistants (ChatGPT, Perplexity, Gemini) know about and recommend a brand — returns per-model visibility scores (AIPush)
| Argument | Type | Description |
|---|---|---|
| website_domain* | string | Domain to check AI visibility for (e.g. "example.com"). Tests whether AI assistants know about and recommend this brand. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"website_domain"
],
"properties": {
"website_domain": {
"type": "string",
"maxLength": 253,
"minLength": 3,
"description": "Domain to check AI visibility for (e.g. \"example.com\"). Tests whether AI assistants know about and recommend this brand."
}
},
"additionalProperties": false
}⚡ ACTION: Start a full AI market intelligence report for any website. Provide a URL (e.g. "https://stripe.com") — the system crawls the site, extracts value propositions and services, identifies competitors, scores them, finds keyword gaps and market opportunities. Returns report_id — poll with aipush.market_report_status. Takes ~2 minutes. Cost: $29.99 (AIPush MIP)
| Argument | Type | Description |
|---|---|---|
| target_url* | string | Website URL to analyze (e.g. "https://stripe.com"). The system crawls the site, extracts value propositions, finds competitors, and builds a full market intelligence report with competitive scoring, keyword gaps, and market opportunities. Takes ~2 minutes. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"target_url"
],
"properties": {
"target_url": {
"type": "string",
"format": "uri",
"description": "Website URL to analyze (e.g. \"https://stripe.com\"). The system crawls the site, extracts value propositions, finds competitors, and builds a full market intelligence report with competitive scoring, keyword gaps, and market opportunities. Takes ~2 minutes."
}
},
"additionalProperties": false
}Poll the status of a market intelligence report. Returns "running" with current step (crawling/ai_analysis), or "completed" with full profile_json containing competitors (scored), keywords, market surface, and evidence. Free to poll (AIPush MIP)
| Argument | Type | Description |
|---|---|---|
| report_id* | string | Report ID in UUID format (e.g. "ed90f49c-15d8-46ee-9799-c6a8d468f6ba") — returned by aipush.market_report. Poll until status = "completed" to get full profile_json with competitors, keywords, and market analysis. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"report_id"
],
"properties": {
"report_id": {
"type": "string",
"format": "uuid",
"description": "Report ID in UUID format (e.g. \"ed90f49c-15d8-46ee-9799-c6a8d468f6ba\") — returned by aipush.market_report. Poll until status = \"completed\" to get full profile_json with competitors, keywords, and market analysis."
}
},
"additionalProperties": false
}Get full HTML content and metadata of a specific generated page by slug (AIPush)
| Argument | Type | Description |
|---|---|---|
| slug* | string | Page slug identifier (e.g. "best-hotels-bangkok-2026"). Returned by aipush.list_pages or aipush.generate_page. |
| website_domain* | string | Domain the page belongs to (e.g. "example.com"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"website_domain",
"slug"
],
"properties": {
"slug": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Page slug identifier (e.g. \"best-hotels-bangkok-2026\"). Returned by aipush.list_pages or aipush.generate_page."
},
"website_domain": {
"type": "string",
"maxLength": 253,
"minLength": 3,
"description": "Domain the page belongs to (e.g. \"example.com\")."
}
},
"additionalProperties": false
}Requires mip_status='ready' and cf_hostname_status='active' (check website_status first). Generates one AI-optimized HTML page structured for AI assistant answer compilation (ChatGPT, Perplexity, Gemini). Page includes decision question, short answer with CTA, comparison, pricing, FAQ. Published at reference.{domain}/{slug}. Optional keyword parameter targets specific search intent (AIPush)
| Argument | Type | Description |
|---|---|---|
| keyword | string | Target keyword or topic for the page (e.g. "best hotels in Bangkok", "affordable dentist near me"). If omitted, the system picks from the semantic coverage grid. |
| website_domain* | string | Domain of the website to generate a page for. Must be set up first via aipush.setup_website. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"website_domain"
],
"properties": {
"keyword": {
"type": "string",
"maxLength": 200,
"minLength": 2,
"description": "Target keyword or topic for the page (e.g. \"best hotels in Bangkok\", \"affordable dentist near me\"). If omitted, the system picks from the semantic coverage grid."
},
"website_domain": {
"type": "string",
"maxLength": 253,
"minLength": 3,
"description": "Domain of the website to generate a page for. Must be set up first via aipush.setup_website."
}
},
"additionalProperties": false
}⚡ ACTION: List all published AI marketing pages for a website with URLs, titles, and publish dates (AIPush)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of pages to return (default 20, max 100). |
| offset | integer | Number of pages to skip for pagination (default 0). |
| website_domain* | string | Domain to list pages for (e.g. "example.com"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"website_domain"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of pages to return (default 20, max 100)."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Number of pages to skip for pagination (default 0)."
},
"website_domain": {
"type": "string",
"maxLength": 253,
"minLength": 3,
"description": "Domain to list pages for (e.g. \"example.com\")."
}
},
"additionalProperties": false
}Register a website for AI marketing. Call with domain + target_url. If DNS is not configured, returns DNS_NOT_VERIFIED with exact CNAME record instructions — relay to user: reference.{domain} → cname.aipush.app. After user creates DNS record, call again. On success: client registered, MIP analysis starts automatically, SSL provisioning begins. Poll website_status until mip_status='ready' and cf_hostname_status='active', then use generate_page. Idempotent (AIPush)
| Argument | Type | Description |
|---|---|---|
| target_url* | string | Target conversion URL — the single page all generated content will link to (e.g. "https://example.com/book", "https://myhotel.com/reserve"). Must be on the same domain. |
| website_domain* | string | Domain of the website to register (e.g. "example.com", "myhotel.com"). Must have a CNAME record: reference.{domain} → cname.aipush.app |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"website_domain",
"target_url"
],
"properties": {
"target_url": {
"type": "string",
"format": "uri",
"maxLength": 2048,
"description": "Target conversion URL — the single page all generated content will link to (e.g. \"https://example.com/book\", \"https://myhotel.com/reserve\"). Must be on the same domain."
},
"website_domain": {
"type": "string",
"maxLength": 253,
"minLength": 3,
"description": "Domain of the website to register (e.g. \"example.com\", \"myhotel.com\"). Must have a CNAME record: reference.{domain} → cname.aipush.app"
}
},
"additionalProperties": false
}Poll website readiness after setup_website. Returns billing_status, mip_status ('empty'|'pending'|'ready'), cf_hostname_status, cf_ssl_status, pages_total. Gate your workflow: wait for mip_status='ready' AND cf_hostname_status='active' before calling generate_page. Safe to poll repeatedly (AIPush)
| Argument | Type | Description |
|---|---|---|
| website_domain* | string | Domain to check status for (e.g. "example.com"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"website_domain"
],
"properties": {
"website_domain": {
"type": "string",
"maxLength": 253,
"minLength": 3,
"description": "Domain to check status for (e.g. \"example.com\")."
}
},
"additionalProperties": false
}Find callable tools by intent, category, or max price — ranked by relevance, then measured quality, then price. Returns pricing, payment rails, live availability, and quality for each match; unavailable tools are excluded unless include_unavailable=true. Free, no charge (APIbase)
| Argument | Type | Description |
|---|---|---|
| kind | string | "merchant" returns shops only and requires intent. Default: tools and shops |
| limit | integer | Max number of results (1-50). Default: 10 |
| intent | string | Free-text description of the task, e.g. "find current hotel prices in Tokyo" |
| category | string | Filter by category (one of TOOL_DEFINITIONS[].category — see apibase.discover results for valid values) |
| max_price_usd | number | Only return tools priced at or below this amount (USD) |
| include_unavailable | boolean | Include tools currently marked unavailable (cannot be called right now). Default: false |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"kind": {
"enum": [
"tool",
"merchant"
],
"type": "string",
"description": "\"merchant\" returns shops only and requires intent. Default: tools and shops"
},
"limit": {
"type": "integer",
"default": 10,
"maximum": 50,
"minimum": 1,
"description": "Max number of results (1-50). Default: 10"
},
"intent": {
"type": "string",
"description": "Free-text description of the task, e.g. \"find current hotel prices in Tokyo\""
},
"category": {
"type": "string",
"description": "Filter by category (one of TOOL_DEFINITIONS[].category — see apibase.discover results for valid values)"
},
"max_price_usd": {
"type": "number",
"minimum": 0,
"description": "Only return tools priced at or below this amount (USD)"
},
"include_unavailable": {
"type": "boolean",
"default": false,
"description": "Include tools currently marked unavailable (cannot be called right now). Default: false"
}
},
"additionalProperties": false
}Get full metadata for an Internet Archive item by identifier — title, creator, description, date, mediatype, subjects, license, collection, and a list of downloadable files with format and size (Internet Archive metadata API)
| Argument | Type | Description |
|---|---|---|
| identifier* | string | archive.org item identifier, e.g. "goodytwoshoes00newyiala" (get from archiveorg.search results' identifier field, or the tail of an archive.org/details/{identifier} URL) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"identifier"
],
"properties": {
"identifier": {
"type": "string",
"description": "archive.org item identifier, e.g. \"goodytwoshoes00newyiala\" (get from archiveorg.search results' identifier field, or the tail of an archive.org/details/{identifier} URL)"
}
},
"additionalProperties": false
}Search 40M+ items in the Internet Archive — books, movies, audio, software, images, and archived web pages. Filter by mediatype (texts/movies/audio/software/image/data/web) and creator. Returns identifier, title, creator, date, and description for each match (Internet Archive advancedsearch.php)
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default: 1) |
| rows | integer | Number of results to return (default: 10, max: 50) |
| query | string | Full-text search query across title, description, and text (e.g. "moon landing 1969"). Omit to browse by mediatype/creator alone |
| creator | string | Filter by creator/author/uploader name (e.g. "NASA", "mark twain") |
| mediatype | string | Filter by item type: texts (books/docs), movies, audio, software, image, data, web (archived sites), collection |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default: 1)"
},
"rows": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results to return (default: 10, max: 50)"
},
"query": {
"type": "string",
"description": "Full-text search query across title, description, and text (e.g. \"moon landing 1969\"). Omit to browse by mediatype/creator alone"
},
"creator": {
"type": "string",
"description": "Filter by creator/author/uploader name (e.g. \"NASA\", \"mark twain\")"
},
"mediatype": {
"enum": [
"texts",
"movies",
"audio",
"software",
"image",
"data",
"web",
"collection",
"account"
],
"type": "string",
"description": "Filter by item type: texts (books/docs), movies, audio, software, image, data, web (archived sites), collection"
}
},
"additionalProperties": false
}Check whether a URL has an archived snapshot in the Wayback Machine, optionally closest to a given timestamp. Returns availability, the archived snapshot URL, and its capture timestamp (Internet Archive Wayback Availability API)
| Argument | Type | Description |
|---|---|---|
| url* | string | The live URL to check for an archived snapshot in the Wayback Machine (e.g. "example.com" or "https://example.com/page") |
| timestamp | string | Find the snapshot closest to this timestamp, format YYYYMMDDhhmmss (e.g. "20260101" for Jan 1 2026). Omit for the most recent snapshot |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "The live URL to check for an archived snapshot in the Wayback Machine (e.g. \"example.com\" or \"https://example.com/page\")"
},
"timestamp": {
"type": "string",
"description": "Find the snapshot closest to this timestamp, format YYYYMMDDhhmmss (e.g. \"20260101\" for Jan 1 2026). Omit for the most recent snapshot"
}
},
"additionalProperties": false
}Get exchange information and available trading pairs on AsterDEX
| Argument | Type | Description |
|---|---|---|
| symbol | string | Trading pair symbol to filter (e.g. BTCUSDT). Omit for all pairs. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"symbol": {
"type": "string",
"description": "Trading pair symbol to filter (e.g. BTCUSDT). Omit for all pairs."
}
},
"additionalProperties": false
}Get candlestick (OHLCV) data for a trading pair on AsterDEX
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of candles (default 100) |
| symbol* | string | Trading pair symbol (e.g. BTCUSDT) |
| end_time | integer | End time in milliseconds since epoch |
| interval | string | Candlestick interval (default 1h) |
| start_time | integer | Start time in milliseconds since epoch |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"symbol"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 1500,
"minimum": 1,
"description": "Number of candles (default 100)"
},
"symbol": {
"type": "string",
"description": "Trading pair symbol (e.g. BTCUSDT)"
},
"end_time": {
"type": "integer",
"description": "End time in milliseconds since epoch"
},
"interval": {
"enum": [
"1m",
"3m",
"5m",
"15m",
"30m",
"1h",
"2h",
"4h",
"6h",
"8h",
"12h",
"1d",
"3d",
"1w",
"1M"
],
"type": "string",
"description": "Candlestick interval (default 1h)"
},
"start_time": {
"type": "integer",
"description": "Start time in milliseconds since epoch"
}
},
"additionalProperties": false
}Get order book depth for a trading pair on AsterDEX
| Argument | Type | Description |
|---|---|---|
| limit | integer | Depth limit (default 20) |
| symbol* | string | Trading pair symbol (e.g. BTCUSDT) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"symbol"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 5,
"description": "Depth limit (default 20)"
},
"symbol": {
"type": "string",
"description": "Trading pair symbol (e.g. BTCUSDT)"
}
},
"additionalProperties": false
}Get 24-hour ticker statistics for trading pairs on AsterDEX
| Argument | Type | Description |
|---|---|---|
| symbol | string | Trading pair symbol (e.g. BTCUSDT). Omit for all pairs. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"symbol": {
"type": "string",
"description": "Trading pair symbol (e.g. BTCUSDT). Omit for all pairs."
}
},
"additionalProperties": false
}Get full metadata for one Australian Government open dataset by id: title, notes, organization, tags, license, and the full resource list (name, format, download URL, size) for that dataset. Data: data.gov.au CKAN Action API, no auth required.
| Argument | Type | Description |
|---|---|---|
| id* | string | au-data-gov dataset UUID or URL slug (e.g. from dataset_search results) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "au-data-gov dataset UUID or URL slug (e.g. from dataset_search results)"
}
},
"additionalProperties": false
}Search the Australian Government open data catalog (data.gov.au) by free text and/or publishing agency, returning dataset id, title, notes, organization, and modified date. Use au-data-gov.organization_search to find valid agency filter slugs. Data: data.gov.au CKAN Action API, no auth required.
| Argument | Type | Description |
|---|---|---|
| rows | integer | Number of datasets to return (1-20, default 10) |
| query | string | Free-text search across dataset title/description (e.g. "rainfall") |
| organization | string | Publishing agency slug to filter by (e.g. "aihw") — see au-data-gov.organization_search |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"rows": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of datasets to return (1-20, default 10)"
},
"query": {
"type": "string",
"description": "Free-text search across dataset title/description (e.g. \"rainfall\")"
},
"organization": {
"type": "string",
"description": "Publishing agency slug to filter by (e.g. \"aihw\") — see au-data-gov.organization_search"
}
},
"additionalProperties": false
}Look up Australian federal/state/territory agencies and organizations publishing on the open data portal by name, returning id, slug, and title. Use the returned slug as the `organization` filter for au-data-gov.dataset_search. Data: data.gov.au CKAN Action API, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max organizations to return (1-50, default 20) |
| query | string | Free-text search on organization name/title (e.g. "health") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Max organizations to return (1-50, default 20)"
},
"query": {
"type": "string",
"description": "Free-text search on organization name/title (e.g. \"health\")"
}
},
"additionalProperties": false
}List the Australian Government open data AGIFT subject taxonomy (e.g. "health_and_safety", "nature_and_environment") with the current dataset count per subject, optionally filtered by a substring. Browse-only reference (not usable as a dataset_search filter on this portal). Data: data.gov.au CKAN Action API, no auth required.
| Argument | Type | Description |
|---|---|---|
| query | string | Substring filter on subject slug (e.g. "health") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"query": {
"type": "string",
"description": "Substring filter on subject slug (e.g. \"health\")"
}
},
"additionalProperties": false
}Retrieve the completed transcription text, word count, confidence score, detected language, and speaker labels (if diarization was enabled). Use transcript_id from submit (AssemblyAI)
| Argument | Type | Description |
|---|---|---|
| transcript_id* | string | Transcript ID to get the completed transcription text for |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"transcript_id"
],
"properties": {
"transcript_id": {
"type": "string",
"description": "Transcript ID to get the completed transcription text for"
}
},
"additionalProperties": false
}Check the status of a transcription job by transcript_id — queued, processing, completed, or error. Returns audio duration when completed (AssemblyAI)
| Argument | Type | Description |
|---|---|---|
| transcript_id* | string | Transcript ID returned from transcribe.submit (e.g. "aa8f42b3-e81e-453a-b010-a074ae76403b") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"transcript_id"
],
"properties": {
"transcript_id": {
"type": "string",
"description": "Transcript ID returned from transcribe.submit (e.g. \"aa8f42b3-e81e-453a-b010-a074ae76403b\")"
}
},
"additionalProperties": false
}Submit an audio file URL for speech-to-text transcription. Returns a transcript_id to check status and retrieve results. Supports MP3, WAV, M4A, FLAC, OGG, WebM. 99 languages auto-detected. Optional speaker diarization. Requires duration_seconds (max 4 h); priced per audio minute: max($0.01, ceil(minutes) x $0.005), and the job is cut at the declared duration (AssemblyAI)
| Argument | Type | Description |
|---|---|---|
| model | string | Speech model: "universal-2" (default, fast, 99 languages) or "universal-3-pro" (highest accuracy, promptable) |
| audio_url* | string | Publicly accessible URL of the audio file to transcribe (MP3, WAV, M4A, FLAC, OGG, WebM) |
| language_code | string | Language code (e.g. "en", "es", "de", "fr", "ja"). Auto-detected if omitted |
| speaker_labels | boolean | Enable speaker diarization — detect who said what (default false) |
| duration_seconds* | integer | Audio duration in seconds (required, max 14400 = 4 h). Billed per audio minute: max($0.01, ceil(minutes) x $0.005). The job is cut at this duration upstream, so audio longer than declared is transcribed only up to it |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"duration_seconds",
"audio_url"
],
"properties": {
"model": {
"enum": [
"universal-2",
"universal-3-pro"
],
"type": "string",
"description": "Speech model: \"universal-2\" (default, fast, 99 languages) or \"universal-3-pro\" (highest accuracy, promptable)"
},
"audio_url": {
"type": "string",
"format": "uri",
"description": "Publicly accessible URL of the audio file to transcribe (MP3, WAV, M4A, FLAC, OGG, WebM)"
},
"language_code": {
"type": "string",
"description": "Language code (e.g. \"en\", \"es\", \"de\", \"fr\", \"ja\"). Auto-detected if omitted"
},
"speaker_labels": {
"type": "boolean",
"description": "Enable speaker diarization — detect who said what (default false)"
},
"duration_seconds": {
"type": "integer",
"maximum": 14400,
"minimum": 1,
"description": "Audio duration in seconds (required, max 14400 = 4 h). Billed per audio minute: max($0.01, ceil(minutes) x $0.005). The job is cut at this duration upstream, so audio longer than declared is transcribed only up to it"
}
},
"additionalProperties": false
}Get flight price calendar for a route
| Argument | Type | Description |
|---|---|---|
| month | string | Month in YYYY-MM format to get calendar prices (e.g. 2026-06) |
| origin* | string | Departure city or airport IATA code (e.g. MOW, JFK) |
| currency | string | Currency code for prices (default usd) |
| destination* | string | Arrival IATA code (e.g. BKK, LON) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"origin",
"destination"
],
"properties": {
"month": {
"type": "string",
"description": "Month in YYYY-MM format to get calendar prices (e.g. 2026-06)"
},
"origin": {
"type": "string",
"maxLength": 4,
"minLength": 2,
"description": "Departure city or airport IATA code (e.g. MOW, JFK)"
},
"currency": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "Currency code for prices (default usd)"
},
"destination": {
"type": "string",
"maxLength": 4,
"minLength": 2,
"description": "Arrival IATA code (e.g. BKK, LON)"
}
},
"additionalProperties": false
}Find cheapest flights from an origin
| Argument | Type | Description |
|---|---|---|
| origin* | string | Departure city or airport IATA code (e.g. MOW, BER) |
| currency | string | Currency code for prices (default usd) |
| destination | string | Arrival IATA code (omit to find cheapest flights to anywhere) |
| direct_only | boolean | Only return direct (non-stop) flights |
| departure_month | string | Filter by departure month in YYYY-MM format |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"origin"
],
"properties": {
"origin": {
"type": "string",
"maxLength": 4,
"minLength": 2,
"description": "Departure city or airport IATA code (e.g. MOW, BER)"
},
"currency": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "Currency code for prices (default usd)"
},
"destination": {
"type": "string",
"maxLength": 4,
"minLength": 2,
"description": "Arrival IATA code (omit to find cheapest flights to anywhere)"
},
"direct_only": {
"type": "boolean",
"description": "Only return direct (non-stop) flights"
},
"departure_month": {
"type": "string",
"description": "Filter by departure month in YYYY-MM format"
}
},
"additionalProperties": false
}Find nearby flight destinations
| Argument | Type | Description |
|---|---|---|
| origin* | string | Departure city IATA code (e.g. MOW) |
| currency | string | Currency code for prices (default usd) |
| depart_date | string | Departure date in YYYY-MM-DD format |
| destination* | string | Target destination IATA code — also searches nearby airports |
| flexibility | integer | Date flexibility in days (+/- from given dates) |
| return_date | string | Return date in YYYY-MM-DD format |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"origin",
"destination"
],
"properties": {
"origin": {
"type": "string",
"maxLength": 4,
"minLength": 2,
"description": "Departure city IATA code (e.g. MOW)"
},
"currency": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "Currency code for prices (default usd)"
},
"depart_date": {
"type": "string",
"description": "Departure date in YYYY-MM-DD format"
},
"destination": {
"type": "string",
"maxLength": 4,
"minLength": 2,
"description": "Target destination IATA code — also searches nearby airports"
},
"flexibility": {
"type": "integer",
"maximum": 7,
"minimum": 0,
"description": "Date flexibility in days (+/- from given dates)"
},
"return_date": {
"type": "string",
"description": "Return date in YYYY-MM-DD format"
}
},
"additionalProperties": false
}Get popular flight routes from an origin
| Argument | Type | Description |
|---|---|---|
| origin* | string | Departure city IATA code (e.g. MOW, NYC, LON) |
| currency | string | Currency code for prices (default usd) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"origin"
],
"properties": {
"origin": {
"type": "string",
"maxLength": 4,
"minLength": 2,
"description": "Departure city IATA code (e.g. MOW, NYC, LON)"
},
"currency": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "Currency code for prices (default usd)"
}
},
"additionalProperties": false
}Search for flights between airports
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max number of results to return (default 10) |
| origin* | string | Departure city or airport IATA code (e.g. MOW, JFK, BKK) |
| currency | string | Currency code for prices (default usd) |
| destination | string | Arrival IATA code (omit to search all destinations) |
| direct_only | boolean | Only show non-stop flights (default false) |
| departure_date | string | Departure date in YYYY-MM-DD format (filters results to this date and later) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"origin"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 30,
"minimum": 1,
"description": "Max number of results to return (default 10)"
},
"origin": {
"type": "string",
"maxLength": 4,
"minLength": 2,
"description": "Departure city or airport IATA code (e.g. MOW, JFK, BKK)"
},
"currency": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "Currency code for prices (default usd)"
},
"destination": {
"type": "string",
"maxLength": 4,
"minLength": 2,
"description": "Arrival IATA code (omit to search all destinations)"
},
"direct_only": {
"type": "boolean",
"description": "Only show non-stop flights (default false)"
},
"departure_date": {
"type": "string",
"description": "Departure date in YYYY-MM-DD format (filters results to this date and later)"
}
},
"additionalProperties": false
}Look up airport by name or code
| Argument | Type | Description |
|---|---|---|
| query* | string | Airport name, city name, or IATA code to search for (e.g. Bangkok, JFK, Heathrow) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"minLength": 1,
"description": "Airport name, city name, or IATA code to search for (e.g. Bangkok, JFK, Heathrow)"
}
},
"additionalProperties": false
}Current METAR (METeorological Aerodrome Report) for one or more airports — official aviation weather observations (wind, visibility, sky condition, temperature, dewpoint, altimeter, remarks). Updates every 1 hour, more often when conditions change rapidly.
| Argument | Type | Description |
|---|---|---|
| hours | integer | Hours of history to return (default 2, max 72) |
| icao_codes* | string | Comma-separated ICAO airport codes (uppercase, 4 letters each, e.g. 'KJFK,KLAX,EGLL,RJTT'). Max 20 per call. Examples: KJFK (New York JFK), EGLL (London Heathrow), RJTT (Tokyo Haneda). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"icao_codes"
],
"properties": {
"hours": {
"type": "integer",
"default": 2,
"maximum": 72,
"minimum": 1,
"description": "Hours of history to return (default 2, max 72)"
},
"icao_codes": {
"type": "string",
"description": "Comma-separated ICAO airport codes (uppercase, 4 letters each, e.g. 'KJFK,KLAX,EGLL,RJTT'). Max 20 per call. Examples: KJFK (New York JFK), EGLL (London Heathrow), RJTT (Tokyo Haneda)."
}
},
"additionalProperties": false
}Active SIGMET (SIGnificant METeorological information) and AIRMET reports — flight safety hazards including thunderstorms, turbulence, icing, volcanic ash, dust storms, mountain obscuration. Used by pilots and dispatchers for go/no-go decisions.
| Argument | Type | Description |
|---|---|---|
| _unused | string | Reserved for future hazard-type filtering |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"_unused": {
"type": "string",
"description": "Reserved for future hazard-type filtering"
}
},
"additionalProperties": false
}TAF (Terminal Aerodrome Forecast) for an airport — aviation forecast valid for next 24-30 hours with wind, visibility, weather phenomena, and sky conditions in 6-hour windows. Updates 4× daily.
| Argument | Type | Description |
|---|---|---|
| icao_codes* | string | Comma-separated ICAO airport codes. Max 20 per call. Examples: KJFK (New York JFK), EGLL (London Heathrow), OMDB (Dubai International), YSSY (Sydney Kingsford Smith). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"icao_codes"
],
"properties": {
"icao_codes": {
"type": "string",
"description": "Comma-separated ICAO airport codes. Max 20 per call. Examples: KJFK (New York JFK), EGLL (London Heathrow), OMDB (Dubai International), YSSY (Sydney Kingsford Smith)."
}
},
"additionalProperties": false
}Retrieve the Terminal Aerodrome Forecast (TAF) for one or more ICAO airport stations. A TAF covers a 24–30 hour window and includes time-bracketed forecast periods with expected wind, visibility, weather phenomena (rain, fog, snow), and cloud layers. Returns decoded period-by-period breakdown plus the raw TAF bulletin string. Issued every 6 hours from major airports. Source: NOAA Aviation Weather Center — US Government public domain, no auth required.
| Argument | Type | Description |
|---|---|---|
| ids* | string | Comma-separated ICAO airport codes to retrieve Terminal Aerodrome Forecasts for (e.g. "KJFK", "KJFK,KLAX"). Most major airports publish a TAF valid 24–30 hours ahead. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"ids"
],
"properties": {
"ids": {
"type": "string",
"description": "Comma-separated ICAO airport codes to retrieve Terminal Aerodrome Forecasts for (e.g. \"KJFK\", \"KJFK,KLAX\"). Most major airports publish a TAF valid 24–30 hours ahead."
}
},
"additionalProperties": false
}Fetch the latest METAR (Meteorological Aerodrome Report) for one or more ICAO airport stations. Returns decoded fields: temperature, dewpoint, wind direction and speed, visibility, altimeter setting, sea-level pressure, sky cover, cloud layers, present weather, and flight category (VFR/MVFR/IFR/LIFR). Also includes the raw METAR string. Data updated every 20–60 minutes. Source: NOAA Aviation Weather Center — US Government public domain, no auth required.
| Argument | Type | Description |
|---|---|---|
| ids* | string | Comma-separated ICAO airport codes to retrieve METAR for (e.g. "KJFK", "KJFK,KLAX,EGLL"). Maximum ~10 stations per call. |
| hours_back | integer | How many hours back to look for the most recent METAR observation (1–24, default 1). Use 3–6 if a station may not have reported in the last hour. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"ids"
],
"properties": {
"ids": {
"type": "string",
"description": "Comma-separated ICAO airport codes to retrieve METAR for (e.g. \"KJFK\", \"KJFK,KLAX,EGLL\"). Maximum ~10 stations per call."
},
"hours_back": {
"type": "integer",
"maximum": 24,
"minimum": 1,
"description": "How many hours back to look for the most recent METAR observation (1–24, default 1). Use 3–6 if a station may not have reported in the last hour."
}
},
"additionalProperties": false
}Retrieve Pilot Reports (PIREPs) near a given ICAO station within a configurable radius and time window. PIREPs are real-time in-flight observations filed by pilots capturing actual icing severity, turbulence intensity, visibility, cloud bases and tops, and conditions at flight level. Returns decoded fields: flight level, icing and turbulence extents, and raw PIREP text. Useful for pre-flight planning, route analysis, and verifying forecast accuracy. Source: NOAA Aviation Weather Center — US Government public domain, no auth required.
| Argument | Type | Description |
|---|---|---|
| id* | string | ICAO station identifier to use as the geographic center of the search (e.g. "KJFK", "KORD"). Pilot reports within `distance` nautical miles of this station and within the last `age` hours are returned. |
| age | integer | How many hours back to search for pilot reports (1–24, default 2). |
| distance | integer | Search radius in nautical miles around the station (10–200, default 100). 100 nm covers the typical terminal area plus en-route corridor. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "ICAO station identifier to use as the geographic center of the search (e.g. \"KJFK\", \"KORD\"). Pilot reports within `distance` nautical miles of this station and within the last `age` hours are returned."
},
"age": {
"type": "integer",
"maximum": 24,
"minimum": 1,
"description": "How many hours back to search for pilot reports (1–24, default 2)."
},
"distance": {
"type": "integer",
"maximum": 200,
"minimum": 10,
"description": "Search radius in nautical miles around the station (10–200, default 100). 100 nm covers the typical terminal area plus en-route corridor."
}
},
"additionalProperties": false
}Look up aviation weather observation stations by ICAO identifier(s), bounding box, or US state. Returns station metadata: ICAO, IATA, FAA, and WMO identifiers; site name; coordinates; elevation; country/state; and observation types supported (METAR, TAF, PIREP). Useful for discovering station identifiers before calling METAR or TAF tools. Provide one of: ids (comma-separated ICAO codes), bbox (minLat,minLon,maxLat,maxLon), or state (2-letter US). Source: NOAA Aviation Weather Center — US Government public domain, no auth required.
| Argument | Type | Description |
|---|---|---|
| ids | string | Comma-separated ICAO station identifiers to look up (e.g. "KJFK,KLAX"). Use this OR bbox OR state — not together. |
| bbox | string | Bounding box in decimal degrees: "minLat,minLon,maxLat,maxLon" (e.g. "25,-125,50,-65" for the contiguous US). Returns all aviation weather stations within the box. |
| state | string | Two-letter US state abbreviation to filter stations by state (e.g. "TX", "CA"). Returns all aviation weather stations in that state. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"ids": {
"type": "string",
"description": "Comma-separated ICAO station identifiers to look up (e.g. \"KJFK,KLAX\"). Use this OR bbox OR state — not together."
},
"bbox": {
"type": "string",
"description": "Bounding box in decimal degrees: \"minLat,minLon,maxLat,maxLon\" (e.g. \"25,-125,50,-65\" for the contiguous US). Returns all aviation weather stations within the box."
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Two-letter US state abbreviation to filter stations by state (e.g. \"TX\", \"CA\"). Returns all aviation weather stations in that state."
}
},
"additionalProperties": false
}Active NOTAMs (Notice to Airmen) for one or more airports, parsed into structured fields — NOTAM ID, classification (FDC/D/U), type (runway closure, navaid out, airspace restriction, obstacle), effective period, summary text. Critical for flight planning. UNIQUE to AVWX — NOAA and CheckWX do NOT return parsed NOTAMs.
| Argument | Type | Description |
|---|---|---|
| distance | integer | Include NOTAMs within this nautical-mile radius (0-100, default 10). Use 0 for airport-specific only. |
| icao_code* | string | Single ICAO airport code (4-letter uppercase). Examples: KJFK, EGLL, RJTT, OMDB. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"icao_code"
],
"properties": {
"distance": {
"type": "integer",
"maximum": 100,
"minimum": 0,
"description": "Include NOTAMs within this nautical-mile radius (0-100, default 10). Use 0 for airport-specific only."
},
"icao_code": {
"type": "string",
"description": "Single ICAO airport code (4-letter uppercase). Examples: KJFK, EGLL, RJTT, OMDB."
}
},
"additionalProperties": false
}Pilot Reports (PIREPs) near an airport, parsed — aircraft type, altitude, time, location, sky condition observed, turbulence, icing, weather. Source: pilots reporting in-flight conditions. Useful for hazard awareness.
| Argument | Type | Description |
|---|---|---|
| icao_code* | string | Single ICAO airport code (4-letter uppercase). Examples: KJFK, EGLL, KSFO. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"icao_code"
],
"properties": {
"icao_code": {
"type": "string",
"description": "Single ICAO airport code (4-letter uppercase). Examples: KJFK, EGLL, KSFO."
}
},
"additionalProperties": false
}Composite report for one airport — latest parsed METAR + TAF + station info (name, lat/lon/elev, type) in one call. Cheaper than three separate calls if you need the full picture.
| Argument | Type | Description |
|---|---|---|
| icao_code* | string | Single ICAO airport code (4-letter uppercase). Examples: KJFK, EGLL, KSFO. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"icao_code"
],
"properties": {
"icao_code": {
"type": "string",
"description": "Single ICAO airport code (4-letter uppercase). Examples: KJFK, EGLL, KSFO."
}
},
"additionalProperties": false
}Monthly 12-month growth rate of UK M4 money supply (monetary financial institutions' sterling M4 liabilities to the private sector), seasonally adjusted, series LPMVQJW. Returns the most recent N months (default 24, max 120). Data: Bank of England Statistical Interactive Database (bankofengland.co.uk/boeapps/database), no auth required, UK Open Government Licence v3.0.
| Argument | Type | Description |
|---|---|---|
| last_n | integer | Number of most recent months to return, counting back from the current month (default 24, max 120 = 10 years). This is a monthly series. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"last_n": {
"type": "integer",
"maximum": 120,
"minimum": 1,
"description": "Number of most recent months to return, counting back from the current month (default 24, max 120 = 10 years). This is a monthly series."
}
},
"additionalProperties": false
}Daily history of the Bank of England Official Bank Rate (the UK base interest rate set by the Monetary Policy Committee), series IUDBEDR. Returns the most recent N days (default 90, max 1825). Data: Bank of England Statistical Interactive Database (bankofengland.co.uk/boeapps/database), no auth required, UK Open Government Licence v3.0.
| Argument | Type | Description |
|---|---|---|
| last_n | integer | Number of most recent calendar days to return, counting back from today (default 90, max 1825 = 5 years). This is a daily series. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"last_n": {
"type": "integer",
"maximum": 1825,
"minimum": 1,
"description": "Number of most recent calendar days to return, counting back from today (default 90, max 1825 = 5 years). This is a daily series."
}
},
"additionalProperties": false
}Monthly average quoted UK household interest rate for a 2-year fixed-rate mortgage at 75% loan-to-value, series IUMBV34. Returns the most recent N months (default 24, max 120). Data: Bank of England Statistical Interactive Database (bankofengland.co.uk/boeapps/database), no auth required, UK Open Government Licence v3.0.
| Argument | Type | Description |
|---|---|---|
| last_n | integer | Number of most recent months to return, counting back from the current month (default 24, max 120 = 10 years). This is a monthly series. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"last_n": {
"type": "integer",
"maximum": 120,
"minimum": 1,
"description": "Number of most recent months to return, counting back from the current month (default 24, max 120 = 10 years). This is a monthly series."
}
},
"additionalProperties": false
}Daily history of SONIA (Sterling Overnight Index Average), the Bank of England-administered reference rate for unsecured overnight sterling lending, series IUDSOIA. Returns the most recent N days (default 90, max 1825). Data: Bank of England Statistical Interactive Database (bankofengland.co.uk/boeapps/database), no auth required, UK Open Government Licence v3.0.
| Argument | Type | Description |
|---|---|---|
| last_n | integer | Number of most recent calendar days to return, counting back from today (default 90, max 1825 = 5 years). This is a daily series. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"last_n": {
"type": "integer",
"maximum": 1825,
"minimum": 1,
"description": "Number of most recent calendar days to return, counting back from today (default 90, max 1825 = 5 years). This is a daily series."
}
},
"additionalProperties": false
}Retrieve observations for any Bank of Canada Valet series by series code(s). Supports one or multiple comma-separated codes (e.g. "FXCADUSD,FXCADEUR" or "V39079"). Browse all available series at https://www.bankofcanada.ca/valet/lists/series/json — over 8,000 series covering FX rates, interest rates, inflation, commodity prices, credit aggregates, and more. Key codes: FXCADUSD (CAD/USD), V39079 (overnight target rate), V80691311 (prime rate), STATIC_TOTALCPICHANGE (total CPI % YoY), CPIW, CPI_MEDIAN, A.BCPI (annual commodity price index). Returns latest values, full series metadata, and history for the requested date range. Source: Bank of Canada, www.bankofcanada.ca — open data, attribution required.
| Argument | Type | Description |
|---|---|---|
| recent | integer | Number of most-recent observations to return (default 10). Ignored when start_date or end_date is provided. |
| end_date | string | End date for historical range in YYYY-MM-DD format (e.g. "2026-06-22"). |
| start_date | string | Start date for historical range in YYYY-MM-DD format (e.g. "2020-01-01"). |
| series_codes* | string | One or more Bank of Canada Valet series codes, comma-separated (e.g. "FXCADUSD", "V39079,V80691311", "STATIC_TOTALCPICHANGE"). Browse available series at https://www.bankofcanada.ca/valet/lists/series/json. Key codes: FXCADUSD (CAD/USD rate), V39079 (overnight target rate), V80691311 (prime rate), STATIC_TOTALCPICHANGE (total CPI % change YoY), CPIW (CPIW % change YoY), CPI_MEDIAN (CPI-median), A.BCPI (annual commodity price index). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"series_codes"
],
"properties": {
"recent": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Number of most-recent observations to return (default 10). Ignored when start_date or end_date is provided."
},
"end_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "End date for historical range in YYYY-MM-DD format (e.g. \"2026-06-22\")."
},
"start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Start date for historical range in YYYY-MM-DD format (e.g. \"2020-01-01\")."
},
"series_codes": {
"type": "string",
"description": "One or more Bank of Canada Valet series codes, comma-separated (e.g. \"FXCADUSD\", \"V39079,V80691311\", \"STATIC_TOTALCPICHANGE\"). Browse available series at https://www.bankofcanada.ca/valet/lists/series/json. Key codes: FXCADUSD (CAD/USD rate), V39079 (overnight target rate), V80691311 (prime rate), STATIC_TOTALCPICHANGE (total CPI % change YoY), CPIW (CPIW % change YoY), CPI_MEDIAN (CPI-median), A.BCPI (annual commodity price index)."
}
},
"additionalProperties": false
}Get Canadian dollar (CAD) exchange rates against major world currencies from the Bank of Canada Valet API. Returns daily average reciprocal rates: 1 CAD expressed in foreign currency units (e.g. FXCADUSD = 0.7061 means 1 CAD = 0.7061 USD). Default currencies: USD, EUR, GBP, JPY, AUD, CHF, MXN, SEK, NOK, HKD. Specify custom ISO 4217 codes via the currencies parameter. Fetch the latest rate (recent=1, default), N most-recent observations, or a date range (start_date + end_date). Data published on each Bank of Canada business day. Source: Bank of Canada, www.bankofcanada.ca — open data, attribution required.
| Argument | Type | Description |
|---|---|---|
| recent | integer | Number of most-recent observations to return (default 1 = latest rate only). Ignored when start_date or end_date is provided. |
| end_date | string | End date for historical range in YYYY-MM-DD format (e.g. "2026-06-22"). Use with start_date to get a specific date range. |
| currencies | array | ISO 4217 currency codes to fetch CAD rates for (e.g. ["USD","EUR","GBP","JPY"]). Omit to get all 10 default major currencies: USD, EUR, GBP, JPY, AUD, CHF, MXN, SEK, NOK, HKD. |
| start_date | string | Start date for historical range in YYYY-MM-DD format (e.g. "2026-01-01"). Use with end_date to get a specific date range. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"recent": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Number of most-recent observations to return (default 1 = latest rate only). Ignored when start_date or end_date is provided."
},
"end_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "End date for historical range in YYYY-MM-DD format (e.g. \"2026-06-22\"). Use with start_date to get a specific date range."
},
"currencies": {
"type": "array",
"items": {
"type": "string",
"maxLength": 3,
"minLength": 3
},
"description": "ISO 4217 currency codes to fetch CAD rates for (e.g. [\"USD\",\"EUR\",\"GBP\",\"JPY\"]). Omit to get all 10 default major currencies: USD, EUR, GBP, JPY, AUD, CHF, MXN, SEK, NOK, HKD."
},
"start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Start date for historical range in YYYY-MM-DD format (e.g. \"2026-01-01\"). Use with end_date to get a specific date range."
}
},
"additionalProperties": false
}Get Canadian Consumer Price Index (CPI) inflation measures published by the Bank of Canada Valet API. Returns four monthly series as year-over-year percentage changes: total_cpi_yoy_pct (all-items CPI), core_cpi_yoy_pct (CPI excluding food and energy), cpiw_yoy_pct (CPIW — basket-weight-adjusted measure), cpi_median_yoy_pct (median year-over-year CPI change). Default: 12 most-recent monthly observations (one year). Use start_date/end_date for historical ranges. These are the Bank of Canada's key inflation tracking measures, used to assess achievement of the 2% inflation target. Source: Bank of Canada, www.bankofcanada.ca — open data, attribution required.
| Argument | Type | Description |
|---|---|---|
| recent | integer | Number of most-recent monthly observations to return (default 12 = one year). CPI data is published monthly by Statistics Canada. Ignored when start_date or end_date is provided. |
| end_date | string | End date for historical range in YYYY-MM-DD format (e.g. "2026-05-01"). Defaults to the most recent available month. |
| start_date | string | Start date for historical range in YYYY-MM-DD format (e.g. "2020-01-01"). Monthly data — use the first of the month. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"recent": {
"type": "integer",
"maximum": 120,
"minimum": 1,
"description": "Number of most-recent monthly observations to return (default 12 = one year). CPI data is published monthly by Statistics Canada. Ignored when start_date or end_date is provided."
},
"end_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "End date for historical range in YYYY-MM-DD format (e.g. \"2026-05-01\"). Defaults to the most recent available month."
},
"start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Start date for historical range in YYYY-MM-DD format (e.g. \"2020-01-01\"). Monthly data — use the first of the month."
}
},
"additionalProperties": false
}Get Bank of Canada overnight target rate and prime lending rate history from the Valet API. overnight_rate_pct (series V39079): the Bank of Canada target for the overnight rate — its primary monetary policy instrument. prime_rate_pct (series V80691311): the prime lending rate set by financial institutions as a function of the overnight rate. Rate changes occur on scheduled Bank of Canada announcement dates (approximately 8 times per year). Returns the 10 most-recent observations by default; use start_date/end_date for historical ranges going back to 1994. Essential for Canadian mortgage, loan, and bond analysis. Source: Bank of Canada, www.bankofcanada.ca — open data, attribution required.
| Argument | Type | Description |
|---|---|---|
| recent | integer | Number of most-recent observations to return (default 10). Rate changes occur on scheduled BoC announcement dates (roughly 8 times per year). Ignored when start_date or end_date is provided. |
| end_date | string | End date for historical range in YYYY-MM-DD format (e.g. "2026-06-22"). Defaults to the most recent available date. |
| start_date | string | Start date for historical range in YYYY-MM-DD format (e.g. "2020-01-01"). Overnight rate history goes back to 1994. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"recent": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Number of most-recent observations to return (default 10). Rate changes occur on scheduled BoC announcement dates (roughly 8 times per year). Ignored when start_date or end_date is provided."
},
"end_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "End date for historical range in YYYY-MM-DD format (e.g. \"2026-06-22\"). Defaults to the most recent available date."
},
"start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Start date for historical range in YYYY-MM-DD format (e.g. \"2020-01-01\"). Overnight rate history goes back to 1994."
}
},
"additionalProperties": false
}Get the official Banco de México FIX USD/MXN exchange rate (serie SF43718). The FIX rate is published by Banxico daily and is used for settling obligations denominated in foreign currency in Mexico. Returns the latest observation or a historical date range (YYYY-MM-DD). Source: Banco de México SIE, official government data, free API.
| Argument | Type | Description |
|---|---|---|
| end_date | string | End date for historical range in YYYY-MM-DD format (e.g. 2026-06-30). Required when start_date is provided. |
| start_date | string | Start date for historical range in YYYY-MM-DD format (e.g. 2026-01-01). Omit for latest observation only. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"end_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "End date for historical range in YYYY-MM-DD format (e.g. 2026-06-30). Required when start_date is provided."
},
"start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Start date for historical range in YYYY-MM-DD format (e.g. 2026-01-01). Omit for latest observation only."
}
},
"additionalProperties": false
}Get current Banco de México reference exchange rates for USD, EUR, CAD, and GBP against the Mexican Peso (MXN) in a single call. Returns the latest published value for each currency with its date and series label. Useful for multi-currency MXN conversion and FX monitoring. Source: Banco de México SIE series SF43718 (USD), SF46410 (EUR), SF60632 (CAD), SF60633 (GBP).
| Argument | Type | Description |
|---|---|---|
| locale | string | Reserved for future locale support. Leave empty — response is always in English. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"locale": {
"type": "string",
"description": "Reserved for future locale support. Leave empty — response is always in English."
}
},
"additionalProperties": false
}Get the Mexico INPC (Índice Nacional de Precios al Consumidor) consumer price index (serie SP1, base Jul 2018 = 100). The INPC is the official inflation indicator produced by INEGI and published by Banxico. Returns the latest monthly index value or a historical range. Use this to track Mexican inflation trends or deflate peso-denominated series. Source: Banco de México SIE, official government data.
| Argument | Type | Description |
|---|---|---|
| end_date | string | End date for historical range in YYYY-MM-DD format (e.g. 2026-06-30). Required when start_date is provided. |
| start_date | string | Start date for historical range in YYYY-MM-DD format (e.g. 2026-01-01). Omit for latest observation only. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"end_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "End date for historical range in YYYY-MM-DD format (e.g. 2026-06-30). Required when start_date is provided."
},
"start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Start date for historical range in YYYY-MM-DD format (e.g. 2026-01-01). Omit for latest observation only."
}
},
"additionalProperties": false
}Get the Banco de México monetary policy overnight target interest rate (Tasa objetivo, serie SF61745). This is the key policy rate set by the Junta de Gobierno (JOGI) that anchors short-term peso borrowing costs. Returns the latest rate or a historical date range. Rate expressed in percent per annum. Source: Banco de México SIE, official government data.
| Argument | Type | Description |
|---|---|---|
| end_date | string | End date for historical range in YYYY-MM-DD format (e.g. 2026-06-30). Required when start_date is provided. |
| start_date | string | Start date for historical range in YYYY-MM-DD format (e.g. 2026-01-01). Omit for latest observation only. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"end_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "End date for historical range in YYYY-MM-DD format (e.g. 2026-06-30). Required when start_date is provided."
},
"start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Start date for historical range in YYYY-MM-DD format (e.g. 2026-01-01). Omit for latest observation only."
}
},
"additionalProperties": false
}Get the TIIE (Tasa de Interés Interbancaria de Equilibrio) 28-day interbank offered rate (serie SF43783). TIIE is the primary benchmark for Mexican peso-denominated credit products including mortgages, business loans, and consumer lending. Returns the latest rate or a historical date range. Rate expressed in percent per annum. Source: Banco de México SIE.
| Argument | Type | Description |
|---|---|---|
| end_date | string | End date for historical range in YYYY-MM-DD format (e.g. 2026-06-30). Required when start_date is provided. |
| start_date | string | Start date for historical range in YYYY-MM-DD format (e.g. 2026-01-01). Omit for latest observation only. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"end_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "End date for historical range in YYYY-MM-DD format (e.g. 2026-06-30). Required when start_date is provided."
},
"start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Start date for historical range in YYYY-MM-DD format (e.g. 2026-01-01). Omit for latest observation only."
}
},
"additionalProperties": false
}Retrieve value added by NAICS industry sector from the BEA GDP by Industry dataset (Table 1, billions of dollars). Shows how much each industry contributes to total US GDP. Covers all major NAICS sectors: agriculture, mining, utilities, construction, manufacturing, wholesale/retail, information, finance, real estate, healthcare, and government. Annual or quarterly frequency. Use for industry-level economic analysis and sector benchmarking.
| Argument | Type | Description |
|---|---|---|
| year | string | Year(s) to retrieve. Single year (e.g. "2023"), comma-separated list ("2021,2022,2023"), "LAST5" for latest 5 years, "LAST10" for latest 10, or "X"/"ALL" for all years. Defaults to LAST5. |
| industry | string | Industry NAICS code(s) to retrieve. "ALL" (default) returns all industries. Common codes: "11"=Agriculture, "21"=Mining, "22"=Utilities, "23"=Construction, "31-33"=Manufacturing, "42"=Wholesale, "44-45"=Retail, "51"=Information, "52"=Finance, "53"=Real estate, "54"=Professional services, "62"=Health care, "92"=Government. Comma-separate multiple codes (e.g. "11,21,22"). |
| frequency | string | Data frequency: A=Annual (default), Q=Quarterly. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"year": {
"type": "string",
"description": "Year(s) to retrieve. Single year (e.g. \"2023\"), comma-separated list (\"2021,2022,2023\"), \"LAST5\" for latest 5 years, \"LAST10\" for latest 10, or \"X\"/\"ALL\" for all years. Defaults to LAST5."
},
"industry": {
"type": "string",
"description": "Industry NAICS code(s) to retrieve. \"ALL\" (default) returns all industries. Common codes: \"11\"=Agriculture, \"21\"=Mining, \"22\"=Utilities, \"23\"=Construction, \"31-33\"=Manufacturing, \"42\"=Wholesale, \"44-45\"=Retail, \"51\"=Information, \"52\"=Finance, \"53\"=Real estate, \"54\"=Professional services, \"62\"=Health care, \"92\"=Government. Comma-separate multiple codes (e.g. \"11,21,22\")."
},
"frequency": {
"enum": [
"A",
"Q"
],
"type": "string",
"description": "Data frequency: A=Annual (default), Q=Quarterly."
}
},
"additionalProperties": false
}Retrieve US international trade balance data from the BEA International Transactions Accounts (ITA) dataset. Covers balance on goods and services, current account balance, goods imports/exports, services imports/exports, and 800+ additional ITA indicators. Filter by country (China, Canada, Mexico, EU, etc.) or use AllCountries for world totals. Values in millions of USD. Annual or quarterly frequency. Official BEA government data.
| Argument | Type | Description |
|---|---|---|
| year | string | Year(s) to retrieve. Single year (e.g. "2023"), comma-separated list ("2021,2022,2023"), "LAST5" for latest 5 years, "LAST10" for latest 10, or "X"/"ALL" for all years. Defaults to LAST5. |
| frequency | string | Data frequency: A=Annual (default), Q=Quarterly. |
| indicator | string | BEA ITA indicator code. Common values: "BalGdsServ" (balance on goods and services, default), "BalGds" (goods only), "BalServ" (services only), "BalCurrAcct" (current account balance), "ExpGds" (goods exports), "ImpGds" (goods imports). See BEA ITA documentation for all 889 available indicators. |
| area_or_country | string | Country or area filter. "AllCountries" (default) for world totals, or a specific country name such as "China", "Canada", "Mexico", "Germany", "Japan". Use "AreaAll" for regional groupings. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"year": {
"type": "string",
"description": "Year(s) to retrieve. Single year (e.g. \"2023\"), comma-separated list (\"2021,2022,2023\"), \"LAST5\" for latest 5 years, \"LAST10\" for latest 10, or \"X\"/\"ALL\" for all years. Defaults to LAST5."
},
"frequency": {
"enum": [
"A",
"Q"
],
"type": "string",
"description": "Data frequency: A=Annual (default), Q=Quarterly."
},
"indicator": {
"type": "string",
"description": "BEA ITA indicator code. Common values: \"BalGdsServ\" (balance on goods and services, default), \"BalGds\" (goods only), \"BalServ\" (services only), \"BalCurrAcct\" (current account balance), \"ExpGds\" (goods exports), \"ImpGds\" (goods imports). See BEA ITA documentation for all 889 available indicators."
},
"area_or_country": {
"type": "string",
"description": "Country or area filter. \"AllCountries\" (default) for world totals, or a specific country name such as \"China\", \"Canada\", \"Mexico\", \"Germany\", \"Japan\". Use \"AreaAll\" for regional groupings."
}
},
"additionalProperties": false
}Retrieve US Real GDP growth rates from BEA NIPA Table T10101 (Fisher Quantity Index, percent change at annual rate). Returns quarterly or annual percent-change series for total GDP, personal consumption expenditures, gross private investment, exports, imports, and government spending. Official US national accounts data from the Bureau of Economic Analysis. Use for macro analysis, economic forecasting, and recession detection.
| Argument | Type | Description |
|---|---|---|
| year | string | Year(s) to retrieve. Single year (e.g. "2023"), comma-separated list ("2021,2022,2023"), "LAST5" for latest 5 years, "LAST10" for latest 10, or "X"/"ALL" for all years. Defaults to LAST5. |
| frequency | string | Data frequency: A=Annual, Q=Quarterly, M=Monthly. Multiple values comma-separated (e.g. "A,Q"). Defaults to A. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"year": {
"type": "string",
"description": "Year(s) to retrieve. Single year (e.g. \"2023\"), comma-separated list (\"2021,2022,2023\"), \"LAST5\" for latest 5 years, \"LAST10\" for latest 10, or \"X\"/\"ALL\" for all years. Defaults to LAST5."
},
"frequency": {
"enum": [
"A",
"Q",
"M",
"A,Q",
"A,Q,M"
],
"type": "string",
"description": "Data frequency: A=Annual, Q=Quarterly, M=Monthly. Multiple values comma-separated (e.g. \"A,Q\"). Defaults to A."
}
},
"additionalProperties": false
}Retrieve US Personal Income and Outlays from BEA NIPA Table T20100 (millions of dollars). Covers total personal income, compensation of employees, proprietors income, rental income, personal interest income, dividends, personal taxes, disposable personal income, and personal savings. Annual or quarterly frequency, covering all years since 1929. Essential for consumer spending analysis and household financial health tracking.
| Argument | Type | Description |
|---|---|---|
| year | string | Year(s) to retrieve. Single year (e.g. "2023"), comma-separated list ("2021,2022,2023"), "LAST5" for latest 5 years, "LAST10" for latest 10, or "X"/"ALL" for all years. Defaults to LAST5. |
| frequency | string | Data frequency: A=Annual, Q=Quarterly, M=Monthly. Multiple values comma-separated (e.g. "A,Q"). Defaults to A. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"year": {
"type": "string",
"description": "Year(s) to retrieve. Single year (e.g. \"2023\"), comma-separated list (\"2021,2022,2023\"), \"LAST5\" for latest 5 years, \"LAST10\" for latest 10, or \"X\"/\"ALL\" for all years. Defaults to LAST5."
},
"frequency": {
"enum": [
"A",
"Q",
"M",
"A,Q",
"A,Q,M"
],
"type": "string",
"description": "Data frequency: A=Annual, Q=Quarterly, M=Monthly. Multiple values comma-separated (e.g. \"A,Q\"). Defaults to A."
}
},
"additionalProperties": false
}Retrieve real GDP by US state from the BEA Regional Economic Accounts (CAGDP2 table). Returns GDP in thousands of dollars for all 50 states + DC + US total by year and industry component (agriculture, mining, manufacturing, finance, real estate, government, etc.). Use for state-level economic analysis, regional comparisons, and industry cluster research. GeoFips parameter supports individual state FIPS codes, all states, MSAs, or counties.
| Argument | Type | Description |
|---|---|---|
| year | string | Year(s) to retrieve. Single year (e.g. "2023"), comma-separated list ("2021,2022,2023"), "LAST5" for latest 5 years, "LAST10" for latest 10, or "X"/"ALL" for all years. Defaults to LAST5. |
| geo_fips | string | Geographic FIPS code(s) to retrieve. "STATE" (default) returns all 50 US states + DC, "COUNTY" for all counties, "MSA" for metro areas, or a specific 5-digit FIPS code (e.g. "06000" for California, "36000" for New York). Comma-separate multiple codes (e.g. "06000,36000,48000"). |
| line_code | integer | CAGDP2 line code for the GDP component. 1=All industry total (default), 2=Private industries, 3=Agriculture/forestry/fishing, 6=Mining, 10=Utilities, 11=Construction, 34=Manufacturing, 50=Wholesale trade, 55=Retail trade, 60=Transportation, 75=Information, 82=Finance/insurance, 100=Real estate, 300=Government. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"year": {
"type": "string",
"description": "Year(s) to retrieve. Single year (e.g. \"2023\"), comma-separated list (\"2021,2022,2023\"), \"LAST5\" for latest 5 years, \"LAST10\" for latest 10, or \"X\"/\"ALL\" for all years. Defaults to LAST5."
},
"geo_fips": {
"type": "string",
"description": "Geographic FIPS code(s) to retrieve. \"STATE\" (default) returns all 50 US states + DC, \"COUNTY\" for all counties, \"MSA\" for metro areas, or a specific 5-digit FIPS code (e.g. \"06000\" for California, \"36000\" for New York). Comma-separate multiple codes (e.g. \"06000,36000,48000\")."
},
"line_code": {
"type": "integer",
"description": "CAGDP2 line code for the GDP component. 1=All industry total (default), 2=Private industries, 3=Agriculture/forestry/fishing, 6=Mining, 10=Utilities, 11=Construction, 34=Manufacturing, 50=Wholesale trade, 55=Retail trade, 60=Transportation, 75=Information, 82=Finance/insurance, 100=Real estate, 300=Government."
}
},
"additionalProperties": false
}Look up bedrock geology (lithology, rock unit name, and geological age range) near a point in Great Britain, from the BGS 1:625,000 generalised digital geological map. Returns each matching bedrock unit's lexicon name, rock composition, and time period (e.g. Eocene, Cretaceous). Data: British Geological Survey (ogcapi.bgs.ac.uk), Open Government Licence, no auth required.
| Argument | Type | Description |
|---|---|---|
| lat | number | Decimal degree latitude (WGS84) — must be supplied together with lng. Omit both for full Great Britain coverage. |
| lng | number | Decimal degree longitude (WGS84) — must be supplied together with lat. |
| limit | integer | Maximum bedrock geology units to return (default 20, max 50) |
| radius_km | number | Search radius in kilometres around lat/lng (default 5, max 50) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Decimal degree latitude (WGS84) — must be supplied together with lng. Omit both for full Great Britain coverage."
},
"lng": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Decimal degree longitude (WGS84) — must be supplied together with lat."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum bedrock geology units to return (default 20, max 50)"
},
"radius_km": {
"type": "number",
"maximum": 50,
"minimum": 0.5,
"description": "Search radius in kilometres around lat/lng (default 5, max 50)"
}
},
"additionalProperties": false
}Search the Single Onshore Borehole Index (SOBI) — over 1 million UK borehole, shaft, and well site-investigation records — near a point. Returns reference number, site name, grid reference, depth, and a scan URL where available. Data: British Geological Survey (ogcapi.bgs.ac.uk), Open Government Licence, no auth required.
| Argument | Type | Description |
|---|---|---|
| lat | number | Decimal degree latitude (WGS84) — must be supplied together with lng. Omit both for full Great Britain coverage. |
| lng | number | Decimal degree longitude (WGS84) — must be supplied together with lat. |
| limit | integer | Maximum borehole records to return (default 20, max 100) |
| radius_km | number | Search radius in kilometres around lat/lng (default 5, max 50) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Decimal degree latitude (WGS84) — must be supplied together with lng. Omit both for full Great Britain coverage."
},
"lng": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Decimal degree longitude (WGS84) — must be supplied together with lat."
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum borehole records to return (default 20, max 100)"
},
"radius_km": {
"type": "number",
"maximum": 50,
"minimum": 0.5,
"description": "Search radius in kilometres around lat/lng (default 5, max 50)"
}
},
"additionalProperties": false
}Search UK earthquakes by area (lat/lng + radius), year, and minimum magnitude. Set period to "modern" (default, instrument-recorded since 1970) or "historical" (pre-1970 UK Historical Earthquakes catalogue). Returns event date/time, depth, local magnitude (ML), and intensity. Data: British Geological Survey (ogcapi.bgs.ac.uk), Open Government Licence, no auth required.
| Argument | Type | Description |
|---|---|---|
| lat | number | Decimal degree latitude (WGS84) — must be supplied together with lng. Omit both for full Great Britain coverage. |
| lng | number | Decimal degree longitude (WGS84) — must be supplied together with lat. |
| year | string | Filter to a single 4-digit year, e.g. "2020" |
| limit | integer | Maximum earthquakes to return (default 20, max 100) |
| period | string | "modern" = instrument-recorded earthquakes since 1970 (default), "historical" = UK earthquakes before 1970 |
| radius_km | number | Search radius in kilometres around lat/lng (default 50, max 500) |
| min_magnitude | number | Minimum local magnitude (ML) to include |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Decimal degree latitude (WGS84) — must be supplied together with lng. Omit both for full Great Britain coverage."
},
"lng": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Decimal degree longitude (WGS84) — must be supplied together with lat."
},
"year": {
"type": "string",
"pattern": "^\\d{4}$",
"description": "Filter to a single 4-digit year, e.g. \"2020\""
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum earthquakes to return (default 20, max 100)"
},
"period": {
"enum": [
"modern",
"historical"
],
"type": "string",
"description": "\"modern\" = instrument-recorded earthquakes since 1970 (default), \"historical\" = UK earthquakes before 1970"
},
"radius_km": {
"type": "number",
"maximum": 500,
"minimum": 0.5,
"description": "Search radius in kilometres around lat/lng (default 50, max 500)"
},
"min_magnitude": {
"type": "number",
"description": "Minimum local magnitude (ML) to include"
}
},
"additionalProperties": false
}Search the National Landslide Database for recorded UK landslide events near a point. Returns landslide name, locality details, and known-date range where recorded. Data: British Geological Survey (ogcapi.bgs.ac.uk), Open Government Licence, no auth required.
| Argument | Type | Description |
|---|---|---|
| lat | number | Decimal degree latitude (WGS84) — must be supplied together with lng. Omit both for full Great Britain coverage. |
| lng | number | Decimal degree longitude (WGS84) — must be supplied together with lat. |
| limit | integer | Maximum landslide records to return (default 20, max 100) |
| radius_km | number | Search radius in kilometres around lat/lng (default 20, max 200) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Decimal degree latitude (WGS84) — must be supplied together with lng. Omit both for full Great Britain coverage."
},
"lng": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Decimal degree longitude (WGS84) — must be supplied together with lat."
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum landslide records to return (default 20, max 100)"
},
"radius_km": {
"type": "number",
"maximum": 200,
"minimum": 0.5,
"description": "Search radius in kilometres around lat/lng (default 20, max 200)"
}
},
"additionalProperties": false
}Browse the Biodiversity Heritage Library subject index to discover subject tags related to a natural-history discipline or concept (e.g. "ornithology", "botany", "entomology", "paleontology"). Returns a list of matching subject strings used to classify BHL holdings. Use the returned subjects as precise search terms in bhl.literature.search to retrieve publications filed under that subject heading.
| Argument | Type | Description |
|---|---|---|
| subject* | string | Subject keyword used in BHL classification (e.g. "ornithology", "botany", "entomology") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"subject"
],
"properties": {
"subject": {
"type": "string",
"minLength": 1,
"description": "Subject keyword used in BHL classification (e.g. \"ornithology\", \"botany\", \"entomology\")"
}
},
"additionalProperties": false
}Search within the digitized full text of Biodiversity Heritage Library publications for a specific term or phrase. Unlike the catalog search, full-text search scans the OCR-transcribed content of scanned pages, making it possible to find publications that mention a specific organism, location, concept, or measurement even when the keyword does not appear in title or subject metadata. Returns matching publications with title, authors, publisher, date, and direct BHL URLs. Use bhl.literature.search for faster metadata-only catalog queries.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default 1) |
| limit | integer | Number of results per page (1–50, default 10) |
| query* | string | Term or phrase to search within the digitized full text of BHL publications (e.g. "symbiosis nitrogen fixation") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)"
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results per page (1–50, default 10)"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Term or phrase to search within the digitized full text of BHL publications (e.g. \"symbiosis nitrogen fixation\")"
}
},
"additionalProperties": false
}Search the Biodiversity Heritage Library catalog by keyword across title, author, subject, and publisher fields. BHL is the world's largest open-access library of biodiversity literature — 60M+ pages of digitized natural-history books, journals, and manuscripts from 1469 to the present, all public domain. Returns item and title IDs, full title, authors, publisher, publication date, genre, and direct URLs to the digitized item and bibliography page. Use bhl.literature.fulltext to search within the scanned text of publications.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default 1) |
| limit | integer | Number of results per page (1–50, default 10) |
| query* | string | Keyword to search for — matches title, author, subject, and publisher fields (e.g. "Darwin birds Galapagos") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)"
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results per page (1–50, default 10)"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Keyword to search for — matches title, author, subject, and publisher fields (e.g. \"Darwin birds Galapagos\")"
}
},
"additionalProperties": false
}Search the Biodiversity Heritage Library for confirmed scientific (Latin) names matching a given taxonomic query. Useful for discovering historical name variants, author citations, and subspecies/variety designations for a taxon as recorded in classic natural-history literature. Returns a list of confirmed name strings in the form "Genus species Author, Year". Use bhl.literature.search with the confirmed name to find publications containing it.
| Argument | Type | Description |
|---|---|---|
| name* | string | Scientific name to look up in BHL — full or partial Latin binomial (e.g. "Quercus robur", "Homo sapiens") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"minLength": 1,
"description": "Scientific name to look up in BHL — full or partial Latin binomial (e.g. \"Quercus robur\", \"Homo sapiens\")"
}
},
"additionalProperties": false
}List the books in a specific Bible translation (e.g. KJV → 66 books). Returns book IDs and chapter counts needed for bible.passage. Free Use Bible API
| Argument | Type | Description |
|---|---|---|
| translation* | string | Bible translation ID (e.g. "KJV", "ASV", "WEB", "BSB"). Use bible.translations to discover IDs. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"translation"
],
"properties": {
"translation": {
"type": "string",
"minLength": 1,
"description": "Bible translation ID (e.g. \"KJV\", \"ASV\", \"WEB\", \"BSB\"). Use bible.translations to discover IDs."
}
},
"additionalProperties": false
}List available scholarly Bible commentaries (Matthew Henry, JFB, Gill, etc.). Each entry includes commentary ID, name, and language. Free Use Bible API
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max commentaries to return (default 50, max 100). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Max commentaries to return (default 50, max 100)."
}
},
"additionalProperties": false
}List 1000+ public-domain Bible translations across 429+ languages. Filter by ISO 639-3 language code or English name. Returns translation IDs needed for bible.passage. MIT-licensed open data (Free Use Bible API)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max translations to return (default 50, max 200). |
| language | string | Optional ISO 639-3 language code (e.g. "eng", "spa", "fra") or English language name substring (e.g. "Spanish") to filter the 1000+ translations. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Max translations to return (default 50, max 200)."
},
"language": {
"type": "string",
"description": "Optional ISO 639-3 language code (e.g. \"eng\", \"spa\", \"fra\") or English language name substring (e.g. \"Spanish\") to filter the 1000+ translations."
}
},
"additionalProperties": false
}Fetch the verse-by-verse text of a Bible chapter for a given translation and book (e.g. KJV / John / 3). Returns array of {number, text}. Free Use Bible API
| Argument | Type | Description |
|---|---|---|
| book* | string | Book ID — typically a 3-letter code (e.g. "GEN", "JHN", "PSA") or full name. Use bible.books to discover. |
| chapter* | integer | Chapter number (1-based, e.g. 3 for John 3). |
| translation* | string | Bible translation ID (e.g. "KJV", "ASV", "WEB", "BSB"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"translation",
"book",
"chapter"
],
"properties": {
"book": {
"type": "string",
"minLength": 1,
"description": "Book ID — typically a 3-letter code (e.g. \"GEN\", \"JHN\", \"PSA\") or full name. Use bible.books to discover."
},
"chapter": {
"type": "integer",
"minimum": 1,
"description": "Chapter number (1-based, e.g. 3 for John 3)."
},
"translation": {
"type": "string",
"minLength": 1,
"description": "Bible translation ID (e.g. \"KJV\", \"ASV\", \"WEB\", \"BSB\")."
}
},
"additionalProperties": false
}Get full metadata for a specific BioModels mathematical model by accession ID (e.g. "BIOMD0000000001" for the Edelstein 1996 nicotinic acetylcholine receptor model). Returns model name, curation status, modelling approach (ODE, logical, stochastic), SBML format and version, description of the biological system, linked peer-reviewed publication (PubMed ID, journal, year, authors), contributor roles (curator, submitter, encoder), and model-level ontology annotations (GO terms, disease terms, taxonomy, pathway cross-references). Use biomodels.model.search first to discover accession IDs. CC0 Public Domain — EMBL-EBI BioModels Database
| Argument | Type | Description |
|---|---|---|
| model_id* | string | BioModels accession identifier. Curated models use BIOMD prefix followed by 10 digits (e.g. "BIOMD0000000001", "BIOMD0000000295"). Author-submitted models use MODEL prefix (e.g. "MODEL1204270001"). Obtain IDs from biomodels.model.search results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"model_id"
],
"properties": {
"model_id": {
"type": "string",
"minLength": 1,
"description": "BioModels accession identifier. Curated models use BIOMD prefix followed by 10 digits (e.g. \"BIOMD0000000001\", \"BIOMD0000000295\"). Author-submitted models use MODEL prefix (e.g. \"MODEL1204270001\"). Obtain IDs from biomodels.model.search results."
}
},
"additionalProperties": false
}List all downloadable file representations for a BioModels model by accession ID. Returns the main SBML file (primary format, compatible with COPASI, libSBML, JWS Online, Tellurium), plus auto-generated alternative formats: BioPAX Level 2 and 3 (OWL/RDF for pathway databases), MATLAB/Octave simulation scripts (.m files), and any author-supplied supplementary files. Each entry includes filename, description, MIME type, file size in bytes, MD5 checksum, and the direct download URL. Use to retrieve simulation-ready model files for computational biology workflows. CC0 Public Domain — EMBL-EBI BioModels Database
| Argument | Type | Description |
|---|---|---|
| model_id* | string | BioModels accession identifier (e.g. "BIOMD0000000001"). Returns all downloadable file representations: SBML (primary), BioPAX levels 2 and 3, MATLAB/Octave scripts, and any author-provided supplementary files. Each entry includes the direct download URL, MIME type, file size, and MD5 checksum. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"model_id"
],
"properties": {
"model_id": {
"type": "string",
"minLength": 1,
"description": "BioModels accession identifier (e.g. \"BIOMD0000000001\"). Returns all downloadable file representations: SBML (primary), BioPAX levels 2 and 3, MATLAB/Octave scripts, and any author-provided supplementary files. Each entry includes the direct download URL, MIME type, file size, and MD5 checksum."
}
},
"additionalProperties": false
}List the most recently updated manually curated mathematical models in BioModels. Curated models (BIOMD prefix) are peer-validated: each has been reproduced, annotated with standard ontologies (Gene Ontology, KEGG, ChEBI, UniProt, PubMed), and verified to match the figures in the linked publication. Returns model accession IDs, names, format, submission date, last modification date, submitter, and model URL, sorted by last update descending. Use to discover newly added or recently revised biological models across all domains. CC0 Public Domain — EMBL-EBI BioModels Database
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of recent curated models to return (1–50, default 10) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of recent curated models to return (1–50, default 10)"
}
},
"additionalProperties": false
}Search the BioModels repository for peer-reviewed mathematical models of biological and biomedical systems. BioModels is the world's primary repository for quantitative kinetic models, hosted by EMBL-EBI. Contains 3,200+ models in SBML format covering signaling pathways, metabolic networks, gene regulation, pharmacokinetics, circadian rhythms, disease dynamics (COVID-19, diabetes, cancer), and more. Returns model accession IDs (BIOMD prefix = curated, MODEL prefix = submitted), names, formats, submitter info, and URLs. Filter by curation status to restrict to manually validated models. CC0 Public Domain — European Bioinformatics Institute (EMBL-EBI)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of results to return (1–50, default 10) |
| query* | string | Keyword to search for biological mathematical models — e.g. "insulin signaling", "circadian clock", "glucose metabolism", "COVID-19". Supports free-text and can include organism names, disease terms, pathway names, or author names. |
| offset | integer | Pagination offset — number of results to skip (default 0) |
| curation_status | string | Filter by curation status. "CURATED" returns only manually reviewed, peer-validated models from the BioModels curated branch (highest quality). "NON_CURATED" returns all submitted models including author-provided ones. Omit to search all models. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results to return (1–50, default 10)"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Keyword to search for biological mathematical models — e.g. \"insulin signaling\", \"circadian clock\", \"glucose metabolism\", \"COVID-19\". Supports free-text and can include organism names, disease terms, pathway names, or author names."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset — number of results to skip (default 0)"
},
"curation_status": {
"enum": [
"CURATED",
"NON_CURATED"
],
"type": "string",
"description": "Filter by curation status. \"CURATED\" returns only manually reviewed, peer-validated models from the BioModels curated branch (highest quality). \"NON_CURATED\" returns all submitted models including author-provided ones. Omit to search all models."
}
},
"additionalProperties": false
}Fetch a country's nominal or real effective exchange rate (EER) index from the BIS monthly EER series (WS_EER) — a trade-weighted average of bilateral exchange rates against a narrow (27 economies) or broad (64 economies) basket of trading partners, indexed to a base period. Real EER adjusts for relative consumer price inflation. Useful for gauging currency competitiveness beyond a single bilateral FX rate.
| Argument | Type | Description |
|---|---|---|
| basket | string | Currency basket: "N" = narrow (27 economies, default), "B" = broad (64 economies). |
| country* | string | ISO 2-letter BIS reference-area code (e.g. US, XM for euro area, JP, GB, CN, DE, FR, BR, IN, CA, AU, CH). See the BIS reference area codelist for the full list of covered economies. |
| eer_type | string | Exchange rate type: "N" = nominal (default), "R" = real (inflation-adjusted). |
| end_period | string | End of the requested time range, e.g. "2024-06" for monthly data or "2024-Q2" for quarterly data. Defaults to the latest available observation if omitted. |
| max_series | integer | Maximum number of time series to return (1–100, default 20). Each series is a unique combination of dimensions such as rate type or unit of measure. |
| start_period | string | Start of the requested time range, e.g. "2020-01" for monthly data or "2020-Q1" for quarterly data. Defaults to the last 24 observations if both start_period and end_period are omitted. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country"
],
"properties": {
"basket": {
"enum": [
"N",
"B"
],
"type": "string",
"description": "Currency basket: \"N\" = narrow (27 economies, default), \"B\" = broad (64 economies)."
},
"country": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO 2-letter BIS reference-area code (e.g. US, XM for euro area, JP, GB, CN, DE, FR, BR, IN, CA, AU, CH). See the BIS reference area codelist for the full list of covered economies."
},
"eer_type": {
"enum": [
"N",
"R"
],
"type": "string",
"description": "Exchange rate type: \"N\" = nominal (default), \"R\" = real (inflation-adjusted)."
},
"end_period": {
"type": "string",
"description": "End of the requested time range, e.g. \"2024-06\" for monthly data or \"2024-Q2\" for quarterly data. Defaults to the latest available observation if omitted."
},
"max_series": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of time series to return (1–100, default 20). Each series is a unique combination of dimensions such as rate type or unit of measure."
},
"start_period": {
"type": "string",
"description": "Start of the requested time range, e.g. \"2020-01\" for monthly data or \"2020-Q1\" for quarterly data. Defaults to the last 24 observations if both start_period and end_period are omitted."
}
},
"additionalProperties": false
}Fetch central bank policy interest rates for a country from the Bank for International Settlements' monthly policy rate series (WS_CBPOL) — the interest rate that best captures a monetary authority's policy intentions (e.g. the US Federal Reserve's federal funds rate target, the ECB's main refinancing rate). Covers dozens of central banks worldwide. Returns one or more time series with period/value pairs.
| Argument | Type | Description |
|---|---|---|
| country* | string | ISO 2-letter BIS reference-area code (e.g. US, XM for euro area, JP, GB, CN, DE, FR, BR, IN, CA, AU, CH). See the BIS reference area codelist for the full list of covered economies. |
| end_period | string | End of the requested time range, e.g. "2024-06" for monthly data or "2024-Q2" for quarterly data. Defaults to the latest available observation if omitted. |
| max_series | integer | Maximum number of time series to return (1–100, default 20). Each series is a unique combination of dimensions such as rate type or unit of measure. |
| start_period | string | Start of the requested time range, e.g. "2020-01" for monthly data or "2020-Q1" for quarterly data. Defaults to the last 24 observations if both start_period and end_period are omitted. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country"
],
"properties": {
"country": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO 2-letter BIS reference-area code (e.g. US, XM for euro area, JP, GB, CN, DE, FR, BR, IN, CA, AU, CH). See the BIS reference area codelist for the full list of covered economies."
},
"end_period": {
"type": "string",
"description": "End of the requested time range, e.g. \"2024-06\" for monthly data or \"2024-Q2\" for quarterly data. Defaults to the latest available observation if omitted."
},
"max_series": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of time series to return (1–100, default 20). Each series is a unique combination of dimensions such as rate type or unit of measure."
},
"start_period": {
"type": "string",
"description": "Start of the requested time range, e.g. \"2020-01\" for monthly data or \"2020-Q1\" for quarterly data. Defaults to the last 24 observations if both start_period and end_period are omitted."
}
},
"additionalProperties": false
}Fetch a country's selected residential property price index (nominal or real) from the BIS quarterly property price series (WS_SPP) — a long-run, cross-country comparable house price index used to track housing market cycles and financial stability risk. Real values are deflated by the consumer price index. Returns one or more indexed time series with period/value pairs.
| Argument | Type | Description |
|---|---|---|
| country* | string | ISO 2-letter BIS reference-area code (e.g. US, XM for euro area, JP, GB, CN, DE, FR, BR, IN, CA, AU, CH). See the BIS reference area codelist for the full list of covered economies. |
| end_period | string | End of the requested time range, e.g. "2024-06" for monthly data or "2024-Q2" for quarterly data. Defaults to the latest available observation if omitted. |
| max_series | integer | Maximum number of time series to return (1–100, default 20). Each series is a unique combination of dimensions such as rate type or unit of measure. |
| value_type | string | Price value type: "N" = nominal (default), "R" = real (inflation-adjusted). |
| start_period | string | Start of the requested time range, e.g. "2020-01" for monthly data or "2020-Q1" for quarterly data. Defaults to the last 24 observations if both start_period and end_period are omitted. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country"
],
"properties": {
"country": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO 2-letter BIS reference-area code (e.g. US, XM for euro area, JP, GB, CN, DE, FR, BR, IN, CA, AU, CH). See the BIS reference area codelist for the full list of covered economies."
},
"end_period": {
"type": "string",
"description": "End of the requested time range, e.g. \"2024-06\" for monthly data or \"2024-Q2\" for quarterly data. Defaults to the latest available observation if omitted."
},
"max_series": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of time series to return (1–100, default 20). Each series is a unique combination of dimensions such as rate type or unit of measure."
},
"value_type": {
"enum": [
"N",
"R"
],
"type": "string",
"description": "Price value type: \"N\" = nominal (default), \"R\" = real (inflation-adjusted)."
},
"start_period": {
"type": "string",
"description": "Start of the requested time range, e.g. \"2020-01\" for monthly data or \"2020-Q1\" for quarterly data. Defaults to the last 24 observations if both start_period and end_period are omitted."
}
},
"additionalProperties": false
}Get author profile by Open Library Author ID — biography, birth/death dates, photo, Wikipedia link (Open Library / Internet Archive)
| Argument | Type | Description |
|---|---|---|
| olid* | string | Open Library Author ID, e.g. "OL23919A" for J.R.R. Tolkien. Get from search or work author keys |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"olid"
],
"properties": {
"olid": {
"type": "string",
"description": "Open Library Author ID, e.g. \"OL23919A\" for J.R.R. Tolkien. Get from search or work author keys"
}
},
"additionalProperties": false
}Search 40M+ books by title, author, subject, or ISBN — ratings, cover images, edition counts, publish year (Open Library / Internet Archive)
| Argument | Type | Description |
|---|---|---|
| isbn | string | Search by ISBN number |
| page | integer | Page number for pagination (default: 1) |
| sort | string | Sort order: "new" (newest first), "old" (oldest), "rating" (highest rated) |
| limit | integer | Results per page (default: 10, max: 100) |
| query | string | General search query across title, author, and full text (e.g. "dune frank herbert") |
| title | string | Search by book title only (e.g. "The Great Gatsby") |
| author | string | Search by author name (e.g. "Tolkien") |
| subject | string | Search by subject/genre (e.g. "science fiction", "history") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"isbn": {
"type": "string",
"description": "Search by ISBN number"
},
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default: 1)"
},
"sort": {
"enum": [
"new",
"old",
"rating",
"readinglog",
"want_to_read",
"currently_reading",
"already_read"
],
"type": "string",
"description": "Sort order: \"new\" (newest first), \"old\" (oldest), \"rating\" (highest rated)"
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Results per page (default: 10, max: 100)"
},
"query": {
"type": "string",
"description": "General search query across title, author, and full text (e.g. \"dune frank herbert\")"
},
"title": {
"type": "string",
"description": "Search by book title only (e.g. \"The Great Gatsby\")"
},
"author": {
"type": "string",
"description": "Search by author name (e.g. \"Tolkien\")"
},
"subject": {
"type": "string",
"description": "Search by subject/genre (e.g. \"science fiction\", \"history\")"
}
},
"additionalProperties": false
}Look up a book by ISBN-10 or ISBN-13 — title, author, publisher, pages, cover image, subjects. 40M+ books (Open Library / Internet Archive)
| Argument | Type | Description |
|---|---|---|
| isbn* | string | ISBN-10 or ISBN-13 to look up (e.g. "9780451524935" for 1984, "0140449132" for The Republic) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"isbn"
],
"properties": {
"isbn": {
"type": "string",
"description": "ISBN-10 or ISBN-13 to look up (e.g. \"9780451524935\" for 1984, \"0140449132\" for The Republic)"
}
},
"additionalProperties": false
}Get full metadata + download URLs (EPUB, TXT, HTML, cover JPEG) for a Project Gutenberg book by numeric ID (e.g. 1342 = Pride and Prejudice). Gutendex MIT
| Argument | Type | Description |
|---|---|---|
| book_id* | integer | Project Gutenberg book ID (e.g. 1342 for Pride and Prejudice, 11 for Alice in Wonderland). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"book_id"
],
"properties": {
"book_id": {
"type": "integer",
"minimum": 1,
"description": "Project Gutenberg book ID (e.g. 1342 for Pride and Prejudice, 11 for Alice in Wonderland)."
}
},
"additionalProperties": false
}List all Project Gutenberg books by a specific author (search by name). Filter by language. Gutendex MIT
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max results to return (default 20, max 50). |
| author* | string | Author name search (e.g. "Jane Austen", "Mark Twain", "Tolstoy"). |
| language | string | Optional ISO 639-1 language code to filter by language (e.g. "en"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"author"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Max results to return (default 20, max 50)."
},
"author": {
"type": "string",
"minLength": 1,
"description": "Author name search (e.g. \"Jane Austen\", \"Mark Twain\", \"Tolstoy\")."
},
"language": {
"type": "string",
"description": "Optional ISO 639-1 language code to filter by language (e.g. \"en\")."
}
},
"additionalProperties": false
}List most-downloaded Project Gutenberg books, optionally filtered by language or topic. Gutendex MIT
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max results to return (default 20, max 50). |
| topic | string | Optional subject/bookshelf to filter (e.g. "Adventure"). |
| language | string | Optional ISO 639-1 language code to filter (e.g. "en"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Max results to return (default 20, max 50)."
},
"topic": {
"type": "string",
"description": "Optional subject/bookshelf to filter (e.g. \"Adventure\")."
},
"language": {
"type": "string",
"description": "Optional ISO 639-1 language code to filter (e.g. \"en\")."
}
},
"additionalProperties": false
}Search 78K+ public-domain books on Project Gutenberg by free-text query, language (ISO 639-1), topic, or author birth year. Returns book IDs, titles, authors, languages, subjects, download counts, and EPUB/TXT/HTML/cover URLs (Gutendex MIT)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max results to return (default 20, max 50). |
| query | string | Free-text search across title, author name, and subject (e.g. "shakespeare", "moby dick"). |
| topic | string | Subject/bookshelf topic filter (e.g. "Adventure", "Children's literature"). |
| language | string | ISO 639-1 language code or comma-separated codes to filter by language (e.g. "en", "fr,de"). |
| author_year_end | integer | Filter by author birth year — only include books from authors alive up to this year. |
| author_year_start | integer | Filter by author birth year — only include books from authors alive in this period start. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Max results to return (default 20, max 50)."
},
"query": {
"type": "string",
"description": "Free-text search across title, author name, and subject (e.g. \"shakespeare\", \"moby dick\")."
},
"topic": {
"type": "string",
"description": "Subject/bookshelf topic filter (e.g. \"Adventure\", \"Children's literature\")."
},
"language": {
"type": "string",
"description": "ISO 639-1 language code or comma-separated codes to filter by language (e.g. \"en\", \"fr,de\")."
},
"author_year_end": {
"type": "integer",
"description": "Filter by author birth year — only include books from authors alive up to this year."
},
"author_year_start": {
"type": "integer",
"description": "Filter by author birth year — only include books from authors alive in this period start."
}
},
"additionalProperties": false
}Get full audiobook details by LibriVox ID — includes per-section MP3 URLs (chapter-level streaming), playtimes, authors, and project metadata. LibriVox public domain
| Argument | Type | Description |
|---|---|---|
| book_id* | integer | LibriVox audiobook ID (integer). Use librivox.search first to discover IDs. Returns full chapter list with MP3 URLs. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"book_id"
],
"properties": {
"book_id": {
"type": "integer",
"minimum": 1,
"description": "LibriVox audiobook ID (integer). Use librivox.search first to discover IDs. Returns full chapter list with MP3 URLs."
}
},
"additionalProperties": false
}Search 20K+ public-domain audiobooks by title, author, or genre. Returns book IDs, descriptions, languages, copyright years, total time, and ZIP download URLs. LibriVox public domain
| Argument | Type | Description |
|---|---|---|
| genre | string | Genre filter — e.g. "Adventure", "Children's Fiction", "Mystery", "Plays", "Poetry". |
| limit | integer | Max results to return (default 25, max 100). |
| title | string | Substring search on audiobook title (e.g. "pride and prejudice", "treasure"). |
| author | string | Author name search (e.g. "shakespeare", "twain", "tolstoy"). |
| offset | integer | Pagination offset for stepping through large result sets. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"genre": {
"type": "string",
"description": "Genre filter — e.g. \"Adventure\", \"Children's Fiction\", \"Mystery\", \"Plays\", \"Poetry\"."
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Max results to return (default 25, max 100)."
},
"title": {
"type": "string",
"description": "Substring search on audiobook title (e.g. \"pride and prejudice\", \"treasure\")."
},
"author": {
"type": "string",
"description": "Author name search (e.g. \"shakespeare\", \"twain\", \"tolstoy\")."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset for stepping through large result sets."
}
},
"additionalProperties": false
}Get consolidated work metadata across all editions by Open Library Work ID — description, subjects, authors, cover, first publish date (Open Library)
| Argument | Type | Description |
|---|---|---|
| olid* | string | Open Library Work ID, e.g. "OL45804W" for Lord of the Rings. Get from search results key field |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"olid"
],
"properties": {
"olid": {
"type": "string",
"description": "Open Library Work ID, e.g. \"OL45804W\" for Lord of the Rings. Get from search results key field"
}
},
"additionalProperties": false
}Find DWD (Deutscher Wetterdienst) weather stations near a given latitude/longitude in Germany. Returns each station's DWD station ID, WMO station ID, name, coordinates, elevation, observation type (current / recent / historical / forecast), date range of available records, and distance from the query point. Useful for discovering which stations cover a location before querying observations or synop data. No distance filter by default — returns all matching sources sorted by proximity. No API key required — open DWD data via Bright Sky (MIT licence).
| Argument | Type | Description |
|---|---|---|
| latitude* | number | Latitude of the location in Germany (e.g. 52.52 for Berlin, range 47–56) |
| max_dist | number | Maximum distance in metres from the given coordinates to include stations. When omitted, all DWD stations are returned sorted by proximity. |
| longitude* | number | Longitude of the location in Germany (e.g. 13.40 for Berlin, range 5–16) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude"
],
"properties": {
"latitude": {
"type": "number",
"maximum": 56,
"minimum": 47,
"description": "Latitude of the location in Germany (e.g. 52.52 for Berlin, range 47–56)"
},
"max_dist": {
"type": "number",
"description": "Maximum distance in metres from the given coordinates to include stations. When omitted, all DWD stations are returned sorted by proximity.",
"exclusiveMinimum": 0
},
"longitude": {
"type": "number",
"maximum": 16,
"minimum": 5,
"description": "Longitude of the location in Germany (e.g. 13.40 for Berlin, range 5–16)"
}
},
"additionalProperties": false
}Get active DWD (Deutscher Wetterdienst) severe weather alerts and warnings for any location in Germany. Identifies the warn cell (administrative district) for the given coordinates and returns all current alerts with: event type (e.g. thunderstorm, heavy rain, frost, storm), severity (Minor/Moderate/Severe/Extreme), urgency, certainty, onset/expiry times, headline, description, and recommended action in English. Returns an empty list when no warnings are active. No API key required — open DWD data via Bright Sky (MIT licence).
| Argument | Type | Description |
|---|---|---|
| latitude* | number | Latitude of the location in Germany (e.g. 52.52 for Berlin, range 47–56) |
| longitude* | number | Longitude of the location in Germany (e.g. 13.40 for Berlin, range 5–16) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude"
],
"properties": {
"latitude": {
"type": "number",
"maximum": 56,
"minimum": 47,
"description": "Latitude of the location in Germany (e.g. 52.52 for Berlin, range 47–56)"
},
"longitude": {
"type": "number",
"maximum": 16,
"minimum": 5,
"description": "Longitude of the location in Germany (e.g. 13.40 for Berlin, range 5–16)"
}
},
"additionalProperties": false
}Get current weather conditions for any location in Germany from the nearest DWD (Deutscher Wetterdienst) station. Returns: temperature (°C), humidity, dew point, pressure (hPa), cloud cover, visibility, wind speed/direction, wind gusts, precipitation in the last 10/30/60 minutes, sunshine duration, solar radiation, and weather condition (dry, fog, rain, sleet, snow, hail, thunderstorm). Source: official German Weather Service real-time observations. Coverage: Germany only. No API key required — open DWD data via Bright Sky (MIT licence).
| Argument | Type | Description |
|---|---|---|
| units | string | Unit system: "dwd" (default) uses km/h wind and °C temperature; "si" uses m/s wind |
| latitude* | number | Latitude of the location in Germany (e.g. 52.52 for Berlin, range 47–56) |
| longitude* | number | Longitude of the location in Germany (e.g. 13.40 for Berlin, range 5–16) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude"
],
"properties": {
"units": {
"enum": [
"dwd",
"si"
],
"type": "string",
"description": "Unit system: \"dwd\" (default) uses km/h wind and °C temperature; \"si\" uses m/s wind"
},
"latitude": {
"type": "number",
"maximum": 56,
"minimum": 47,
"description": "Latitude of the location in Germany (e.g. 52.52 for Berlin, range 47–56)"
},
"longitude": {
"type": "number",
"maximum": 16,
"minimum": 5,
"description": "Longitude of the location in Germany (e.g. 13.40 for Berlin, range 5–16)"
}
},
"additionalProperties": false
}Get hourly weather observations or forecast for any location in Germany from DWD (Deutscher Wetterdienst). Pass a past date to retrieve historical observations; pass a future date to retrieve the DWD numerical forecast. Each hour includes: temperature, dew point, humidity, pressure, cloud cover, visibility, precipitation, sunshine, wind speed/direction, wind gusts, precipitation probability, solar irradiance, and condition icon. Returns up to 10 days of data (240 hourly records). No API key required — open DWD data via Bright Sky (MIT licence).
| Argument | Type | Description |
|---|---|---|
| date* | string | Start date/time for observations in ISO 8601 format (e.g. "2026-07-01" or "2026-07-01T08:00:00"). Returns historical data when date is in the past; returns DWD forecast when date is in the future. |
| units | string | Unit system: "dwd" (default) uses km/h wind and °C temperature; "si" uses m/s wind |
| latitude* | number | Latitude of the location in Germany (e.g. 52.52 for Berlin, range 47–56) |
| last_date | string | End date/time for observations in ISO 8601 format. When omitted, returns data for the 24-hour period starting at "date". Maximum range is 10 days. |
| longitude* | number | Longitude of the location in Germany (e.g. 13.40 for Berlin, range 5–16) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude",
"date"
],
"properties": {
"date": {
"type": "string",
"description": "Start date/time for observations in ISO 8601 format (e.g. \"2026-07-01\" or \"2026-07-01T08:00:00\"). Returns historical data when date is in the past; returns DWD forecast when date is in the future."
},
"units": {
"enum": [
"dwd",
"si"
],
"type": "string",
"description": "Unit system: \"dwd\" (default) uses km/h wind and °C temperature; \"si\" uses m/s wind"
},
"latitude": {
"type": "number",
"maximum": 56,
"minimum": 47,
"description": "Latitude of the location in Germany (e.g. 52.52 for Berlin, range 47–56)"
},
"last_date": {
"type": "string",
"description": "End date/time for observations in ISO 8601 format. When omitted, returns data for the 24-hour period starting at \"date\". Maximum range is 10 days."
},
"longitude": {
"type": "number",
"maximum": 16,
"minimum": 5,
"description": "Longitude of the location in Germany (e.g. 13.40 for Berlin, range 5–16)"
}
},
"additionalProperties": false
}Retrieve full details for a specific Norwegian company or organisation by its 9-digit organisation number. Returns: name, organisation form, website, phone, email, employee count, registration date, founding date, VAT registration, bankruptcy/winding-up status, up to 3 NACE industry codes, municipality, postal address, business address, last annual report year, and parent entity. Ideal for KYB (Know Your Business) verification of Norwegian entities. Source: Brønnøysundregistrene, NLOD 2.0.
| Argument | Type | Description |
|---|---|---|
| org_number* | string | Norwegian organisation number — exactly 9 digits (e.g. "923609016" for Equinor, "982463718" for DNB). No spaces or dashes. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"org_number"
],
"properties": {
"org_number": {
"type": "string",
"pattern": "^\\d{9}$",
"description": "Norwegian organisation number — exactly 9 digits (e.g. \"923609016\" for Equinor, \"982463718\" for DNB). No spaces or dashes."
}
},
"additionalProperties": false
}Retrieve statutory management roles for a Norwegian company — board of directors (STYR), CEO/daily manager (DAGL), auditor (REVI), chairman (LEDE), deputy members, signature rights, and other registered positions. Each role entry includes the person's first/last name, birth year, whether the role is still active, and (for corporate roles) the linked entity's org number and name. Essential for due diligence, UBO (Ultimate Beneficial Owner) research, and corporate governance checks. Source: Brønnøysundregistrene, NLOD 2.0.
| Argument | Type | Description |
|---|---|---|
| org_number* | string | Organisation number of the company to retrieve roles for (9 digits). Returns all registered role groups including board of directors (STYR), CEO (DAGL), auditor (REVI), and other statutory positions. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"org_number"
],
"properties": {
"org_number": {
"type": "string",
"pattern": "^\\d{9}$",
"description": "Organisation number of the company to retrieve roles for (9 digits). Returns all registered role groups including board of directors (STYR), CEO (DAGL), auditor (REVI), and other statutory positions."
}
},
"additionalProperties": false
}Search Norway's official business registry (Brønnøysundregistrene) for companies and organisations. Filter by company name, municipality (4-digit code), organisation form (AS/ASA/ENK/NUF etc.), or NACE industry code. Returns organisation number, name, org form, VAT status, employee count, address, primary NACE industry code, and bankruptcy/winding-up flags. Over 1 million entities registered. Data is NLOD 2.0 (commercial use permitted). No API key required.
| Argument | Type | Description |
|---|---|---|
| name | string | Company name or partial name to search (e.g. "Equinor", "Telenor", "DNB"). Case-insensitive. At least one filter (name, municipality_number, org_form, nace_code) is recommended. |
| page | integer | Zero-based page number for pagination (default 0). |
| size | integer | Number of results per page (1–20, default 5). |
| org_form | string | Organization form code to filter by. Common values: AS=Private Limited Company, ASA=Public Limited Company, ENK=Sole Proprietorship, NUF=Foreign Entity Norwegian Branch, BA/SA=Cooperative, STI=Foundation, FLI=Non-Profit Association. |
| nace_code | string | NACE industry code to filter by (e.g. "06.100" for Extraction of crude oil, "47.110" for Retail in non-specialised stores, "62.010" for Computer programming). Matches primary industry code (naeringskode1). |
| municipality_number | string | Norwegian municipality number (4-digit code, e.g. "0301" for Oslo, "1103" for Stavanger). Restricts results to companies registered in that municipality. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"name": {
"type": "string",
"description": "Company name or partial name to search (e.g. \"Equinor\", \"Telenor\", \"DNB\"). Case-insensitive. At least one filter (name, municipality_number, org_form, nace_code) is recommended."
},
"page": {
"type": "integer",
"minimum": 0,
"description": "Zero-based page number for pagination (default 0)."
},
"size": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of results per page (1–20, default 5)."
},
"org_form": {
"enum": [
"AS",
"ASA",
"ENK",
"ANS",
"DA",
"NUF",
"BA",
"SA",
"STI",
"FLI",
"BO",
"BRL",
"ESEK",
"GFS",
"IKJP",
"IKS",
"KBO",
"KF",
"KFFK",
"KS",
"NP",
"OPMV",
"ORG",
"PERS",
"PK",
"PRE",
"SF",
"SPA",
"STAT",
"SÆR",
"TVAM",
"VPFO"
],
"type": "string",
"description": "Organization form code to filter by. Common values: AS=Private Limited Company, ASA=Public Limited Company, ENK=Sole Proprietorship, NUF=Foreign Entity Norwegian Branch, BA/SA=Cooperative, STI=Foundation, FLI=Non-Profit Association."
},
"nace_code": {
"type": "string",
"description": "NACE industry code to filter by (e.g. \"06.100\" for Extraction of crude oil, \"47.110\" for Retail in non-specialised stores, \"62.010\" for Computer programming). Matches primary industry code (naeringskode1)."
},
"municipality_number": {
"type": "string",
"maxLength": 4,
"minLength": 4,
"description": "Norwegian municipality number (4-digit code, e.g. \"0301\" for Oslo, \"1103\" for Stavanger). Restricts results to companies registered in that municipality."
}
},
"additionalProperties": false
}List all registered sub-units (underenheter) for a Norwegian parent company — branches, departments, production sites, and physical locations. Each sub-unit has its own organisation number, name, org form, NACE industry code, municipality, and employee count. Useful for mapping a company's operational footprint across Norway. Large companies like Equinor or NHO can have hundreds of sub-units. Paginated (up to 50/page). Source: Brønnøysundregistrene, NLOD 2.0.
| Argument | Type | Description |
|---|---|---|
| page | integer | Zero-based page number for pagination (default 0). |
| size | integer | Number of sub-units per page (1–50, default 10). |
| org_number* | string | Organisation number of the parent company (9 digits). Returns all registered sub-units (branches, departments, locations) that belong to this parent entity. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"org_number"
],
"properties": {
"page": {
"type": "integer",
"minimum": 0,
"description": "Zero-based page number for pagination (default 0)."
},
"size": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of sub-units per page (1–50, default 10)."
},
"org_number": {
"type": "string",
"pattern": "^\\d{9}$",
"description": "Organisation number of the parent company (9 digits). Returns all registered sub-units (branches, departments, locations) that belong to this parent entity."
}
},
"additionalProperties": false
}Query T100 airline segment statistics from BTS giving passenger counts, departures, seats, load factor, and payload by US airport. Filter by IATA airport code (e.g. ATL, JFK, LAX, ORD) and year/period (annual "2025" or quarterly "2026M1-3"). Data covers all US commercial service airports through the most recent quarter. Source: BTS T100 Segment Summary By Origin Airport (Socrata r495-tyji). No auth — US Gov public domain.
| Argument | Type | Description |
|---|---|---|
| year | string | Year or period to filter by. Annual values use format "YYYY" (e.g. "2025"). Quarterly use "YYYYQn" (e.g. "2026M1-3" for Q1 2026). Latest available is 2026M1-3. |
| limit | integer | Maximum number of airport traffic records to return (1–500, default 20). |
| airport_code | string | IATA airport code to filter by (e.g. "ATL" for Atlanta, "JFK" for New York JFK, "LAX" for Los Angeles). Returns top airports if omitted. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"year": {
"type": "string",
"description": "Year or period to filter by. Annual values use format \"YYYY\" (e.g. \"2025\"). Quarterly use \"YYYYQn\" (e.g. \"2026M1-3\" for Q1 2026). Latest available is 2026M1-3."
},
"limit": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Maximum number of airport traffic records to return (1–500, default 20)."
},
"airport_code": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "IATA airport code to filter by (e.g. \"ATL\" for Atlanta, \"JFK\" for New York JFK, \"LAX\" for Los Angeles). Returns top airports if omitted."
}
},
"additionalProperties": false
}Query monthly US border crossing statistics from the Bureau of Transportation Statistics. Filter by border (US-Canada or US-Mexico), crossing type (Trucks, Personal Vehicles, Pedestrians, Buses, Trains, etc.), port name, and date range. Data covers all official land ports of entry updated monthly. Source: BTS Border Crossing Entry Data (Socrata keg4-3bc2). No auth — US Gov public domain.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of records to return (1–500, default 20). |
| border | string | Filter by border: "US-Canada Border" or "US-Mexico Border". Omit for both borders. |
| measure | string | Type of crossing to count. Options: Buses, Bus Passengers, Pedestrians, Personal Vehicle Passengers, Personal Vehicles, Train Passengers, Trains, Trucks. |
| end_date | string | End of date range in YYYY-MM-DD format (e.g. "2025-12-31"). |
| port_name | string | Filter by port name (partial match, e.g. "San Diego", "El Paso", "Detroit"). |
| start_date | string | Start of date range in YYYY-MM-DD format (e.g. "2025-01-01"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Maximum number of records to return (1–500, default 20)."
},
"border": {
"enum": [
"US-Canada Border",
"US-Mexico Border"
],
"type": "string",
"description": "Filter by border: \"US-Canada Border\" or \"US-Mexico Border\". Omit for both borders."
},
"measure": {
"enum": [
"Buses",
"Bus Passengers",
"Pedestrians",
"Personal Vehicle Passengers",
"Personal Vehicles",
"Train Passengers",
"Trains",
"Trucks"
],
"type": "string",
"description": "Type of crossing to count. Options: Buses, Bus Passengers, Pedestrians, Personal Vehicle Passengers, Personal Vehicles, Train Passengers, Trains, Trucks."
},
"end_date": {
"type": "string",
"description": "End of date range in YYYY-MM-DD format (e.g. \"2025-12-31\")."
},
"port_name": {
"type": "string",
"description": "Filter by port name (partial match, e.g. \"San Diego\", \"El Paso\", \"Detroit\")."
},
"start_date": {
"type": "string",
"description": "Start of date range in YYYY-MM-DD format (e.g. \"2025-01-01\")."
}
},
"additionalProperties": false
}Access weekly and monthly supply chain performance indicators from BTS, including containerized import/export volumes at US ports, railroad terminal dwell times, truck speeds at bottleneck locations, freight rates (Shanghai–LA), vessel waiting times, carrier employment, and the Freight Transportation Services Index. Filter by indicator name (partial match), year, or date range. Source: BTS Supply Chain and Freight Indicators (Socrata y5ut-ibwt). No auth — US Gov public domain.
| Argument | Type | Description |
|---|---|---|
| year | integer | Filter by year (e.g. 2024). Data available from 2019. |
| limit | integer | Maximum number of indicator records to return (1–500, default 20). |
| end_date | string | End of date range in YYYY-MM-DD format (e.g. "2024-12-31"). |
| indicator | string | Partial name of the indicator to filter by (e.g. "Freight Transportation Services Index", "Containerized Imports", "Railroad", "Truck Speed"). Case-insensitive substring match. |
| start_date | string | Start of date range in YYYY-MM-DD format (e.g. "2024-01-01"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"year": {
"type": "integer",
"maximum": 2030,
"minimum": 2019,
"description": "Filter by year (e.g. 2024). Data available from 2019."
},
"limit": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Maximum number of indicator records to return (1–500, default 20)."
},
"end_date": {
"type": "string",
"description": "End of date range in YYYY-MM-DD format (e.g. \"2024-12-31\")."
},
"indicator": {
"type": "string",
"description": "Partial name of the indicator to filter by (e.g. \"Freight Transportation Services Index\", \"Containerized Imports\", \"Railroad\", \"Truck Speed\"). Case-insensitive substring match."
},
"start_date": {
"type": "string",
"description": "Start of date range in YYYY-MM-DD format (e.g. \"2024-01-01\")."
}
},
"additionalProperties": false
}Retrieve the BTS Transportation Services Index (TSI), a monthly economic indicator measuring the volume of freight and passenger transportation services across all modes. Returns total TSI, freight TSI, passenger TSI, plus component indices (vehicle miles traveled, rail carloads, transit, petroleum/gas pipelines). Base year 2000=100. Data from 2000 to present. Source: BTS TSI dataset (Socrata bw6n-ddqk). No auth — US Gov public domain.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of monthly records to return (1–300, default 12). |
| end_date | string | End of date range in YYYY-MM-DD format (e.g. "2024-12-31"). |
| start_date | string | Start of date range in YYYY-MM-DD format (e.g. "2024-01-01"). Index goes back to 2000. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 300,
"minimum": 1,
"description": "Maximum number of monthly records to return (1–300, default 12)."
},
"end_date": {
"type": "string",
"description": "End of date range in YYYY-MM-DD format (e.g. \"2024-12-31\")."
},
"start_date": {
"type": "string",
"description": "Start of date range in YYYY-MM-DD format (e.g. \"2024-01-01\"). Index goes back to 2000."
}
},
"additionalProperties": false
}Search or list Deutsche Bundesbank economic time-series dataflows — ~94 official series covering exchange rates, interest rates, money supply, prices, and balance of payments. Filter by name/id with query, or omit to list all. Use the returned dataflow_id with bundesbank-timeseries.structure and bundesbank-timeseries.data. Data: api.statistiken.bundesbank.de (Bundesbank SDMX 2.1 REST API), no auth required.
| Argument | Type | Description |
|---|---|---|
| query | string | Filter dataflows by name or id substring, case-insensitive (e.g. "exchange rate", "interest", "BBEX3"). Omit to list all ~94 available dataflows. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"query": {
"type": "string",
"description": "Filter dataflows by name or id substring, case-insensitive (e.g. \"exchange rate\", \"interest\", \"BBEX3\"). Omit to list all ~94 available dataflows."
}
},
"additionalProperties": false
}Get the dimensions and valid codes for a Bundesbank dataflow (dataflow_id from bundesbank-timeseries.dataflows, e.g. "BBEX3" for exchange rates) in SDMX key position order, each with its code list (capped to 200 codes per dimension, with a total_codes count). Required to build the fully-specified "key" for bundesbank-timeseries.data. Data: api.statistiken.bundesbank.de (Bundesbank SDMX 2.1 REST API), no auth required.
| Argument | Type | Description |
|---|---|---|
| dataflow_id* | string | Bundesbank dataflow id, from bundesbank-timeseries.dataflows (e.g. "BBEX3" for exchange rates, "BBIN1" for central bank rates). Returns the dimension list (e.g. FREQ, CURRENCY) in SDMX key position order, with each dimension's valid codes (capped to 200 per dimension, with a total_codes count) — needed to build the "key" for bundesbank-timeseries.data. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"dataflow_id"
],
"properties": {
"dataflow_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_]+$",
"minLength": 1,
"description": "Bundesbank dataflow id, from bundesbank-timeseries.dataflows (e.g. \"BBEX3\" for exchange rates, \"BBIN1\" for central bank rates). Returns the dimension list (e.g. FREQ, CURRENCY) in SDMX key position order, with each dimension's valid codes (capped to 200 per dimension, with a total_codes count) — needed to build the \"key\" for bundesbank-timeseries.data."
}
},
"additionalProperties": false
}Get observation values for a Bundesbank dataflow (dataflow_id from bundesbank-timeseries.dataflows). key is REQUIRED and must be a fully dot-specified SDMX series key with no empty segments (from bundesbank-timeseries.structure), e.g. "D.USD.EUR.BB.AC.000" for the daily EUR/USD reference rate — an unscoped key would match every series in the dataflow and is rejected. Control the time range with start_period/ end_period or last_n_observations (max 100). Data: api.statistiken.bundesbank.de (Bundesbank SDMX 2.1 REST API), no auth required.
| Argument | Type | Description |
|---|---|---|
| key* | string | REQUIRED fully dot-specified SDMX series key in dimension position order, from bundesbank-timeseries.structure (e.g. "D.USD.EUR.BB.AC.000" for the daily EUR/USD reference rate on the BBEX3 dataflow: FREQ=D, CURRENCY=USD, PARTNER_CURRENCY=EUR, SERIES_TYPE=BB, RATE_TYPE=AC, SUFFIX=000). Every position must be filled — an unscoped/wildcard key would match every series in the dataflow and is rejected. |
| end_period | string | End of period range, e.g. "2024" (annual) or "2024-12-31" (daily). Takes precedence over last_n_observations when set. |
| dataflow_id* | string | Bundesbank dataflow id, from bundesbank-timeseries.dataflows (e.g. "BBEX3" for exchange rates). |
| start_period | string | Start of period range, e.g. "2020" (annual) or "2020-01-01" (daily). Takes precedence over last_n_observations when set. |
| last_n_observations | integer | Return only the most recent N observations (max 100, default 30). Ignored if start_period or end_period is set. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"dataflow_id",
"key"
],
"properties": {
"key": {
"type": "string",
"pattern": "^[A-Za-z0-9_+.-]+$",
"minLength": 1,
"description": "REQUIRED fully dot-specified SDMX series key in dimension position order, from bundesbank-timeseries.structure (e.g. \"D.USD.EUR.BB.AC.000\" for the daily EUR/USD reference rate on the BBEX3 dataflow: FREQ=D, CURRENCY=USD, PARTNER_CURRENCY=EUR, SERIES_TYPE=BB, RATE_TYPE=AC, SUFFIX=000). Every position must be filled — an unscoped/wildcard key would match every series in the dataflow and is rejected."
},
"end_period": {
"type": "string",
"description": "End of period range, e.g. \"2024\" (annual) or \"2024-12-31\" (daily). Takes precedence over last_n_observations when set."
},
"dataflow_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_]+$",
"minLength": 1,
"description": "Bundesbank dataflow id, from bundesbank-timeseries.dataflows (e.g. \"BBEX3\" for exchange rates)."
},
"start_period": {
"type": "string",
"description": "Start of period range, e.g. \"2020\" (annual) or \"2020-01-01\" (daily). Takes precedence over last_n_observations when set."
},
"last_n_observations": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Return only the most recent N observations (max 100, default 30). Ignored if start_period or end_period is set."
}
},
"additionalProperties": false
}Find professional email addresses and company data for any domain — organization name, industry, employee count, tech stack, social profiles, email pattern, and verified contact emails with confidence scores, positions, departments, seniority levels. 50M+ domains indexed (Hunter.io)
| Argument | Type | Description |
|---|---|---|
| type | string | Filter by email type: "personal" (name@domain) or "generic" (info@domain) |
| limit | integer | Max number of emails to return (default 10, max 100) |
| domain* | string | Company domain name (e.g. "stripe.com", "google.com", "microsoft.com") |
| department | string | Filter by department (e.g. "engineering", "sales", "marketing") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"domain"
],
"properties": {
"type": {
"enum": [
"personal",
"generic"
],
"type": "string",
"description": "Filter by email type: \"personal\" (name@domain) or \"generic\" (info@domain)"
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Max number of emails to return (default 10, max 100)"
},
"domain": {
"type": "string",
"minLength": 3,
"description": "Company domain name (e.g. \"stripe.com\", \"google.com\", \"microsoft.com\")"
},
"department": {
"enum": [
"executive",
"finance",
"hr",
"it",
"marketing",
"operations",
"sales",
"legal",
"management",
"communication"
],
"type": "string",
"description": "Filter by department (e.g. \"engineering\", \"sales\", \"marketing\")"
}
},
"additionalProperties": false
}Full details for a legal entity by 20-character LEI code — legal name, registered address, headquarters, legal form, registration date, renewal date, status. Use LEI from search results (GLEIF)
| Argument | Type | Description |
|---|---|---|
| lei* | string | 20-character Legal Entity Identifier code (e.g. "HWUPKR0MPOU8FGXBT394" for Apple Inc) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lei"
],
"properties": {
"lei": {
"type": "string",
"maxLength": 20,
"minLength": 20,
"description": "20-character Legal Entity Identifier code (e.g. \"HWUPKR0MPOU8FGXBT394\" for Apple Inc)"
}
},
"additionalProperties": false
}Find the direct parent company of a legal entity by LEI code — returns parent LEI, relationship type, and status. Useful for corporate ownership chain analysis (GLEIF)
| Argument | Type | Description |
|---|---|---|
| lei* | string | LEI code to find parent company relationship for |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lei"
],
"properties": {
"lei": {
"type": "string",
"maxLength": 20,
"minLength": 20,
"description": "LEI code to find parent company relationship for"
}
},
"additionalProperties": false
}Search 2.5M+ legal entities worldwide by name — companies, funds, government bodies across 200+ countries. Returns LEI code, name, country, city, status, entity category. Filter by country. CC0 open data (GLEIF)
| Argument | Type | Description |
|---|---|---|
| name* | string | Legal entity name to search (e.g. "Apple", "Goldman Sachs", "Toyota Motor") |
| limit | integer | Max results (default 10, max 100) |
| country | string | Filter by ISO 3166-1 alpha-2 country code (e.g. "US", "GB", "JP", "DE") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"minLength": 1,
"description": "Legal entity name to search (e.g. \"Apple\", \"Goldman Sachs\", \"Toyota Motor\")"
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Max results (default 10, max 100)"
},
"country": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Filter by ISO 3166-1 alpha-2 country code (e.g. \"US\", \"GB\", \"JP\", \"DE\")"
}
},
"additionalProperties": false
}Full details for a UK company by Companies House number — company name, type, status, SIC codes, registered address, accounts due date, confirmation statement due, charges, insolvency history (Companies House UK Gov)
| Argument | Type | Description |
|---|---|---|
| company_number* | string | UK Companies House number (e.g. "00048839" for Barclays, "00445790" for Tesco). Get from search results |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"company_number"
],
"properties": {
"company_number": {
"type": "string",
"minLength": 1,
"description": "UK Companies House number (e.g. \"00048839\" for Barclays, \"00445790\" for Tesco). Get from search results"
}
},
"additionalProperties": false
}Search the UK Companies House registry by name — returns company number, name, type (plc/ltd), status (active/dissolved), incorporation date, registered address. Covers all companies registered under the Companies Act (Companies House UK Gov)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max results (default 10, max 100) |
| query* | string | Company name to search (e.g. "Barclays", "Tesco", "ARM Holdings") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Max results (default 10, max 100)"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Company name to search (e.g. \"Barclays\", \"Tesco\", \"ARM Holdings\")"
}
},
"additionalProperties": false
}Public holidays for any country and year — 100+ countries, national and regional holidays. Returns date, name (local + English), type. No auth, free, open source (Nager.Date)
| Argument | Type | Description |
|---|---|---|
| year | integer | Year (default 2026). Supports 2000-2099. |
| country_code* | string | ISO 3166-1 alpha-2 country code (e.g. "US", "GB", "DE", "JP", "BR") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country_code"
],
"properties": {
"year": {
"type": "integer",
"maximum": 2099,
"minimum": 2000,
"description": "Year (default 2026). Supports 2000-2099."
},
"country_code": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO 3166-1 alpha-2 country code (e.g. \"US\", \"GB\", \"DE\", \"JP\", \"BR\")"
}
},
"additionalProperties": false
}Next upcoming public holidays for a country — useful for scheduling, availability checks, business day calculations. No auth (Nager.Date)
| Argument | Type | Description |
|---|---|---|
| country_code* | string | ISO 3166-1 alpha-2 country code (e.g. "US", "FR") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country_code"
],
"properties": {
"country_code": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO 3166-1 alpha-2 country code (e.g. \"US\", \"FR\")"
}
},
"additionalProperties": false
}Public holidays for 230+ countries — national, local, religious, observance types. Filter by month, day, type. 100+ years coverage. More countries than Nager.Date (Calendarific)
| Argument | Type | Description |
|---|---|---|
| day | integer | Filter by day (1-31) |
| type | string | Filter by holiday type |
| year | integer | Year (default 2026) |
| month | integer | Filter by month (1-12) |
| country* | string | ISO 3166-1 alpha-2 country code (e.g. "US", "GB", "DE", "JP", "IN", "BR") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country"
],
"properties": {
"day": {
"type": "integer",
"maximum": 31,
"minimum": 1,
"description": "Filter by day (1-31)"
},
"type": {
"enum": [
"national",
"local",
"religious",
"observance"
],
"type": "string",
"description": "Filter by holiday type"
},
"year": {
"type": "integer",
"maximum": 2049,
"minimum": 2000,
"description": "Year (default 2026)"
},
"month": {
"type": "integer",
"maximum": 12,
"minimum": 1,
"description": "Filter by month (1-12)"
},
"country": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO 3166-1 alpha-2 country code (e.g. \"US\", \"GB\", \"DE\", \"JP\", \"IN\", \"BR\")"
}
},
"additionalProperties": false
}Get the current national carbon intensity of UK electricity generation from the National Grid ESO. Returns the half-hour period timestamps, forecast intensity in gCO2/kWh, actual intensity in gCO2/kWh (when available), and a qualitative index (very low / low / moderate / high / very high). Data is updated every 30 minutes. Lower values indicate cleaner electricity — useful for smart energy scheduling, EV charging optimisation, and sustainability dashboards. CC BY 4.0, no upstream cost.
| Argument | Type | Description |
|---|---|---|
| locale | string | Reserved for future use. Omit for standard response. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"locale": {
"type": "string",
"description": "Reserved for future use. Omit for standard response."
}
},
"additionalProperties": false
}Get the 24-hour ahead forecast of UK national carbon intensity from the National Grid ESO. Returns up to 48 half-hour periods (fully covering the next 24 hours), each with a forecast intensity in gCO2/kWh and a qualitative index (very low / low / moderate / high / very high). Use the optional periods parameter to limit results (e.g. periods=6 for 3 hours ahead). Ideal for scheduling carbon-intensive workloads, EV charging, or energy storage dispatch at the lowest-carbon future window. CC BY 4.0, no upstream cost.
| Argument | Type | Description |
|---|---|---|
| periods | integer | Number of 30-minute forecast periods to return (1–48, default: all 48 covering 24 hours) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"periods": {
"type": "integer",
"maximum": 48,
"minimum": 1,
"description": "Number of 30-minute forecast periods to return (1–48, default: all 48 covering 24 hours)"
}
},
"additionalProperties": false
}Get the current UK national electricity generation mix by fuel source from the National Grid ESO. Returns the percentage contribution of each fuel type: biomass, coal, imports, gas, nuclear, other, hydro, solar, and wind. Data is updated every 30 minutes. Useful for understanding real-time renewable vs fossil fuel share, carbon-aware computing, and energy transition analysis. CC BY 4.0, no upstream cost.
| Argument | Type | Description |
|---|---|---|
| locale | string | Reserved for future use. Omit for standard response. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"locale": {
"type": "string",
"description": "Reserved for future use. Omit for standard response."
}
},
"additionalProperties": false
}Get carbon intensity and generation mix for UK electricity distribution regions. Returns data for all 14–18 UK DNO (Distribution Network Operator) regions, or a single region by region ID (1=North Scotland, 2=South Scotland, 3=North West England, 4=North East England, 5=Yorkshire, 6=North Wales & Mersey, 7=South Wales, 8=West Midlands, 9=East Midlands, 10=East England, 11=South West England, 12=South England, 13=London, 14=South East England). Each region includes forecast intensity in gCO2/kWh, qualitative index, and generation mix percentages. Useful for location-aware carbon-minimising energy decisions. CC BY 4.0, no upstream cost.
| Argument | Type | Description |
|---|---|---|
| region_id | integer | UK DNO region ID (1–14 for primary regions, up to 18 for all). Omit to return all regions. 1=North Scotland, 2=South Scotland, 3=North West England, 4=North East England, 5=Yorkshire, 6=North Wales & Mersey, 7=South Wales, 8=West Midlands, 9=East Midlands, 10=East England, 11=South West England, 12=South England, 13=London, 14=South East England |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"region_id": {
"type": "integer",
"maximum": 18,
"minimum": 1,
"description": "UK DNO region ID (1–14 for primary regions, up to 18 for all). Omit to return all regions. 1=North Scotland, 2=South Scotland, 3=North West England, 4=North East England, 5=Yorkshire, 6=North Wales & Mersey, 7=South Wales, 8=West Midlands, 9=East Midlands, 10=East England, 11=South West England, 12=South England, 13=London, 14=South East England"
}
},
"additionalProperties": false
}Search the Statistics Netherlands (CBS) open data catalog of 5900+ statistical datasets covering population, economy, labor market, health, education, environment, and more. Returns table identifiers needed for table_info, table_properties, and table_data queries. Filter by keyword (e.g. "bevolking", "werkloosheid", "bbp"), publication frequency (annual/quarterly/monthly), or language. Results ordered by most recently updated. Source: opendata.cbs.nl — CC BY 4.0, no auth, unlimited free access.
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of results to skip for pagination (default 0). |
| limit | integer | Number of results to return (1–50, default 10). |
| query | string | Keyword to search in CBS table titles and descriptions (e.g. "population", "unemployment", "gdp"). Leave empty to list the most recently updated tables. |
| language | string | Filter by language of the table metadata: nl (Dutch, default) or en (English). English tables are a subset. |
| frequency | string | Filter by publication frequency: Perjaar (annual), Kwartaal (quarterly), Maand (monthly), Onregelmatig (irregular). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"skip": {
"type": "integer",
"minimum": 0,
"description": "Number of results to skip for pagination (default 0)."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results to return (1–50, default 10)."
},
"query": {
"type": "string",
"minLength": 1,
"description": "Keyword to search in CBS table titles and descriptions (e.g. \"population\", \"unemployment\", \"gdp\"). Leave empty to list the most recently updated tables."
},
"language": {
"enum": [
"nl",
"en"
],
"type": "string",
"description": "Filter by language of the table metadata: nl (Dutch, default) or en (English). English tables are a subset."
},
"frequency": {
"enum": [
"Perjaar",
"Kwartaal",
"Maand",
"Onregelmatig"
],
"type": "string",
"description": "Filter by publication frequency: Perjaar (annual), Kwartaal (quarterly), Maand (monthly), Onregelmatig (irregular)."
}
},
"additionalProperties": false
}Query statistical data from a CBS Netherlands table using OData filters. Supports $filter (e.g. "Perioden eq '2023JJ00'" for annual 2023, "RegioS eq 'NL00 '" for national), $select (specific columns), $top (max 100 records), and $skip (pagination). Returns typed data rows with all dimension and topic values. Use table_properties first to discover available columns and valid filter values. Annual period codes use format YYYY + JJ00 (e.g. 2023JJ00). Source: opendata.cbs.nl — CC BY 4.0, no auth, unlimited free access.
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of records to skip for pagination (default 0). |
| limit | integer | Number of data records to return (1–100, default 10). |
| filter | string | OData $filter expression to narrow results (e.g. "Perioden eq '2023JJ00'" for annual 2023 data, or "RegioS eq 'NL00 '" for national totals). Use values from the table's dimension endpoints. |
| select | string | Comma-separated list of columns to include (e.g. "Perioden, RegioS, Bevolking_1"). Reduces response size for wide tables. Omit to return all columns. |
| table_id* | string | CBS table identifier (e.g. "83583NED"). Use catalog_search to find a table, then table_properties to discover its columns. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"table_id"
],
"properties": {
"skip": {
"type": "integer",
"minimum": 0,
"description": "Number of records to skip for pagination (default 0)."
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of data records to return (1–100, default 10)."
},
"filter": {
"type": "string",
"description": "OData $filter expression to narrow results (e.g. \"Perioden eq '2023JJ00'\" for annual 2023 data, or \"RegioS eq 'NL00 '\" for national totals). Use values from the table's dimension endpoints."
},
"select": {
"type": "string",
"description": "Comma-separated list of columns to include (e.g. \"Perioden, RegioS, Bevolking_1\"). Reduces response size for wide tables. Omit to return all columns."
},
"table_id": {
"type": "string",
"minLength": 1,
"description": "CBS table identifier (e.g. \"83583NED\"). Use catalog_search to find a table, then table_properties to discover its columns."
}
},
"additionalProperties": false
}Get metadata for a specific CBS Netherlands statistical table by its identifier (e.g. "83583NED"). Returns full title, description, time period covered (e.g. 2010–2024), publication frequency, number of records, data source, output status (provisional/final), and the API URL for data access. Use catalog_search first to discover table identifiers. Source: opendata.cbs.nl — CC BY 4.0, no auth, unlimited free access.
| Argument | Type | Description |
|---|---|---|
| table_id* | string | CBS table identifier returned by catalog_search (e.g. "83583NED", "37556"). Used to retrieve metadata about a specific statistical dataset. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"table_id"
],
"properties": {
"table_id": {
"type": "string",
"minLength": 1,
"description": "CBS table identifier returned by catalog_search (e.g. \"83583NED\", \"37556\"). Used to retrieve metadata about a specific statistical dataset."
}
},
"additionalProperties": false
}Get the column schema for a CBS Netherlands statistical table — dimension keys, topic keys, data types (TimeDimension, GeoDimension, Topic, TopicGroup), titles, units, and decimal precision. Essential before querying table_data: reveals the exact field names and filter values available. For example, a population table has Perioden (time), RegioS (region), and numeric topic columns. Source: opendata.cbs.nl — CC BY 4.0, no auth, unlimited free access.
| Argument | Type | Description |
|---|---|---|
| table_id* | string | CBS table identifier (e.g. "83583NED"). Returns the column schema (keys, types, titles, units) so you know which fields to use in table_data queries. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"table_id"
],
"properties": {
"table_id": {
"type": "string",
"minLength": 1,
"description": "CBS table identifier (e.g. \"83583NED\"). Returns the column schema (keys, types, titles, units) so you know which fields to use in table_data queries."
}
},
"additionalProperties": false
}Search 1,400+ CDC public health datasets — COVID-19, chronic disease, vaccination, mortality, birth/death statistics, environmental health. Returns dataset ID, name, description, category. Use dataset IDs with cdc.query to fetch data (US Gov)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of results (1-50, default 20) |
| query | string | Search keyword (e.g. "covid deaths", "vaccination rates", "chronic disease", "mortality") |
| category | string | Dataset category filter (e.g. "NCHS", "COVID-19", "Chronic Disease Indicators") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results (1-50, default 20)"
},
"query": {
"type": "string",
"description": "Search keyword (e.g. \"covid deaths\", \"vaccination rates\", \"chronic disease\", \"mortality\")"
},
"category": {
"type": "string",
"description": "Dataset category filter (e.g. \"NCHS\", \"COVID-19\", \"Chronic Disease Indicators\")"
}
},
"additionalProperties": false
}Query a specific CDC dataset using SoQL filters — filter by state, year, age group, condition. Returns structured rows with column names. Supports WHERE, SELECT, ORDER, GROUP BY. Use cdc.datasets to find dataset IDs first (US Gov, Socrata SODA API)
| Argument | Type | Description |
|---|---|---|
| group | string | Group by columns for aggregation (e.g. "state" with select "state, SUM(deaths)") |
| limit | integer | Max rows to return (1-1000, default 100) |
| order | string | Sort order (e.g. "year DESC", "deaths DESC"). Default: dataset default order. |
| where | string | SoQL WHERE clause filter (e.g. "state='CA'", "year > 2020", "age_group='65+'") |
| select | string | Columns to return, comma-separated (e.g. "state, year, deaths"). Default: all columns. |
| dataset_id* | string | CDC dataset ID in xxxx-xxxx format (e.g. "9bhg-hcku" for COVID deaths). Use cdc.datasets to find IDs. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"dataset_id"
],
"properties": {
"group": {
"type": "string",
"description": "Group by columns for aggregation (e.g. \"state\" with select \"state, SUM(deaths)\")"
},
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Max rows to return (1-1000, default 100)"
},
"order": {
"type": "string",
"description": "Sort order (e.g. \"year DESC\", \"deaths DESC\"). Default: dataset default order."
},
"where": {
"type": "string",
"description": "SoQL WHERE clause filter (e.g. \"state='CA'\", \"year > 2020\", \"age_group='65+'\")"
},
"select": {
"type": "string",
"description": "Columns to return, comma-separated (e.g. \"state, year, deaths\"). Default: all columns."
},
"dataset_id": {
"type": "string",
"pattern": "^[a-z0-9]{4}-[a-z0-9]{4}$",
"description": "CDC dataset ID in xxxx-xxxx format (e.g. \"9bhg-hcku\" for COVID deaths). Use cdc.datasets to find IDs."
}
},
"additionalProperties": false
}Query the CDC U.S. Chronic Disease Indicators (CDI) dataset covering 19 chronic disease topics (diabetes, cardiovascular, cancer, asthma, tobacco, alcohol, arthritis, COPD, mental health, etc.) across all 50 US states + DC and national level. Filter by topic ID (e.g. DIA, CVD, TOB), specific question ID, state abbreviation (e.g. CA, TX, US for national), year range, and demographic stratification (Overall, Female, Male, age groups, race/ethnicity). Returns prevalence rates, confidence intervals, data source, and stratification. 398K records, data through 2023. Source: CDC CDI Socrata dataset hksd-2xuw. No auth — US Gov public domain.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of indicator records to return (1–200, default 25). |
| location | string | US state abbreviation (e.g. "CA", "TX", "NY") or "US" for national-level data. Two-letter FIPS abbreviation. |
| topic_id | string | Topic ID to filter by. Options: ALC=Alcohol, ART=Arthritis, AST=Asthma, CAN=Cancer, CHC=Cognitive Health, CKD=Chronic Kidney Disease, COPD=COPD, CVD=Cardiovascular, DIA=Diabetes, DIS=Disability, HEA=Health Status, IMM=Immunization, MAT=Maternal Health, MEN=Mental Health, NMED=Non-Medical Factors, NPAW=Nutrition/Physical Activity/Weight, ORH=Oral Health, SLEP=Sleep, TOB=Tobacco. |
| year_end | integer | Latest year to include (e.g. 2023). Must be >= year_start. Defaults to all available years. |
| year_start | integer | Earliest year to include (e.g. 2020). Data ranges from ~2010 to 2023. Defaults to all available years. |
| question_id | string | Specific question ID to retrieve (e.g. "DIA01" for diabetes prevalence, "TOB04" for cigarette smoking, "CVD01" for high blood pressure). Combine with topic_id or use alone. |
| stratification_id | string | Stratification (demographic subgroup) ID. OVR=Overall (default aggregate), SEXF=Female, SEXM=Male, AGE1844=Age 18-44, AGE4564=Age 45-64, AGE65P=Age 65+, WHT=White non-Hispanic, BLK=Black non-Hispanic, HIS=Hispanic, ASN=Asian non-Hispanic, AIAN=American Indian/Alaska Native, HAPI=Native Hawaiian/Pacific Islander, MRC=Multiracial non-Hispanic. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Maximum number of indicator records to return (1–200, default 25)."
},
"location": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "US state abbreviation (e.g. \"CA\", \"TX\", \"NY\") or \"US\" for national-level data. Two-letter FIPS abbreviation."
},
"topic_id": {
"enum": [
"ALC",
"ART",
"AST",
"CAN",
"CHC",
"CKD",
"COPD",
"CVD",
"DIA",
"DIS",
"HEA",
"IMM",
"MAT",
"MEN",
"NMED",
"NPAW",
"ORH",
"SLEP",
"TOB"
],
"type": "string",
"description": "Topic ID to filter by. Options: ALC=Alcohol, ART=Arthritis, AST=Asthma, CAN=Cancer, CHC=Cognitive Health, CKD=Chronic Kidney Disease, COPD=COPD, CVD=Cardiovascular, DIA=Diabetes, DIS=Disability, HEA=Health Status, IMM=Immunization, MAT=Maternal Health, MEN=Mental Health, NMED=Non-Medical Factors, NPAW=Nutrition/Physical Activity/Weight, ORH=Oral Health, SLEP=Sleep, TOB=Tobacco."
},
"year_end": {
"type": "integer",
"maximum": 2030,
"minimum": 2010,
"description": "Latest year to include (e.g. 2023). Must be >= year_start. Defaults to all available years."
},
"year_start": {
"type": "integer",
"maximum": 2030,
"minimum": 2010,
"description": "Earliest year to include (e.g. 2020). Data ranges from ~2010 to 2023. Defaults to all available years."
},
"question_id": {
"type": "string",
"description": "Specific question ID to retrieve (e.g. \"DIA01\" for diabetes prevalence, \"TOB04\" for cigarette smoking, \"CVD01\" for high blood pressure). Combine with topic_id or use alone."
},
"stratification_id": {
"enum": [
"OVR",
"SEXF",
"SEXM",
"AGE0_44",
"AGE1844",
"AGE4564",
"AGE65P",
"WHT",
"BLK",
"HIS",
"ASN",
"AIAN",
"HAPI",
"MRC"
],
"type": "string",
"description": "Stratification (demographic subgroup) ID. OVR=Overall (default aggregate), SEXF=Female, SEXM=Male, AGE1844=Age 18-44, AGE4564=Age 45-64, AGE65P=Age 65+, WHT=White non-Hispanic, BLK=Black non-Hispanic, HIS=Hispanic, ASN=Asian non-Hispanic, AIAN=American Indian/Alaska Native, HAPI=Native Hawaiian/Pacific Islander, MRC=Multiracial non-Hispanic."
}
},
"additionalProperties": false
}Compare a chronic disease indicator across all US states for a given year. Returns the value for each state (prevalence %, rate, or count) plus the 5 highest and 5 lowest states for quick ranking. Requires a question_id (e.g. "DIA01" for diabetes prevalence, "TOB04" for smoking, "CVD01" for high blood pressure). Optional year (default most recent 2023) and demographic stratification. Useful for geographic health disparity analysis and policy research. Source: CDC CDI Socrata dataset hksd-2xuw. No auth — US Gov public domain.
| Argument | Type | Description |
|---|---|---|
| year | integer | Data year for comparison (e.g. 2023). Defaults to most recent available year (2023 or later). All states return the same year for a fair comparison. |
| question_id | string | Question ID to compare across states (e.g. "DIA01" for diabetes prevalence, "TOB04" for smoking, "CVD01" for high blood pressure, "AST01" for asthma prevalence). Use cdc_chronic.topics to find valid IDs. Defaults to "DIA01". |
| stratification_id | string | Demographic subgroup to compare. OVR=Overall (default, all adults), SEXF=Female, SEXM=Male, WHT=White non-Hispanic, BLK=Black non-Hispanic, HIS=Hispanic, AGE65P=Age 65+, etc. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"year": {
"type": "integer",
"maximum": 2030,
"minimum": 2010,
"description": "Data year for comparison (e.g. 2023). Defaults to most recent available year (2023 or later). All states return the same year for a fair comparison."
},
"question_id": {
"type": "string",
"description": "Question ID to compare across states (e.g. \"DIA01\" for diabetes prevalence, \"TOB04\" for smoking, \"CVD01\" for high blood pressure, \"AST01\" for asthma prevalence). Use cdc_chronic.topics to find valid IDs. Defaults to \"DIA01\"."
},
"stratification_id": {
"enum": [
"OVR",
"SEXF",
"SEXM",
"AGE0_44",
"AGE1844",
"AGE4564",
"AGE65P",
"WHT",
"BLK",
"HIS",
"ASN",
"AIAN",
"HAPI",
"MRC"
],
"type": "string",
"description": "Demographic subgroup to compare. OVR=Overall (default, all adults), SEXF=Female, SEXM=Male, WHT=White non-Hispanic, BLK=Black non-Hispanic, HIS=Hispanic, AGE65P=Age 65+, etc."
}
},
"additionalProperties": false
}List all available chronic disease topics and their associated indicator questions in the CDC CDI dataset. Returns topic IDs (e.g. DIA=Diabetes, CVD=Cardiovascular, TOB=Tobacco) and question IDs (e.g. DIA01=Diabetes prevalence, TOB04=Cigarette smoking, CVD01=High blood pressure) needed for other cdc_chronic tools. Optionally filter to a single topic. 19 topics, 100+ indicator questions. Source: CDC CDI Socrata dataset hksd-2xuw. No auth — US Gov public domain.
| Argument | Type | Description |
|---|---|---|
| topic_id | string | Filter by a single topic to see only its questions. Omit to list all 19 topics with their questions. Options: ALC=Alcohol, ART=Arthritis, AST=Asthma, CAN=Cancer, CHC=Cognitive Health, CKD=Chronic Kidney Disease, COPD=COPD, CVD=Cardiovascular, DIA=Diabetes, DIS=Disability, HEA=Health Status, IMM=Immunization, MAT=Maternal Health, MEN=Mental Health, NMED=Non-Medical Factors, NPAW=Nutrition/Physical Activity/Weight, ORH=Oral Health, SLEP=Sleep, TOB=Tobacco. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"topic_id": {
"enum": [
"ALC",
"ART",
"AST",
"CAN",
"CHC",
"CKD",
"COPD",
"CVD",
"DIA",
"DIS",
"HEA",
"IMM",
"MAT",
"MEN",
"NMED",
"NPAW",
"ORH",
"SLEP",
"TOB"
],
"type": "string",
"description": "Filter by a single topic to see only its questions. Omit to list all 19 topics with their questions. Options: ALC=Alcohol, ART=Arthritis, AST=Asthma, CAN=Cancer, CHC=Cognitive Health, CKD=Chronic Kidney Disease, COPD=COPD, CVD=Cardiovascular, DIA=Diabetes, DIS=Disability, HEA=Health Status, IMM=Immunization, MAT=Maternal Health, MEN=Mental Health, NMED=Non-Medical Factors, NPAW=Nutrition/Physical Activity/Weight, ORH=Oral Health, SLEP=Sleep, TOB=Tobacco."
}
},
"additionalProperties": false
}Retrieve multi-year trend data for a specific chronic disease indicator at the national or state level. Returns annual values with confidence intervals so you can track how a metric changes over time (e.g. declining smoking rates, rising obesity, improving diabetes control). Filter by question ID, location (state abbreviation or "US" for national), demographic subgroup, and value type (crude prevalence, age-adjusted prevalence, rate per 100K, number). Data from ~2010 to 2023. Source: CDC CDI Socrata dataset hksd-2xuw. No auth — US Gov public domain.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of annual data points to return (1–50, default 20). Returns most recent years first. |
| location | string | US state abbreviation (e.g. "CA", "TX", "FL") or "US" for national trend. Defaults to "US" for national-level data. |
| question_id | string | Question ID to retrieve trend data for (e.g. "TOB04" for cigarette smoking, "DIA01" for diabetes, "CVD01" for high blood pressure, "CAN01" for cancer screening). Use cdc_chronic.topics to find valid IDs. Defaults to "TOB04". |
| value_type_id | string | Data value type to filter on. CRDPREV=Crude Prevalence (%, unadjusted), AGEADJPREV=Age-adjusted Prevalence (%, adjusted), NMBR=Number (absolute count), CRDRATE=Crude Rate (per 100K), AGEADJRATE=Age-adjusted Rate (per 100K), PCT=Percentage. |
| stratification_id | string | Demographic subgroup for trend. OVR=Overall, SEXF=Female, SEXM=Male, BLK=Black non-Hispanic, HIS=Hispanic, etc. Omit for all subgroups. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of annual data points to return (1–50, default 20). Returns most recent years first."
},
"location": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "US state abbreviation (e.g. \"CA\", \"TX\", \"FL\") or \"US\" for national trend. Defaults to \"US\" for national-level data."
},
"question_id": {
"type": "string",
"description": "Question ID to retrieve trend data for (e.g. \"TOB04\" for cigarette smoking, \"DIA01\" for diabetes, \"CVD01\" for high blood pressure, \"CAN01\" for cancer screening). Use cdc_chronic.topics to find valid IDs. Defaults to \"TOB04\"."
},
"value_type_id": {
"enum": [
"CRDPREV",
"AGEADJPREV",
"NMBR",
"CRDRATE",
"AGEADJRATE",
"PCT"
],
"type": "string",
"description": "Data value type to filter on. CRDPREV=Crude Prevalence (%, unadjusted), AGEADJPREV=Age-adjusted Prevalence (%, adjusted), NMBR=Number (absolute count), CRDRATE=Crude Rate (per 100K), AGEADJRATE=Age-adjusted Rate (per 100K), PCT=Percentage."
},
"stratification_id": {
"enum": [
"OVR",
"SEXF",
"SEXM",
"AGE0_44",
"AGE1844",
"AGE4564",
"AGE65P",
"WHT",
"BLK",
"HIS",
"ASN",
"AIAN",
"HAPI",
"MRC"
],
"type": "string",
"description": "Demographic subgroup for trend. OVR=Overall, SEXF=Female, SEXM=Male, BLK=Black non-Hispanic, HIS=Hispanic, etc. Omit for all subgroups."
}
},
"additionalProperties": false
}Retrieve TLE orbital element sets for an entire predefined satellite group from CelesTrak. Returns all satellites in the group with NORAD catalog number, international designator, epoch, and full orbital parameters. Supported groups: "stations" (ISS, CSS, Tiangong), "starlink" (SpaceX constellation ~6000 sats), "active" (all active satellites ~7000), "gps-ops" (GPS operational), "glo-ops" (GLONASS), "galileo" (EU), "beidou" (Chinese), "weather" (all weather satellites), "noaa" (NOAA series), "goes" (GOES geostationary weather), "geo" (all geostationary), "amateur" (amateur radio), "cubesat" (CubeSats), "last-30-days" (recent launches), "iridium", "iridium-NEXT", "globalstar", "orbcomm", "oneweb", "intelsat", "ses", "planet", "spire". Data from US Space Force, no auth required.
| Argument | Type | Description |
|---|---|---|
| group* | string | Predefined satellite group. Key groups: "stations" (ISS, CSS, Tiangong), "starlink" (SpaceX Starlink ~6000 sats), "active" (all active satellites ~7000), "gps-ops" (GPS operational), "glo-ops" (GLONASS), "galileo" (EU Galileo), "beidou" (Chinese BeiDou), "weather" (weather satellites), "noaa" (NOAA weather), "goes" (GOES geostationary weather), "geo" (all geostationary), "amateur" (amateur radio), "cubesat" (CubeSats), "last-30-days" (recent launches), "starlink", "oneweb", "iridium", "iridium-NEXT", "globalstar", "orbcomm", "intelsat", "ses", "planet", "spire", "sarsat", "dmc", "tdrss", "argos", "resource", "analyst". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"group"
],
"properties": {
"group": {
"enum": [
"stations",
"weather",
"noaa",
"goes",
"resource",
"sarsat",
"dmc",
"tdrss",
"argos",
"planet",
"spire",
"geo",
"intelsat",
"ses",
"iridium",
"iridium-NEXT",
"starlink",
"oneweb",
"orbcomm",
"globalstar",
"amateur",
"cubesat",
"other",
"last-30-days",
"active",
"analyst",
"gps-ops",
"glo-ops",
"galileo",
"beidou",
"sbas"
],
"type": "string",
"description": "Predefined satellite group. Key groups: \"stations\" (ISS, CSS, Tiangong), \"starlink\" (SpaceX Starlink ~6000 sats), \"active\" (all active satellites ~7000), \"gps-ops\" (GPS operational), \"glo-ops\" (GLONASS), \"galileo\" (EU Galileo), \"beidou\" (Chinese BeiDou), \"weather\" (weather satellites), \"noaa\" (NOAA weather), \"goes\" (GOES geostationary weather), \"geo\" (all geostationary), \"amateur\" (amateur radio), \"cubesat\" (CubeSats), \"last-30-days\" (recent launches), \"starlink\", \"oneweb\", \"iridium\", \"iridium-NEXT\", \"globalstar\", \"orbcomm\", \"intelsat\", \"ses\", \"planet\", \"spire\", \"sarsat\", \"dmc\", \"tdrss\", \"argos\", \"resource\", \"analyst\"."
}
},
"additionalProperties": false
}Look up satellite orbital elements using the international designator (COSPAR ID / Harvard designation). Returns orbital element sets for all objects associated with the designator: primary payload (suffix A), rocket body (B), and debris fragments (C onward). Format is YYYY-NNNX where YYYY=launch year, NNN=launch number of year (zero-padded to 3 digits), X=piece letter. Examples: "1998-067A" (ISS ZARYA module launched 1998, 67th launch, primary payload), "1990-037B" (Hubble Space Telescope), "2019-029B" (Starlink batch 1 rocket body). Useful when you know the mission designator but not the NORAD catalog number. Data from US Space Force via CelesTrak.
| Argument | Type | Description |
|---|---|---|
| intdes* | string | International designator (COSPAR ID) for the launch or object. Format: YYYY-NNNX where YYYY is launch year, NNN is launch number of that year (3 digits), and X is the piece letter (A=primary payload). Examples: "1998-067A" (ISS ZARYA module), "1990-037B" (Hubble Space Telescope), "2019-029B" (Starlink batch 1). The suffix letter distinguishes primary payload (A), rocket body (B), debris (C onward). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"intdes"
],
"properties": {
"intdes": {
"type": "string",
"description": "International designator (COSPAR ID) for the launch or object. Format: YYYY-NNNX where YYYY is launch year, NNN is launch number of that year (3 digits), and X is the piece letter (A=primary payload). Examples: \"1998-067A\" (ISS ZARYA module), \"1990-037B\" (Hubble Space Telescope), \"2019-029B\" (Starlink batch 1). The suffix letter distinguishes primary payload (A), rocket body (B), debris (C onward)."
}
},
"additionalProperties": false
}Search the NORAD satellite catalog by name substring (case-insensitive). Returns all satellites whose name contains the query string, each with NORAD catalog number, international designator (COSPAR ID), epoch, and full orbital element set. Useful for finding the NORAD IDs and TLEs of satellites by operator or mission name (e.g. "STARLINK" returns all ~6000 Starlink satellites, "NOAA" returns NOAA weather sats, "GPS" returns GPS block satellites, "FENGYUN" returns Chinese weather satellites, "ISS" returns ISS modules). Data from US Space Force via CelesTrak, no auth required.
| Argument | Type | Description |
|---|---|---|
| name* | string | Satellite name substring to search (case-insensitive). Examples: "ISS", "STARLINK", "GPS", "NOAA", "GOES", "HUBBLE", "FENGYUN". Returns all satellites whose name contains this string. Minimum 2 characters. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"minLength": 2,
"description": "Satellite name substring to search (case-insensitive). Examples: \"ISS\", \"STARLINK\", \"GPS\", \"NOAA\", \"GOES\", \"HUBBLE\", \"FENGYUN\". Returns all satellites whose name contains this string. Minimum 2 characters."
}
},
"additionalProperties": false
}Retrieve the current Two-Line Element (TLE) orbital data for a specific satellite using its NORAD catalog number. Returns the full GP (General Perturbations) element set: epoch, inclination, RAAN, eccentricity, argument of perigee, mean anomaly, mean motion (revolutions/day), B* drag coefficient, and computed orbital period in minutes. Data is sourced from the US Space Force 18th Space Control Squadron via CelesTrak. Useful for orbital mechanics calculations, satellite pass predictions, and tracking any of the 27,000+ catalogued space objects. Popular NORAD IDs: 25544 (ISS), 20580 (Hubble), 33591 (NOAA-18).
| Argument | Type | Description |
|---|---|---|
| catnr* | string | number | NORAD catalog number (satellite ID). Examples: 25544 (ISS), 20580 (Hubble Space Telescope), 48274 (Starlink-1007). Integer between 1 and 99999. Obtain from celestrak.satellite.search or celestrak.satellite.group. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"catnr"
],
"properties": {
"catnr": {
"type": [
"string",
"number"
],
"description": "NORAD catalog number (satellite ID). Examples: 25544 (ISS), 20580 (Hubble Space Telescope), 48274 (Starlink-1007). Integer between 1 and 99999. Obtain from celestrak.satellite.search or celestrak.satellite.group."
}
},
"additionalProperties": false
}Get demographic composition for any US geography — median age, race (white/Black/Asian), Hispanic/Latino population, and bachelor's degree attainment. Source: ACS 5-year estimates (US Census Bureau). Useful for market research, policy analysis, and neighborhood profiling.
| Argument | Type | Description |
|---|---|---|
| year | integer | Survey year (default 2022). ACS 5-year estimates available 2010-2022. |
| state_fips* | string | US state FIPS code (e.g. 06 for California, 36 for New York, * for all states) |
| county_fips | string | County FIPS code within the state (e.g. 037 for Los Angeles, * for all counties). Omit for state-level data. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"state_fips"
],
"properties": {
"year": {
"type": "integer",
"maximum": 2023,
"minimum": 2010,
"description": "Survey year (default 2022). ACS 5-year estimates available 2010-2022."
},
"state_fips": {
"type": "string",
"maxLength": 2,
"minLength": 1,
"description": "US state FIPS code (e.g. 06 for California, 36 for New York, * for all states)"
},
"county_fips": {
"type": "string",
"description": "County FIPS code within the state (e.g. 037 for Los Angeles, * for all counties). Omit for state-level data."
}
},
"additionalProperties": false
}Get economic indicators for any US geography — median household income, population in poverty, and unemployed count. Source: ACS 5-year estimates (US Census Bureau). Key data for market sizing, real estate analysis, and business location intelligence.
| Argument | Type | Description |
|---|---|---|
| year | integer | Survey year (default 2022). ACS 5-year estimates available 2010-2022. |
| state_fips* | string | US state FIPS code (e.g. 06 for California, 36 for New York, * for all states) |
| county_fips | string | County FIPS code within the state (e.g. 037 for Los Angeles, * for all counties). Omit for state-level data. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"state_fips"
],
"properties": {
"year": {
"type": "integer",
"maximum": 2023,
"minimum": 2010,
"description": "Survey year (default 2022). ACS 5-year estimates available 2010-2022."
},
"state_fips": {
"type": "string",
"maxLength": 2,
"minLength": 1,
"description": "US state FIPS code (e.g. 06 for California, 36 for New York, * for all states)"
},
"county_fips": {
"type": "string",
"description": "County FIPS code within the state (e.g. 037 for Los Angeles, * for all counties). Omit for state-level data."
}
},
"additionalProperties": false
}Get housing statistics for any US geography — total units, median home value, median rent, owner-occupied vs renter-occupied counts. Source: ACS 5-year estimates (US Census Bureau). Essential for real estate agents, property valuations, and housing market analysis.
| Argument | Type | Description |
|---|---|---|
| year | integer | Survey year (default 2022). ACS 5-year estimates available 2010-2022. |
| state_fips* | string | US state FIPS code (e.g. 06 for California, 36 for New York, * for all states) |
| county_fips | string | County FIPS code within the state (e.g. 037 for Los Angeles, * for all counties). Omit for state-level data. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"state_fips"
],
"properties": {
"year": {
"type": "integer",
"maximum": 2023,
"minimum": 2010,
"description": "Survey year (default 2022). ACS 5-year estimates available 2010-2022."
},
"state_fips": {
"type": "string",
"maxLength": 2,
"minLength": 1,
"description": "US state FIPS code (e.g. 06 for California, 36 for New York, * for all states)"
},
"county_fips": {
"type": "string",
"description": "County FIPS code within the state (e.g. 037 for Los Angeles, * for all counties). Omit for state-level data."
}
},
"additionalProperties": false
}Get population counts for any US geography by FIPS code — total, male, female. Covers all 50 states, 3,000+ counties, and sub-county areas. Source: American Community Survey 5-year estimates (US Census Bureau). Public domain, updated annually.
| Argument | Type | Description |
|---|---|---|
| year | integer | Survey year (default 2022). ACS 5-year estimates available 2010-2022. |
| state_fips* | string | US state FIPS code (e.g. 06 for California, 36 for New York, * for all states) |
| county_fips | string | County FIPS code within the state (e.g. 037 for Los Angeles, * for all counties). Omit for state-level data. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"state_fips"
],
"properties": {
"year": {
"type": "integer",
"maximum": 2023,
"minimum": 2010,
"description": "Survey year (default 2022). ACS 5-year estimates available 2010-2022."
},
"state_fips": {
"type": "string",
"maxLength": 2,
"minLength": 1,
"description": "US state FIPS code (e.g. 06 for California, 36 for New York, * for all states)"
},
"county_fips": {
"type": "string",
"description": "County FIPS code within the state (e.g. 037 for Los Angeles, * for all counties). Omit for state-level data."
}
},
"additionalProperties": false
}Fetch Canadian census values (Statistics Canada) for chosen regions and census vectors, aggregated at a geographic level (province, CMA, census division, subdivision, tract, dissemination area). Returns one row per geography with a column per vector plus population, dwellings and area. Source: Statistics Canada Census; quota 500 region ids/day.
| Argument | Type | Description |
|---|---|---|
| level* | string | Geographic aggregation level of the returned rows: Regions (the listed regions themselves), PR, CMA, CD, CSD, CT, DA or DB |
| dataset* | string | Census dataset id from censusmapper.list_datasets (e.g. "CA21", "CA16", "CA11") |
| regions* | object | Census regions to query, keyed by level with arrays of region ids (e.g. {"CMA":["35535"]} for Toronto, {"PR":["35"]} for Ontario) |
| vectors* | array | Census vector ids to return (e.g. ["v_CA21_1","v_CA21_6"] = population 2021, 2016) |
| max_rows | integer | Maximum number of rows to return (1-1000, default 200) |
| geo_hierarchy | boolean | Include the parent geography hierarchy columns in each row (default false) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"dataset",
"level",
"regions",
"vectors"
],
"properties": {
"level": {
"enum": [
"Regions",
"PR",
"CMA",
"CD",
"CSD",
"CT",
"DA",
"DB"
],
"type": "string",
"description": "Geographic aggregation level of the returned rows: Regions (the listed regions themselves), PR, CMA, CD, CSD, CT, DA or DB"
},
"dataset": {
"type": "string",
"pattern": "^[A-Za-z0-9_]+$",
"maxLength": 20,
"minLength": 1,
"description": "Census dataset id from censusmapper.list_datasets (e.g. \"CA21\", \"CA16\", \"CA11\")"
},
"regions": {
"type": "object",
"description": "Census regions to query, keyed by level with arrays of region ids (e.g. {\"CMA\":[\"35535\"]} for Toronto, {\"PR\":[\"35\"]} for Ontario)",
"additionalProperties": {
"type": "array",
"items": {
"type": "string",
"maxLength": 20,
"minLength": 1
},
"maxItems": 20,
"minItems": 1
}
},
"vectors": {
"type": "array",
"items": {
"type": "string",
"pattern": "^v_[A-Za-z0-9]+_\\d+$"
},
"maxItems": 20,
"minItems": 1,
"description": "Census vector ids to return (e.g. [\"v_CA21_1\",\"v_CA21_6\"] = population 2021, 2016)"
},
"max_rows": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Maximum number of rows to return (1-1000, default 200)"
},
"geo_hierarchy": {
"type": "boolean",
"description": "Include the parent geography hierarchy columns in each row (default false)"
}
},
"additionalProperties": false
}List the Canadian census datasets available through CensusMapper (1996 to 2021 Statistics Canada censuses) with their dataset ids, descriptions and references. Use the dataset id with censusmapper.data. Source: Statistics Canada.
| Argument | Type | Description |
|---|---|---|
| query | string | Case-insensitive text filter over dataset id and description (e.g. "2021") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"query": {
"type": "string",
"maxLength": 50,
"description": "Case-insensitive text filter over dataset id and description (e.g. \"2021\")"
}
},
"additionalProperties": false
}Browse and filter CERN Open Data collision and simulated datasets by experiment, publication year, collision energy, and keyword. Returns only records of type Dataset (66,000+ datasets). Useful for finding specific NanoAOD or MiniAOD simulation samples, real collision data, or derived datasets for a given LHC run period. LHC Run 1 data: 2010–2012 at 7–8 TeV; Run 2 data: 2015–2016 at 13 TeV. Experiments: CMS (57K+), ALICE (171), ATLAS (184), LHCb (7K+), DELPHI (12K+). Supports pagination for large result sets.
| Argument | Type | Description |
|---|---|---|
| q | string | Keyword filter within datasets (e.g. "NanoAOD", "MiniAOD", "Higgs") |
| page | integer | Page number for pagination (default 1) |
| year | string | Filter by publication year (e.g. "2015", "2016", "2012"). LHC Run 1: 2010–2013, Run 2: 2015–2016. |
| limit | integer | Number of datasets to return (1–25, default 10) |
| experiment | string | Filter by CERN experiment. CMS has 57K+ datasets, LHCb has 7K+, DELPHI has 12K+. |
| collision_energy | string | Filter by collision energy (e.g. "13TeV", "8TeV", "7TeV"). Run 2 used 13 TeV, Run 1 used 7–8 TeV. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"q": {
"type": "string",
"description": "Keyword filter within datasets (e.g. \"NanoAOD\", \"MiniAOD\", \"Higgs\")"
},
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)"
},
"year": {
"type": "string",
"description": "Filter by publication year (e.g. \"2015\", \"2016\", \"2012\"). LHC Run 1: 2010–2013, Run 2: 2015–2016."
},
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Number of datasets to return (1–25, default 10)"
},
"experiment": {
"enum": [
"CMS",
"ATLAS",
"ALICE",
"LHCb",
"DELPHI",
"JADE",
"OPERA",
"TOTEM",
"PHENIX"
],
"type": "string",
"description": "Filter by CERN experiment. CMS has 57K+ datasets, LHCb has 7K+, DELPHI has 12K+."
},
"collision_energy": {
"type": "string",
"description": "Filter by collision energy (e.g. \"13TeV\", \"8TeV\", \"7TeV\"). Run 2 used 13 TeV, Run 1 used 7–8 TeV."
}
},
"additionalProperties": false
}Look up particle physics and high-energy physics (HEP) terms from the CERN Open Data glossary of 1,000+ terms. Returns matching entries with the term name, all known aliases/synonyms, a plain-text definition, category (generic, cms, etc.), related terms (see_also), and Wikipedia/external links. Ideal for AI agents that need to explain or understand HEP concepts like "quark", "hadron", "luminosity", "trigger", "AOD", "CMSSW", "jet", "b-tagging", or any other particle physics terminology.
| Argument | Type | Description |
|---|---|---|
| term* | string | Physics term to look up in the HEP glossary (e.g. "quark", "hadron", "luminosity", "jet", "muon") |
| limit | integer | Maximum number of matching terms to return (1–25, default 10) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"term"
],
"properties": {
"term": {
"type": "string",
"description": "Physics term to look up in the HEP glossary (e.g. \"quark\", \"hadron\", \"luminosity\", \"jet\", \"muon\")"
},
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Maximum number of matching terms to return (1–25, default 10)"
}
},
"additionalProperties": false
}Fetch full metadata for a specific CERN Open Data record by its ID. Returns complete details: title, type, experiment, publication date, abstract (HTML stripped), collections, availability, collision energy and type, accelerator, authors with ORCIDs, file listing (up to 5 files with sizes and EOS URIs), keywords, license, run period, and external links. Use cernopendata.records.search or cernopendata.datasets.browse to discover record IDs. IDs can be numeric (e.g. "5209") or string anchors for glossary terms (e.g. "AOD"). Most datasets are CC0 or CC-BY licensed.
| Argument | Type | Description |
|---|---|---|
| id* | string | Record ID from CERN Open Data portal (e.g. "5209", "50", "AOD"). Numeric for datasets/docs, string anchors for glossary terms. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Record ID from CERN Open Data portal (e.g. \"5209\", \"50\", \"AOD\"). Numeric for datasets/docs, string anchors for glossary terms."
}
},
"additionalProperties": false
}Search 80,000+ particle physics records from the CERN Open Data portal, covering CMS, ATLAS, ALICE, LHCb, and legacy experiments. Filter by record type (Dataset, Documentation, Software, Supplementaries), experiment, and keyword. Each record includes title, type, experiment, publication date, availability, collision energy, abstract snippet, and collections. Supports pagination. Free, no auth required. Records include collision and simulated datasets in NanoAOD/MiniAOD/AOD format, plus educational resources, software, and documentation from the Large Hadron Collider era.
| Argument | Type | Description |
|---|---|---|
| q | string | Full-text search query (e.g. "higgs boson", "dark matter", "Z boson decay") |
| page | integer | Page number for pagination (default 1) |
| type | string | Filter by record type: Dataset (collision/simulated data), Documentation, Software, Supplementaries, Environment, Glossary, News |
| limit | integer | Number of results to return (1–25, default 10) |
| experiment | string | Filter by CERN experiment (e.g. CMS, ATLAS, ALICE, LHCb). CMS has the most open data. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"q": {
"type": "string",
"description": "Full-text search query (e.g. \"higgs boson\", \"dark matter\", \"Z boson decay\")"
},
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)"
},
"type": {
"enum": [
"Dataset",
"Documentation",
"Software",
"Supplementaries",
"Environment",
"Glossary",
"News"
],
"type": "string",
"description": "Filter by record type: Dataset (collision/simulated data), Documentation, Software, Supplementaries, Environment, Glossary, News"
},
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Number of results to return (1–25, default 10)"
},
"experiment": {
"enum": [
"CMS",
"ATLAS",
"ALICE",
"LHCb",
"DELPHI",
"JADE",
"OPERA",
"TOTEM",
"PHENIX"
],
"type": "string",
"description": "Filter by CERN experiment (e.g. CMS, ATLAS, ALICE, LHCb). CMS has the most open data."
}
},
"additionalProperties": false
}Get per-US-state consumer complaint counts from the CFPB complaint database, with each state's top complaint products and issues, optionally filtered by date range, product, or company. Useful for geographic analysis of consumer financial complaints. Data: consumerfinance.gov (CFPB), no auth required.
| Argument | Type | Description |
|---|---|---|
| company | string | Exact registered company name as CFPB records it, typically uppercase with legal suffix (e.g. "EQUIFAX, INC.", "WELLS FARGO & COMPANY", "BANK OF AMERICA, NATIONAL ASSOCIATION"). A near-miss silently returns 0 results rather than an error. |
| product | string | Exact CFPB product category — must match verbatim, e.g. "Credit reporting or other personal consumer reports", "Debt collection", "Mortgage", "Checking or savings account", "Credit card", "Credit card or prepaid card", "Money transfer, virtual currency, or money service", "Student loan", "Vehicle loan or lease", "Payday loan, title loan, personal loan, or advance loan", "Prepaid card". A near-miss (e.g. wrong wording) silently returns 0 results rather than an error. |
| date_received_max | string | Only count complaints received on/before this date, format YYYY-MM-DD. |
| date_received_min | string | Only count complaints received on/after this date, format YYYY-MM-DD. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"company": {
"type": "string",
"description": "Exact registered company name as CFPB records it, typically uppercase with legal suffix (e.g. \"EQUIFAX, INC.\", \"WELLS FARGO & COMPANY\", \"BANK OF AMERICA, NATIONAL ASSOCIATION\"). A near-miss silently returns 0 results rather than an error."
},
"product": {
"type": "string",
"description": "Exact CFPB product category — must match verbatim, e.g. \"Credit reporting or other personal consumer reports\", \"Debt collection\", \"Mortgage\", \"Checking or savings account\", \"Credit card\", \"Credit card or prepaid card\", \"Money transfer, virtual currency, or money service\", \"Student loan\", \"Vehicle loan or lease\", \"Payday loan, title loan, personal loan, or advance loan\", \"Prepaid card\". A near-miss (e.g. wrong wording) silently returns 0 results rather than an error."
},
"date_received_max": {
"type": "string",
"description": "Only count complaints received on/before this date, format YYYY-MM-DD."
},
"date_received_min": {
"type": "string",
"description": "Only count complaints received on/after this date, format YYYY-MM-DD."
}
},
"additionalProperties": false
}Search the US Consumer Financial Protection Bureau public complaint database of 17M+ consumer complaints against financial companies (banks, credit reporting agencies, debt collectors, lenders). Filter by product, company, US state, issue, company response, timeliness, whether a narrative was provided, and date range, or full-text search consumer narratives. Returns complaint records with product/issue category, company, state, dates, and company response. Data: consumerfinance.gov (CFPB), no auth required.
| Argument | Type | Description |
|---|---|---|
| frm | integer | Offset for pagination, i.e. skip this many results (default 0). |
| size | integer | Number of complaints to return, 1-100 (default 10). |
| sort | string | Result ordering (default "created_date_desc"). |
| field | string | Which field `search_term` searches: "complaint_what_happened" (consumer narrative text, default) or "all" (all indexed text fields). |
| issue | string | Exact CFPB issue category — must match verbatim, e.g. "Incorrect information on your report", "Attempts to collect debt not owed", "Managing an account", "Written notification about debt". A near-miss silently returns 0 results rather than an error. |
| state | string | Two-letter US state or territory postal abbreviation (e.g. "CA", "NY", "PR"). |
| timely | string | Whether the company responded to the complaint in a timely manner. |
| company | string | Exact registered company name as CFPB records it, typically uppercase with legal suffix (e.g. "EQUIFAX, INC.", "WELLS FARGO & COMPANY", "BANK OF AMERICA, NATIONAL ASSOCIATION"). A near-miss silently returns 0 results rather than an error. |
| product | string | Exact CFPB product category — must match verbatim, e.g. "Credit reporting or other personal consumer reports", "Debt collection", "Mortgage", "Checking or savings account", "Credit card", "Credit card or prepaid card", "Money transfer, virtual currency, or money service", "Student loan", "Vehicle loan or lease", "Payday loan, title loan, personal loan, or advance loan", "Prepaid card". A near-miss (e.g. wrong wording) silently returns 0 results rather than an error. |
| search_term | string | Full-text search query (e.g. "overdraft fee", "credit report error"). Searched against the field named by `field`. |
| has_narrative | boolean | Only return complaints that include (true) or omit (false) a consumer narrative. |
| company_response | string | How the company responded to the complaint. |
| date_received_max | string | Only complaints received on/before this date, format YYYY-MM-DD. |
| date_received_min | string | Only complaints received on/after this date, format YYYY-MM-DD. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"frm": {
"type": "integer",
"maximum": 9900,
"minimum": 0,
"description": "Offset for pagination, i.e. skip this many results (default 0)."
},
"size": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of complaints to return, 1-100 (default 10)."
},
"sort": {
"enum": [
"relevance_desc",
"relevance_asc",
"created_date_desc",
"created_date_asc"
],
"type": "string",
"description": "Result ordering (default \"created_date_desc\")."
},
"field": {
"enum": [
"complaint_what_happened",
"all"
],
"type": "string",
"description": "Which field `search_term` searches: \"complaint_what_happened\" (consumer narrative text, default) or \"all\" (all indexed text fields)."
},
"issue": {
"type": "string",
"description": "Exact CFPB issue category — must match verbatim, e.g. \"Incorrect information on your report\", \"Attempts to collect debt not owed\", \"Managing an account\", \"Written notification about debt\". A near-miss silently returns 0 results rather than an error."
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Two-letter US state or territory postal abbreviation (e.g. \"CA\", \"NY\", \"PR\")."
},
"timely": {
"enum": [
"Yes",
"No"
],
"type": "string",
"description": "Whether the company responded to the complaint in a timely manner."
},
"company": {
"type": "string",
"description": "Exact registered company name as CFPB records it, typically uppercase with legal suffix (e.g. \"EQUIFAX, INC.\", \"WELLS FARGO & COMPANY\", \"BANK OF AMERICA, NATIONAL ASSOCIATION\"). A near-miss silently returns 0 results rather than an error."
},
"product": {
"type": "string",
"description": "Exact CFPB product category — must match verbatim, e.g. \"Credit reporting or other personal consumer reports\", \"Debt collection\", \"Mortgage\", \"Checking or savings account\", \"Credit card\", \"Credit card or prepaid card\", \"Money transfer, virtual currency, or money service\", \"Student loan\", \"Vehicle loan or lease\", \"Payday loan, title loan, personal loan, or advance loan\", \"Prepaid card\". A near-miss (e.g. wrong wording) silently returns 0 results rather than an error."
},
"search_term": {
"type": "string",
"description": "Full-text search query (e.g. \"overdraft fee\", \"credit report error\"). Searched against the field named by `field`."
},
"has_narrative": {
"type": "boolean",
"description": "Only return complaints that include (true) or omit (false) a consumer narrative."
},
"company_response": {
"enum": [
"Closed with explanation",
"Closed with non-monetary relief",
"Closed with monetary relief",
"Closed with relief",
"Closed without relief",
"In progress",
"Untimely response",
"Closed"
],
"type": "string",
"description": "How the company responded to the complaint."
},
"date_received_max": {
"type": "string",
"description": "Only complaints received on/before this date, format YYYY-MM-DD."
},
"date_received_min": {
"type": "string",
"description": "Only complaints received on/after this date, format YYYY-MM-DD."
}
},
"additionalProperties": false
}Get the time-series trend of CFPB consumer complaint volume — weekly, monthly, or yearly buckets — optionally filtered by product, company, or US state, and optionally broken down (e.g. by sub-product or issue when a lens is specified). Useful for spotting spikes in complaints against a company or product over time. Data: consumerfinance.gov (CFPB), no auth required.
| Argument | Type | Description |
|---|---|---|
| lens | string | Trend breakdown dimension (default "overview" — total volume only, no `sub_lens` needed). "product"/"issue"/"company" require `sub_lens` to be set, or upstream returns a 422 listing the valid sub-lens choices for that lens. |
| state | string | Two-letter US state or territory postal abbreviation (e.g. "CA", "NY", "PR"). |
| company | string | Exact registered company name as CFPB records it, typically uppercase with legal suffix (e.g. "EQUIFAX, INC.", "WELLS FARGO & COMPANY", "BANK OF AMERICA, NATIONAL ASSOCIATION"). A near-miss silently returns 0 results rather than an error. |
| product | string | Exact CFPB product category — must match verbatim, e.g. "Credit reporting or other personal consumer reports", "Debt collection", "Mortgage", "Checking or savings account", "Credit card", "Credit card or prepaid card", "Money transfer, virtual currency, or money service", "Student loan", "Vehicle loan or lease", "Payday loan, title loan, personal loan, or advance loan", "Prepaid card". A near-miss (e.g. wrong wording) silently returns 0 results rather than an error. |
| date_max | string | End of the date range, format YYYY-MM-DD. |
| date_min | string | Start of the date range, format YYYY-MM-DD. |
| sub_lens | string | Secondary breakdown required when `lens` is not "overview". Valid per lens: product→(sub_product, issue, company, tags); issue→(product, sub_issue, company, tags); company→(product, issue, tags). |
| trend_interval | string | Time bucket size for the trend series (default "month"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"lens": {
"enum": [
"overview",
"product",
"issue",
"company"
],
"type": "string",
"description": "Trend breakdown dimension (default \"overview\" — total volume only, no `sub_lens` needed). \"product\"/\"issue\"/\"company\" require `sub_lens` to be set, or upstream returns a 422 listing the valid sub-lens choices for that lens."
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Two-letter US state or territory postal abbreviation (e.g. \"CA\", \"NY\", \"PR\")."
},
"company": {
"type": "string",
"description": "Exact registered company name as CFPB records it, typically uppercase with legal suffix (e.g. \"EQUIFAX, INC.\", \"WELLS FARGO & COMPANY\", \"BANK OF AMERICA, NATIONAL ASSOCIATION\"). A near-miss silently returns 0 results rather than an error."
},
"product": {
"type": "string",
"description": "Exact CFPB product category — must match verbatim, e.g. \"Credit reporting or other personal consumer reports\", \"Debt collection\", \"Mortgage\", \"Checking or savings account\", \"Credit card\", \"Credit card or prepaid card\", \"Money transfer, virtual currency, or money service\", \"Student loan\", \"Vehicle loan or lease\", \"Payday loan, title loan, personal loan, or advance loan\", \"Prepaid card\". A near-miss (e.g. wrong wording) silently returns 0 results rather than an error."
},
"date_max": {
"type": "string",
"description": "End of the date range, format YYYY-MM-DD."
},
"date_min": {
"type": "string",
"description": "Start of the date range, format YYYY-MM-DD."
},
"sub_lens": {
"enum": [
"sub_product",
"issue",
"sub_issue",
"company",
"tags",
"product"
],
"type": "string",
"description": "Secondary breakdown required when `lens` is not \"overview\". Valid per lens: product→(sub_product, issue, company, tags); issue→(product, sub_issue, company, tags); company→(product, issue, tags)."
},
"trend_interval": {
"enum": [
"week",
"month",
"year"
],
"type": "string",
"description": "Time bucket size for the trend series (default \"month\")."
}
},
"additionalProperties": false
}⚡ ACTION: Generate a chart image (PNG) from data — bar, line, pie, doughnut, radar, scatter. Returns a permanent image URL. Combine with data tools (climate.co2, census.population, finance.exchange_rates) to visualize any dataset. Powered by QuickChart (Chart.js).
| Argument | Type | Description |
|---|---|---|
| type* | string | Chart type: bar, line, pie, doughnut, radar, scatter, horizontalBar |
| title | string | Chart title displayed at top |
| width | integer | Image width in pixels (100-1000, default 500) |
| height | integer | Image height in pixels (100-1000, default 300) |
| labels* | array | X-axis labels (e.g. ["Q1", "Q2", "Q3", "Q4"]) |
| datasets* | array | One or more datasets to plot |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"type",
"labels",
"datasets"
],
"properties": {
"type": {
"enum": [
"bar",
"line",
"pie",
"doughnut",
"radar",
"scatter",
"horizontalBar"
],
"type": "string",
"description": "Chart type: bar, line, pie, doughnut, radar, scatter, horizontalBar"
},
"title": {
"type": "string",
"description": "Chart title displayed at top"
},
"width": {
"type": "integer",
"maximum": 1000,
"minimum": 100,
"description": "Image width in pixels (100-1000, default 500)"
},
"height": {
"type": "integer",
"maximum": 1000,
"minimum": 100,
"description": "Image height in pixels (100-1000, default 300)"
},
"labels": {
"type": "array",
"items": {
"type": "string"
},
"description": "X-axis labels (e.g. [\"Q1\", \"Q2\", \"Q3\", \"Q4\"])"
},
"datasets": {
"type": "array",
"items": {
"type": "object",
"required": [
"label",
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "number"
},
"description": "Array of numeric values"
},
"label": {
"type": "string",
"description": "Dataset label (e.g. \"Revenue\", \"Temperature\")"
}
},
"additionalProperties": false
},
"minItems": 1,
"description": "One or more datasets to plot"
}
},
"additionalProperties": false
}Get current METAR for one or more airports as fully decoded JSON — wind (direction/speed/gust as separate fields), visibility (in SM and meters), sky conditions (cloud coverage + altitude as objects), temperature/dewpoint (°C and °F), altimeter (inHg and hPa), flight category (VFR/MVFR/IFR/LIFR). Saves agents from parsing raw METAR text.
| Argument | Type | Description |
|---|---|---|
| icao_codes* | string | Comma-separated ICAO airport codes (uppercase 4 letters). Max 25 per call. Examples: 'KJFK,EGLL,RJTT', 'KSFO', 'EDDF'. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"icao_codes"
],
"properties": {
"icao_codes": {
"type": "string",
"description": "Comma-separated ICAO airport codes (uppercase 4 letters). Max 25 per call. Examples: 'KJFK,EGLL,RJTT', 'KSFO', 'EDDF'."
}
},
"additionalProperties": false
}Airport/weather-station metadata by ICAO — name, IATA, latitude/longitude/elevation, country, city, time zone, runway info (count, longest length, surface).
| Argument | Type | Description |
|---|---|---|
| icao_code* | string | Single ICAO airport/station code (4-letter uppercase). Examples: 'KJFK', 'EGLL', 'RJTT'. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"icao_code"
],
"properties": {
"icao_code": {
"type": "string",
"description": "Single ICAO airport/station code (4-letter uppercase). Examples: 'KJFK', 'EGLL', 'RJTT'."
}
},
"additionalProperties": false
}Decoded TAF forecast for airports — issued time, valid window, per-period forecast objects (wind, visibility, weather conditions, sky). Each forecast change block parsed into structured JSON.
| Argument | Type | Description |
|---|---|---|
| icao_codes* | string | Comma-separated ICAO airport codes (uppercase 4 letters). Max 25 per call. Examples: 'KJFK,EGLL,RJTT', 'KSFO', 'EDDF'. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"icao_codes"
],
"properties": {
"icao_codes": {
"type": "string",
"description": "Comma-separated ICAO airport codes (uppercase 4 letters). Max 25 per call. Examples: 'KJFK,EGLL,RJTT', 'KSFO', 'EDDF'."
}
},
"additionalProperties": false
}Retrieve bioactivity data (potency measurements) for a drug molecule or biological target from ChEMBL's curated assay database. Returns activity type (IC50, Ki, EC50, Kd, MIC, GI50), measured value and units, relation operator (<, =, >), pChEMBL value (−log10 molar, comparable across assay types), assay ChEMBL ID, assay description, and source document ChEMBL ID. Filter by activity_type (e.g. "IC50") to focus on one measurement class. Requires at least one of: molecule_chembl_id (compound-centric) or target_chembl_id (target-centric, all inhibitors). ChEMBL contains 20M+ curated bioactivity measurements from scientific literature. Source: EMBL-EBI ChEMBL — CC BY-SA 3.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of activity records to return (1–25, default 10). |
| activity_type | string | Filter by activity measurement type. Common values: IC50 (inhibitor concentration 50%), Ki (inhibition constant), EC50 (effective concentration 50%), Kd (dissociation constant), MIC (minimum inhibitory concentration), GI50 (growth inhibition 50%). Case-sensitive; use uppercase. |
| target_chembl_id | string | ChEMBL target ID to retrieve bioactivity data for (e.g. CHEMBL220 for Acetylcholinesterase). Returns activity measurements from all tested compounds against this target. Provide at least one of molecule_chembl_id or target_chembl_id. |
| molecule_chembl_id | string | ChEMBL molecule ID to retrieve bioactivity data for (e.g. CHEMBL25). Returns all assay measurements for this compound. Provide at least one of molecule_chembl_id or target_chembl_id. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"default": 10,
"maximum": 25,
"minimum": 1,
"description": "Number of activity records to return (1–25, default 10)."
},
"activity_type": {
"type": "string",
"description": "Filter by activity measurement type. Common values: IC50 (inhibitor concentration 50%), Ki (inhibition constant), EC50 (effective concentration 50%), Kd (dissociation constant), MIC (minimum inhibitory concentration), GI50 (growth inhibition 50%). Case-sensitive; use uppercase."
},
"target_chembl_id": {
"type": "string",
"description": "ChEMBL target ID to retrieve bioactivity data for (e.g. CHEMBL220 for Acetylcholinesterase). Returns activity measurements from all tested compounds against this target. Provide at least one of molecule_chembl_id or target_chembl_id."
},
"molecule_chembl_id": {
"type": "string",
"description": "ChEMBL molecule ID to retrieve bioactivity data for (e.g. CHEMBL25). Returns all assay measurements for this compound. Provide at least one of molecule_chembl_id or target_chembl_id."
}
},
"additionalProperties": false
}Retrieve full structural and pharmacological data for a specific ChEMBL molecule. Returns canonical SMILES, standard InChI, InChIKey, molecular formula, exact weight, ALogP, polar surface area, hydrogen bond count, QED drug-likeness score (0–1), Lipinski rule-of-5 violations, black box warning flag, natural product flag, clinical phase (max_phase), first approval year, ATC codes, and administration routes. Use chembl.molecules.search to discover ChEMBL IDs (format: CHEMBL25, CHEMBL521). Source: EMBL-EBI ChEMBL — CC BY-SA 3.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| chembl_id* | string | ChEMBL molecule identifier (e.g. CHEMBL25 for aspirin, CHEMBL521 for ibuprofen). Use chembl.molecule.search to find IDs by name. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"chembl_id"
],
"properties": {
"chembl_id": {
"type": "string",
"description": "ChEMBL molecule identifier (e.g. CHEMBL25 for aspirin, CHEMBL521 for ibuprofen). Use chembl.molecule.search to find IDs by name."
}
},
"additionalProperties": false
}Search the ChEMBL database for drug molecules and bioactive compounds by name, clinical development phase, and molecular type. Returns molecular formula, molecular weight, lipophilicity (ALogP), hydrogen bond donors/acceptors, polar surface area, Lipinski rule-of-5 violations, canonical SMILES structure, InChIKey, oral/parenteral/topical flags, ATC classification codes, and clinical approval year. max_phase=4 for approved drugs, max_phase_gte=3 for late-stage candidates. ChEMBL covers 2.9M+ molecules sourced from 88K+ peer-reviewed publications. Source: EMBL-EBI ChEMBL — CC BY-SA 3.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of results to return (1–25, default 10). |
| query | string | Drug or molecule name to search (case-insensitive substring match). Examples: "aspirin", "ibuprofen", "paclitaxel". Omit to browse all molecules with other filters applied. |
| max_phase | integer | Exact clinical development phase filter. 0 = preclinical, 1 = Phase I, 2 = Phase II, 3 = Phase III, 4 = approved/marketed. Use max_phase_gte for "at least" filtering. |
| max_phase_gte | integer | Minimum clinical development phase. max_phase_gte=4 returns only approved drugs. max_phase_gte=3 returns Phase III and approved drugs. |
| molecule_type | string | Filter by molecule type. Small molecule covers most traditional drugs. Protein/Antibody covers biologics. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"default": 10,
"maximum": 25,
"minimum": 1,
"description": "Number of results to return (1–25, default 10)."
},
"query": {
"type": "string",
"description": "Drug or molecule name to search (case-insensitive substring match). Examples: \"aspirin\", \"ibuprofen\", \"paclitaxel\". Omit to browse all molecules with other filters applied."
},
"max_phase": {
"type": "integer",
"maximum": 4,
"minimum": 0,
"description": "Exact clinical development phase filter. 0 = preclinical, 1 = Phase I, 2 = Phase II, 3 = Phase III, 4 = approved/marketed. Use max_phase_gte for \"at least\" filtering."
},
"max_phase_gte": {
"type": "integer",
"maximum": 4,
"minimum": 0,
"description": "Minimum clinical development phase. max_phase_gte=4 returns only approved drugs. max_phase_gte=3 returns Phase III and approved drugs."
},
"molecule_type": {
"enum": [
"Small molecule",
"Protein",
"Antibody",
"Oligosaccharide",
"Oligonucleotide",
"Cell",
"Enzyme",
"Unknown"
],
"type": "string",
"description": "Filter by molecule type. Small molecule covers most traditional drugs. Protein/Antibody covers biologics."
}
},
"additionalProperties": false
}Search for biological drug targets (proteins, enzymes, receptors, ion channels) in the ChEMBL database by name, target type, and source organism. Returns target ChEMBL ID, preferred name, target classification (SINGLE PROTEIN, PROTEIN COMPLEX, PROTEIN FAMILY, etc.), organism, UniProt accession numbers, and gene symbols. Use returned target_chembl_id with chembl.activity.bioactivity to retrieve all compounds tested against a target and their potency values. ChEMBL covers 18,500+ targets from 650+ organisms. Source: EMBL-EBI ChEMBL — CC BY-SA 3.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of results to return (1–25, default 10). |
| query | string | Biological target name to search (case-insensitive substring match). Examples: "Acetylcholinesterase", "Epidermal growth factor receptor", "COX-2". Omit to browse with other filters. |
| organism | string | Filter by source organism (case-insensitive substring match). Examples: "Homo sapiens", "Rattus norvegicus", "Escherichia coli". |
| target_type | string | Filter by target classification. SINGLE PROTEIN is the most common for drug targets. PROTEIN COMPLEX for multi-subunit targets. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"default": 10,
"maximum": 25,
"minimum": 1,
"description": "Number of results to return (1–25, default 10)."
},
"query": {
"type": "string",
"description": "Biological target name to search (case-insensitive substring match). Examples: \"Acetylcholinesterase\", \"Epidermal growth factor receptor\", \"COX-2\". Omit to browse with other filters."
},
"organism": {
"type": "string",
"description": "Filter by source organism (case-insensitive substring match). Examples: \"Homo sapiens\", \"Rattus norvegicus\", \"Escherichia coli\"."
},
"target_type": {
"enum": [
"SINGLE PROTEIN",
"PROTEIN COMPLEX",
"PROTEIN FAMILY",
"NUCLEIC-ACID",
"CELL-LINE",
"TISSUE",
"ORGANISM",
"UNKNOWN"
],
"type": "string",
"description": "Filter by target classification. SINGLE PROTEIN is the most common for drug targets. PROTEIN COMPLEX for multi-subunit targets."
}
},
"additionalProperties": false
}Get bioactivity assay results for a compound — active/inactive counts, tested targets, assay types. Shows how the compound performed in biological tests across thousands of assays (PubChem / NCBI)
| Argument | Type | Description |
|---|---|---|
| cid* | integer | PubChem Compound ID (CID) — returns bioactivity assay results (active/inactive counts, targets) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"cid"
],
"properties": {
"cid": {
"type": "integer",
"description": "PubChem Compound ID (CID) — returns bioactivity assay results (active/inactive counts, targets)"
}
},
"additionalProperties": false
}Get GHS (Globally Harmonized System) hazard classification for a compound — signal words (Danger/Warning), hazard statements (H-codes), precautionary statements (P-codes), pictograms. Essential for chemical safety assessments (PubChem / NCBI)
| Argument | Type | Description |
|---|---|---|
| cid* | integer | PubChem Compound ID (CID) — returns GHS hazard classification, pictograms, signal words |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"cid"
],
"properties": {
"cid": {
"type": "integer",
"description": "PubChem Compound ID (CID) — returns GHS hazard classification, pictograms, signal words"
}
},
"additionalProperties": false
}Get full physical and chemical properties for a compound by PubChem CID — molecular formula, weight, SMILES, InChI, InChIKey, XLogP, H-bond donors/acceptors, exact mass, topological polar surface area, complexity, charge, heavy atom count (PubChem / NCBI)
| Argument | Type | Description |
|---|---|---|
| cid* | integer | PubChem Compound ID (CID) — get from compound_search results |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"cid"
],
"properties": {
"cid": {
"type": "integer",
"description": "PubChem Compound ID (CID) — get from compound_search results"
}
},
"additionalProperties": false
}Search 100M+ chemical compounds by name, formula, or SMILES string. Returns CID, molecular formula, weight, IUPAC name, SMILES, InChI, XLogP, H-bond donors/acceptors, exact mass, and complexity. The largest public chemical database (PubChem / NCBI)
| Argument | Type | Description |
|---|---|---|
| name* | string | Compound name, formula, or SMILES string (e.g. "aspirin", "C9H8O4", "CC(=O)OC1=CC=CC=C1C(=O)O") |
| limit | integer | Maximum results to return (1-20, default 5) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Compound name, formula, or SMILES string (e.g. \"aspirin\", \"C9H8O4\", \"CC(=O)OC1=CC=CC=C1C(=O)O\")"
},
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Maximum results to return (1-20, default 5)"
}
},
"additionalProperties": false
}Look up a compound by name or identifier and get its chemical structure representations — SMILES (isomeric + canonical), InChI, InChIKey, molecular formula, and molecular weight. Convert between chemical identifier formats (PubChem / NCBI)
| Argument | Type | Description |
|---|---|---|
| name* | string | Compound name or identifier (e.g. "caffeine", "50-78-2") — returns SMILES, InChI, InChIKey, formula |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Compound name or identifier (e.g. \"caffeine\", \"50-78-2\") — returns SMILES, InChI, InChIKey, formula"
}
},
"additionalProperties": false
}Get all known names, CAS registry numbers, trade names, and identifiers for a chemical compound by PubChem CID. Returns up to 50 synonyms from a database of millions of name variants (PubChem / NCBI)
| Argument | Type | Description |
|---|---|---|
| cid* | integer | PubChem Compound ID (CID) — returns all known names, CAS numbers, trade names |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"cid"
],
"properties": {
"cid": {
"type": "integer",
"description": "PubChem Compound ID (CID) — returns all known names, CAS numbers, trade names"
}
},
"additionalProperties": false
}Get a Chess.com player's profile — username, country, title (GM/IM/FM), join date, online status, followers, league. Distinct from Lichess: Chess.com is the world's largest chess platform with 100M+ users.
| Argument | Type | Description |
|---|---|---|
| username* | string | Chess.com username (3–25 characters; lowercase letters, digits, hyphens, and underscores only). Example: "hikaru", "magnuscarlsen". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"username"
],
"properties": {
"username": {
"type": "string",
"maxLength": 25,
"minLength": 3,
"description": "Chess.com username (3–25 characters; lowercase letters, digits, hyphens, and underscores only). Example: \"hikaru\", \"magnuscarlsen\"."
}
},
"additionalProperties": false
}Get a Chess.com player's rating + record across all time controls (rapid, blitz, bullet, daily, daily960, tactics, lessons, puzzle_rush). Returns highest rating, current rating, win/loss/draw counts.
| Argument | Type | Description |
|---|---|---|
| username* | string | Chess.com username (3–25 characters; lowercase letters, digits, hyphens, and underscores only). Example: "hikaru", "magnuscarlsen". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"username"
],
"properties": {
"username": {
"type": "string",
"maxLength": 25,
"minLength": 3,
"description": "Chess.com username (3–25 characters; lowercase letters, digits, hyphens, and underscores only). Example: \"hikaru\", \"magnuscarlsen\"."
}
},
"additionalProperties": false
}List all titled players on Chess.com by title (GM, WGM, IM, WIM, FM, WFM, NM, WNM, CM, WCM). Returns array of usernames.
| Argument | Type | Description |
|---|---|---|
| title* | string | Official chess title to filter by. GM = Grandmaster, WGM = Woman Grandmaster, IM = International Master, WIM = Woman International Master, FM = FIDE Master, WFM = Woman FIDE Master, NM = National Master, WNM = Woman National Master, CM = Candidate Master, WCM = Woman Candidate Master. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"title"
],
"properties": {
"title": {
"enum": [
"GM",
"WGM",
"IM",
"WIM",
"FM",
"WFM",
"NM",
"WNM",
"CM",
"WCM"
],
"type": "string",
"description": "Official chess title to filter by. GM = Grandmaster, WGM = Woman Grandmaster, IM = International Master, WIM = Woman International Master, FM = FIDE Master, WFM = Woman FIDE Master, NM = National Master, WNM = Woman National Master, CM = Candidate Master, WCM = Woman Candidate Master."
}
},
"additionalProperties": false
}Arctic sea ice extent from NSIDC — monthly measurements in million km² since 1979. Tracks long-term decline in Arctic ice coverage. Returns last 10 years by default. Source: National Snow and Ice Data Center.
| Argument | Type | Description |
|---|---|---|
| years | integer | Number of years of data to return (1-50, default 10). Data is monthly. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"years": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of years of data to return (1-50, default 10). Data is monthly."
}
},
"additionalProperties": false
}Atmospheric CO2 concentration from NOAA Mauna Loa Observatory — the Keeling Curve. Monthly readings in ppm (parts per million) since 1958. Returns last 10 years by default. Source: NOAA ESRL.
| Argument | Type | Description |
|---|---|---|
| years | integer | Number of years of data to return (1-50, default 10). Data is monthly. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"years": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of years of data to return (1-50, default 10). Data is monthly."
}
},
"additionalProperties": false
}Atmospheric methane concentration from NOAA ESRL — monthly readings in ppb (parts per billion) since 1983. Methane is the second most important greenhouse gas after CO2. Returns last 10 years by default.
| Argument | Type | Description |
|---|---|---|
| years | integer | Number of years of data to return (1-50, default 10). Data is monthly. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"years": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of years of data to return (1-50, default 10). Data is monthly."
}
},
"additionalProperties": false
}Atmospheric nitrous oxide concentration from NOAA ESRL — monthly readings in ppb since 2001. N2O is a potent greenhouse gas with 273x the warming potential of CO2. Returns last 10 years by default.
| Argument | Type | Description |
|---|---|---|
| years | integer | Number of years of data to return (1-50, default 10). Data is monthly. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"years": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of years of data to return (1-50, default 10). Data is monthly."
}
},
"additionalProperties": false
}Global surface temperature anomaly from NASA GISS — monthly readings since 1880. Values in °C vs 1951-1980 baseline. Returns last 10 years by default (adjustable 1-50). Source: NASA Goddard Institute for Space Studies.
| Argument | Type | Description |
|---|---|---|
| years | integer | Number of years of data to return (1-50, default 10). Data is monthly. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"years": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of years of data to return (1-50, default 10). Data is monthly."
}
},
"additionalProperties": false
}Retrieve full details of a specific clinical trial by its NCT identifier (e.g. "NCT04368728"). Returns title, official title, status, sponsor, conditions, interventions, design info, enrollment, eligibility criteria (age/sex/health volunteer), primary and secondary outcomes, brief summary, and up to 10 study locations. Source: ClinicalTrials.gov v2 API (NIH, public domain).
| Argument | Type | Description |
|---|---|---|
| nct_id* | string | ClinicalTrials.gov registry identifier in NCT format (e.g. "NCT04368728", "NCT01454700"). Must start with "NCT" followed by 8 digits. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"nct_id"
],
"properties": {
"nct_id": {
"type": "string",
"pattern": "^NCT\\d{8}$",
"description": "ClinicalTrials.gov registry identifier in NCT format (e.g. \"NCT04368728\", \"NCT01454700\"). Must start with \"NCT\" followed by 8 digits."
}
},
"additionalProperties": false
}Find clinical trials currently open for enrollment (status=RECRUITING) for a given condition or drug. Optionally filter by phase (e.g. PHASE3 for large confirmatory trials). Returns NCT ID, title, phases, conditions, sponsor, enrollment target, and start/completion dates. Useful for patients or researchers seeking open studies. Source: ClinicalTrials.gov v2 (NIH, public domain).
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of recruiting trials to return (1–50). Default: 10. |
| phase | string | Restrict to a specific trial phase among recruiting studies. PHASE3 = large confirmatory trials; PHASE1 = early safety studies. |
| condition | string | Disease or condition to search for among currently recruiting trials (e.g. "lung cancer", "Alzheimer", "type 2 diabetes"). |
| intervention | string | Drug or intervention to search for among recruiting trials (e.g. "pembrolizumab", "mRNA vaccine", "gene therapy"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"default": 10,
"maximum": 50,
"minimum": 1,
"description": "Maximum number of recruiting trials to return (1–50). Default: 10."
},
"phase": {
"enum": [
"PHASE1",
"PHASE2",
"PHASE3",
"PHASE4",
"EARLY_PHASE1",
"NA"
],
"type": "string",
"description": "Restrict to a specific trial phase among recruiting studies. PHASE3 = large confirmatory trials; PHASE1 = early safety studies."
},
"condition": {
"type": "string",
"description": "Disease or condition to search for among currently recruiting trials (e.g. \"lung cancer\", \"Alzheimer\", \"type 2 diabetes\")."
},
"intervention": {
"type": "string",
"description": "Drug or intervention to search for among recruiting trials (e.g. \"pembrolizumab\", \"mRNA vaccine\", \"gene therapy\")."
}
},
"additionalProperties": false
}Search 400K+ clinical trials registered on ClinicalTrials.gov by condition, drug/intervention, sponsor, or keyword. Optionally filter by status (RECRUITING, COMPLETED, etc.) and phase (PHASE1–PHASE4). Returns NCT ID, title, status, phases, conditions, sponsor, enrollment, and start/completion dates. Supports pagination via page_token. Data from NIH US Gov (public domain).
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of results to return (1–50). Default: 10. |
| phase | string | Filter by clinical trial phase. PHASE1=safety, PHASE2=efficacy, PHASE3=confirmatory, PHASE4=post-market, NA=not applicable (e.g. observational studies). |
| status | string | Filter by overall trial status. Most useful values: "RECRUITING" (open enrollment), "COMPLETED" (finished), "ACTIVE_NOT_RECRUITING" (ongoing but closed to new participants). |
| keyword | string | Free-text keyword search across all text fields of the trial record (e.g. "immunotherapy", "biomarker", "phase 3 randomized"). |
| sponsor | string | Sponsor or organization name to search for (e.g. "Pfizer", "NIH", "Mayo Clinic"). Searches the lead sponsor field. |
| condition | string | Disease or condition to search for (e.g. "diabetes", "breast cancer", "COVID-19"). Searches the conditions field of registered trials. |
| page_token | string | Pagination token from a previous search response (next_page_token field). Omit for the first page. |
| intervention | string | Drug or intervention to search for (e.g. "aspirin", "metformin", "CAR T-cell therapy"). Searches the interventions field of registered trials. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"default": 10,
"maximum": 50,
"minimum": 1,
"description": "Maximum number of results to return (1–50). Default: 10."
},
"phase": {
"enum": [
"PHASE1",
"PHASE2",
"PHASE3",
"PHASE4",
"EARLY_PHASE1",
"NA"
],
"type": "string",
"description": "Filter by clinical trial phase. PHASE1=safety, PHASE2=efficacy, PHASE3=confirmatory, PHASE4=post-market, NA=not applicable (e.g. observational studies)."
},
"status": {
"enum": [
"RECRUITING",
"NOT_YET_RECRUITING",
"ACTIVE_NOT_RECRUITING",
"COMPLETED",
"TERMINATED",
"WITHDRAWN",
"SUSPENDED",
"UNKNOWN"
],
"type": "string",
"description": "Filter by overall trial status. Most useful values: \"RECRUITING\" (open enrollment), \"COMPLETED\" (finished), \"ACTIVE_NOT_RECRUITING\" (ongoing but closed to new participants)."
},
"keyword": {
"type": "string",
"description": "Free-text keyword search across all text fields of the trial record (e.g. \"immunotherapy\", \"biomarker\", \"phase 3 randomized\")."
},
"sponsor": {
"type": "string",
"description": "Sponsor or organization name to search for (e.g. \"Pfizer\", \"NIH\", \"Mayo Clinic\"). Searches the lead sponsor field."
},
"condition": {
"type": "string",
"description": "Disease or condition to search for (e.g. \"diabetes\", \"breast cancer\", \"COVID-19\"). Searches the conditions field of registered trials."
},
"page_token": {
"type": "string",
"description": "Pagination token from a previous search response (next_page_token field). Omit for the first page."
},
"intervention": {
"type": "string",
"description": "Drug or intervention to search for (e.g. \"aspirin\", \"metformin\", \"CAR T-cell therapy\"). Searches the interventions field of registered trials."
}
},
"additionalProperties": false
}Get current statistics for the ClinicalTrials.gov database: total registered studies count and average record size in bytes. Useful for understanding data scale before bulk queries. Source: ClinicalTrials.gov v2 /stats/size endpoint (NIH US Gov, public domain, unlimited access).
| Argument | Type | Description |
|---|---|---|
| dummy | string | Unused parameter — included for schema compatibility. Leave empty. Returns total study count and average record size from ClinicalTrials.gov. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"dummy": {
"type": "string",
"description": "Unused parameter — included for schema compatibility. Leave empty. Returns total study count and average record size from ClinicalTrials.gov."
}
},
"additionalProperties": false
}Search 7 500+ Medicare-certified dialysis (ESRD — End-Stage Renal Disease) facilities across the US with CMS 5-star quality ratings. Filter by state, city, ZIP code, facility name, and non-profit status. Returns CMS Certification Number (CCN), facility name, address, phone, profit/non-profit status, chain ownership flag, and 5-star quality rating from CMS ESRD Quality Incentive Program (QIP). Dialysis is required 3× per week for ESRD patients — finding a conveniently located, high-quality facility is critical for quality of life. Covers all DaVita, Fresenius, US Renal Care, and independent clinic locations. No auth — US Centers for Medicare & Medicaid Services public domain, unlimited free.
| Argument | Type | Description |
|---|---|---|
| city | string | City or town name to filter dialysis facilities (partial match). Example: "Atlanta", "Denver". |
| name | string | Partial facility name to search (case-insensitive substring match). Example: "DaVita", "Fresenius", "Dialysis Center". |
| limit | integer | Maximum number of dialysis facilities to return (1–100, default 20). |
| state | string | Two-letter US state abbreviation to filter dialysis facilities (e.g. CA, FL, TX). |
| offset | integer | Number of results to skip for pagination (default 0). |
| zip_code | string | 5-digit US ZIP code to filter dialysis facilities. |
| nonprofit_only | boolean | When true, filter to only non-profit dialysis facilities. Non-profit facilities may have different care incentives vs. for-profit chains. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"city": {
"type": "string",
"description": "City or town name to filter dialysis facilities (partial match). Example: \"Atlanta\", \"Denver\"."
},
"name": {
"type": "string",
"description": "Partial facility name to search (case-insensitive substring match). Example: \"DaVita\", \"Fresenius\", \"Dialysis Center\"."
},
"limit": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1,
"description": "Maximum number of dialysis facilities to return (1–100, default 20)."
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Two-letter US state abbreviation to filter dialysis facilities (e.g. CA, FL, TX)."
},
"offset": {
"type": "integer",
"default": 0,
"minimum": 0,
"description": "Number of results to skip for pagination (default 0)."
},
"zip_code": {
"type": "string",
"description": "5-digit US ZIP code to filter dialysis facilities."
},
"nonprofit_only": {
"type": "boolean",
"description": "When true, filter to only non-profit dialysis facilities. Non-profit facilities may have different care incentives vs. for-profit chains."
}
},
"additionalProperties": false
}Search 12 300+ Medicare-certified home health agencies across the US providing skilled nursing, physical therapy, occupational therapy, and speech pathology services in patients' homes. Filter by state, city, ZIP code, agency name, and whether nursing care is offered. Returns CMS Certification Number (CCN), agency name, address, phone, ownership type, services offered (nursing, PT, OT), and CMS quality-of-patient-care star rating. Essential for patients transitioning from hospital to home, post-surgical recovery, or managing chronic conditions without nursing home admission. No auth — US Centers for Medicare & Medicaid Services public domain, unlimited free.
| Argument | Type | Description |
|---|---|---|
| city | string | City or town name to filter agencies (partial match). Example: "Houston", "Phoenix". |
| name | string | Partial agency name to search (case-insensitive substring match). Example: "Amedisys", "LHC Group", "Encompass". |
| limit | integer | Maximum number of agencies to return (1–100, default 20). |
| state | string | Two-letter US state abbreviation to filter home health agencies (e.g. TX, CA, NY). |
| offset | integer | Number of results to skip for pagination (default 0). |
| zip_code | string | 5-digit US ZIP code to filter home health agencies. |
| offers_nursing | boolean | When true, filter to only agencies that offer skilled nursing care services. Skilled nursing covers wound care, injections, IV therapy, and post-surgery monitoring. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"city": {
"type": "string",
"description": "City or town name to filter agencies (partial match). Example: \"Houston\", \"Phoenix\"."
},
"name": {
"type": "string",
"description": "Partial agency name to search (case-insensitive substring match). Example: \"Amedisys\", \"LHC Group\", \"Encompass\"."
},
"limit": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1,
"description": "Maximum number of agencies to return (1–100, default 20)."
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Two-letter US state abbreviation to filter home health agencies (e.g. TX, CA, NY)."
},
"offset": {
"type": "integer",
"default": 0,
"minimum": 0,
"description": "Number of results to skip for pagination (default 0)."
},
"zip_code": {
"type": "string",
"description": "5-digit US ZIP code to filter home health agencies."
},
"offers_nursing": {
"type": "boolean",
"description": "When true, filter to only agencies that offer skilled nursing care services. Skilled nursing covers wound care, injections, IV therapy, and post-surgery monitoring."
}
},
"additionalProperties": false
}Search 5 400+ US hospitals in the CMS Provider Data catalog with quality star ratings (1–5 stars). Filter by state, city, ZIP code, hospital name, hospital type (Acute Care, Critical Access, Childrens, Psychiatric, Rehabilitation), and minimum overall rating. Returns CMS Certification Number (CCN), facility name, address, phone, hospital type, ownership, emergency services flag, and overall star rating. Star ratings are composite scores from CMS Hospital Compare — 5 stars = top quality. Covers all Medicare/Medicaid-certified hospitals. No auth — US Centers for Medicare & Medicaid Services public domain, unlimited free.
| Argument | Type | Description |
|---|---|---|
| city | string | City or town name to filter hospitals (partial match, case-insensitive). Example: "Los Angeles", "Boston". |
| name | string | Partial hospital name to search (case-insensitive substring match). Example: "Memorial", "General Hospital", "St. Mary". |
| limit | integer | Maximum number of hospitals to return (1–100, default 20). |
| state | string | Two-letter US state abbreviation to filter hospitals (e.g. CA, NY, TX). Returns all hospitals in the state when specified. |
| offset | integer | Number of results to skip for pagination (default 0). |
| zip_code | string | 5-digit US ZIP code to filter hospitals by location. Example: "90210", "10001". |
| min_rating | integer | Minimum CMS Overall Hospital Star Rating (1–5 stars). Filter to only return hospitals with rating >= this value. Example: 4 returns 4-star and 5-star hospitals only. |
| hospital_type | string | Filter by hospital type classification. Most common: "Acute Care Hospitals" (general hospitals), "Critical Access Hospitals" (rural/small), "Childrens" (pediatric). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"city": {
"type": "string",
"description": "City or town name to filter hospitals (partial match, case-insensitive). Example: \"Los Angeles\", \"Boston\"."
},
"name": {
"type": "string",
"description": "Partial hospital name to search (case-insensitive substring match). Example: \"Memorial\", \"General Hospital\", \"St. Mary\"."
},
"limit": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1,
"description": "Maximum number of hospitals to return (1–100, default 20)."
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Two-letter US state abbreviation to filter hospitals (e.g. CA, NY, TX). Returns all hospitals in the state when specified."
},
"offset": {
"type": "integer",
"default": 0,
"minimum": 0,
"description": "Number of results to skip for pagination (default 0)."
},
"zip_code": {
"type": "string",
"description": "5-digit US ZIP code to filter hospitals by location. Example: \"90210\", \"10001\"."
},
"min_rating": {
"type": "integer",
"maximum": 5,
"minimum": 1,
"description": "Minimum CMS Overall Hospital Star Rating (1–5 stars). Filter to only return hospitals with rating >= this value. Example: 4 returns 4-star and 5-star hospitals only."
},
"hospital_type": {
"enum": [
"Acute Care Hospitals",
"Critical Access Hospitals",
"Childrens",
"Psychiatric",
"Rehabilitation",
"Long-Term Care"
],
"type": "string",
"description": "Filter by hospital type classification. Most common: \"Acute Care Hospitals\" (general hospitals), \"Critical Access Hospitals\" (rural/small), \"Childrens\" (pediatric)."
}
},
"additionalProperties": false
}Search 14 600+ Medicare/Medicaid-certified nursing homes and long-term care facilities in the US with CMS 5-star quality ratings. Filter by state, city, ZIP code, name, minimum overall rating, and ownership type (for-profit, non-profit, government). Returns CMS Certification Number (CCN), provider name, address, phone, ownership, certified bed count, and four separate quality ratings: overall (1–5 stars), health inspection, staffing, and quality measures. Star ratings help families compare nursing homes objectively for long-term care placement. No auth — US Centers for Medicare & Medicaid Services public domain, unlimited free.
| Argument | Type | Description |
|---|---|---|
| city | string | City or town name to filter nursing homes (partial match). Example: "Miami", "Chicago". |
| name | string | Partial nursing home name to search (case-insensitive substring match). Example: "Sunrise", "Brookdale", "Manor". |
| limit | integer | Maximum number of nursing homes to return (1–100, default 20). |
| state | string | Two-letter US state abbreviation to filter nursing homes (e.g. FL, CA, TX). |
| offset | integer | Number of results to skip for pagination (default 0). |
| zip_code | string | 5-digit US ZIP code to filter nursing homes by location. |
| min_rating | integer | Minimum CMS Overall Star Rating (1–5 stars). Higher ratings indicate better quality of care based on health inspections, staffing levels, and quality measures. |
| ownership_type | string | Filter by ownership type. Common values: "For profit - Corporation", "Non profit - Corporation", "Government - State", "Government - County", "For profit - Individual". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"city": {
"type": "string",
"description": "City or town name to filter nursing homes (partial match). Example: \"Miami\", \"Chicago\"."
},
"name": {
"type": "string",
"description": "Partial nursing home name to search (case-insensitive substring match). Example: \"Sunrise\", \"Brookdale\", \"Manor\"."
},
"limit": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1,
"description": "Maximum number of nursing homes to return (1–100, default 20)."
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Two-letter US state abbreviation to filter nursing homes (e.g. FL, CA, TX)."
},
"offset": {
"type": "integer",
"default": 0,
"minimum": 0,
"description": "Number of results to skip for pagination (default 0)."
},
"zip_code": {
"type": "string",
"description": "5-digit US ZIP code to filter nursing homes by location."
},
"min_rating": {
"type": "integer",
"maximum": 5,
"minimum": 1,
"description": "Minimum CMS Overall Star Rating (1–5 stars). Higher ratings indicate better quality of care based on health inspections, staffing levels, and quality measures."
},
"ownership_type": {
"type": "string",
"description": "Filter by ownership type. Common values: \"For profit - Corporation\", \"Non profit - Corporation\", \"Government - State\", \"Government - County\", \"For profit - Individual\"."
}
},
"additionalProperties": false
}List the immediate child taxa of a given taxon in the Catalogue of Life taxonomic tree. For example: pass the ID for a family to get its genera; pass a genus ID to list its species; pass an order ID to enumerate its families. Returns paginated results with up to 100 children per call, each including taxon ID, scientific name, rank, status, and higher classification. Use offset for pagination over large groups (e.g. Coleoptera has 400K+ species). Obtain the taxon_id from col.species.search or col.species.suggest. CC BY 4.0 — ~10 million taxa across all kingdoms including Animalia, Plantae, Fungi, Bacteria, Archaea, Protista, Chromista, and Viruses.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of child taxa to return (1–100, default 20). |
| offset | integer | Zero-based pagination offset for large genera with many species (default 0). |
| taxon_id* | string | Catalogue of Life usage ID of the parent taxon whose immediate children to list (e.g. the ID for a family returns its genera; a genus returns its species). Obtain from col.search or col.suggest results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"taxon_id"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of child taxa to return (1–100, default 20)."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Zero-based pagination offset for large genera with many species (default 0)."
},
"taxon_id": {
"type": "string",
"minLength": 1,
"description": "Catalogue of Life usage ID of the parent taxon whose immediate children to list (e.g. the ID for a family returns its genera; a genus returns its species). Obtain from col.search or col.suggest results."
}
},
"additionalProperties": false
}Retrieve full taxonomic details for a specific taxon in the Catalogue of Life by its COL usage ID. Returns scientific name with authorship, taxonomic rank, acceptance status, extinction flag, parent taxon ID, scrutinizer (the expert who verified the record), scrutinizer date, and an external link to the COL web page for the taxon. Unlike col.species.search, the detail record does not include full higher-classification breadcrumbs — use the parent_id to walk the tree or pass the scientific name to col.species.search with rank=KINGDOM/PHYLUM etc. to retrieve ancestors. Obtain the taxon_id from a prior col.species.search or col.species.suggest call.
| Argument | Type | Description |
|---|---|---|
| taxon_id* | string | Catalogue of Life usage ID for the taxon (e.g. "lom19ReAZMtfEGnM999rz1"). Obtain from col.search or col.suggest results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"taxon_id"
],
"properties": {
"taxon_id": {
"type": "string",
"minLength": 1,
"description": "Catalogue of Life usage ID for the taxon (e.g. \"lom19ReAZMtfEGnM999rz1\"). Obtain from col.search or col.suggest results."
}
},
"additionalProperties": false
}Search the Catalogue of Life (COL) for species, genera, families, and other taxa by scientific or common name. COL is the most comprehensive global index of known species, covering ~10 million extant and extinct taxa assembled from 600+ peer-reviewed checklists. Returns paginated results including taxon ID, scientific name with authorship, rank, taxonomic status (accepted/synonym), higher classification (kingdom through genus), and English vernacular names where available. Filter by taxonomic rank (SPECIES, GENUS, FAMILY, ORDER, CLASS, PHYLUM, KINGDOM) or status (accepted, synonym) to narrow results. Use the returned taxon ID with col.species.detail to retrieve full details, or col.species.children to list child taxa. Data is CC BY 4.0; cite as "Catalogue of Life (COL)" with the access date.
| Argument | Type | Description |
|---|---|---|
| rank | string | Restrict results to a specific taxonomic rank. One of: KINGDOM, PHYLUM, CLASS, ORDER, SUPERFAMILY, FAMILY, TRIBE, GENUS, SPECIES, SUBSPECIES, VARIETY, FORM. |
| limit | integer | Maximum number of results to return (1–50, default 10). |
| query* | string | Scientific or common name to search (e.g. "Homo sapiens", "Pinus sylvestris", "oak"). Partial names and genus-level queries are supported. |
| offset | integer | Zero-based pagination offset for retrieving additional result pages (default 0). |
| status | string | Filter by taxonomic status. Use "accepted" to return only currently accepted names, "synonym" for synonyms, or omit to return all. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"rank": {
"enum": [
"KINGDOM",
"PHYLUM",
"CLASS",
"ORDER",
"SUPERFAMILY",
"FAMILY",
"TRIBE",
"GENUS",
"SPECIES",
"SUBSPECIES",
"VARIETY",
"FORM"
],
"type": "string",
"description": "Restrict results to a specific taxonomic rank. One of: KINGDOM, PHYLUM, CLASS, ORDER, SUPERFAMILY, FAMILY, TRIBE, GENUS, SPECIES, SUBSPECIES, VARIETY, FORM."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of results to return (1–50, default 10)."
},
"query": {
"type": "string",
"minLength": 1,
"description": "Scientific or common name to search (e.g. \"Homo sapiens\", \"Pinus sylvestris\", \"oak\"). Partial names and genus-level queries are supported."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Zero-based pagination offset for retrieving additional result pages (default 0)."
},
"status": {
"enum": [
"accepted",
"synonym",
"ambiguous synonym",
"misapplied",
"provisionally accepted"
],
"type": "string",
"description": "Filter by taxonomic status. Use \"accepted\" to return only currently accepted names, \"synonym\" for synonyms, or omit to return all."
}
},
"additionalProperties": false
}Autocomplete a partial species or taxon name against the Catalogue of Life working draft, returning up to 25 ranked suggestions. Each suggestion includes the usage ID (for passing to col.species.detail or col.species.children), the matched name string, taxonomic rank, status (accepted/synonym), taxonomic group (e.g. "insects", "flowering plants", "birds"), higher-taxon context (e.g. "Hominidae"), and a human-readable suggestion string. Ideal for type-ahead name disambiguation in scientific workflows, species identification pipelines, or biodiversity data cleaning tasks. Optionally restrict suggestions to a specific rank (e.g. GENUS to return only genus-level matches).
| Argument | Type | Description |
|---|---|---|
| rank | string | Restrict suggestions to a specific taxonomic rank (e.g. SPECIES, GENUS, FAMILY). Omit to return suggestions across all ranks. |
| limit | integer | Maximum number of autocomplete suggestions to return (1–25, default 10). |
| query* | string | Partial or full name prefix for autocomplete (e.g. "Homo", "Pinus syl", "Pan tr"). Returns ranked suggestions from the COL working draft. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"rank": {
"enum": [
"KINGDOM",
"PHYLUM",
"CLASS",
"ORDER",
"SUPERFAMILY",
"FAMILY",
"TRIBE",
"GENUS",
"SPECIES",
"SUBSPECIES",
"VARIETY",
"FORM"
],
"type": "string",
"description": "Restrict suggestions to a specific taxonomic rank (e.g. SPECIES, GENUS, FAMILY). Omit to return suggestions across all ranks."
},
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Maximum number of autocomplete suggestions to return (1–25, default 10)."
},
"query": {
"type": "string",
"minLength": 1,
"description": "Partial or full name prefix for autocomplete (e.g. \"Homo\", \"Pinus syl\", \"Pan tr\"). Returns ranked suggestions from the COL working draft."
}
},
"additionalProperties": false
}List all countries and country groups that report trade statistics to UN Comtrade. Returns the UN numeric reporter code, country name, ISO-2 and ISO-3 alpha codes needed for other comtrade tools. Use the search parameter to filter by country name or ISO code. Use include_groups=false to exclude aggregate regions (EU, ASEAN, World). Over 280 reporters including individual countries and economic blocs. Source: UN Comtrade reference data, no auth, static file.
| Argument | Type | Description |
|---|---|---|
| search | string | Filter reporters by name or ISO code (case-insensitive substring match). Examples: "germany", "DEU", "united states". Omit to return all reporters. |
| include_groups | boolean | Include aggregate groups (e.g. "EU", "World") in results. Default true. Set to false to return only individual countries. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"search": {
"type": "string",
"description": "Filter reporters by name or ISO code (case-insensitive substring match). Examples: \"germany\", \"DEU\", \"united states\". Omit to return all reporters."
},
"include_groups": {
"type": "boolean",
"description": "Include aggregate groups (e.g. \"EU\", \"World\") in results. Default true. Set to false to return only individual countries."
}
},
"additionalProperties": false
}Check which trade datasets are available in UN Comtrade for a given reporter country and period. Returns dataset metadata including total record count, first/last release dates, and classification codes. Useful for discovering what data exists before querying comtrade.trade_data. Coverage varies by country — developed economies report more frequently and with fewer delays than others. Source: UN Comtrade public preview API, no auth.
| Argument | Type | Description |
|---|---|---|
| period | string | Filter by reference period. Annual: 4-digit year (e.g. "2022"). Monthly: YYYYMM (e.g. "202209"). Omit to list all available periods. |
| cmd_code | string | Filter by commodity code (e.g. "84", "TOTAL"). Omit for all commodities. |
| flow_code | string | Filter by trade flow: M=Imports, X=Exports, MX=Both. Omit for all flows. |
| freq_code | string | Frequency. A=Annual (default), M=Monthly. |
| type_code | string | Data type. C=Commodities (default), S=Services. |
| reporter_code | integer | UN numeric code for the reporting country to check. Omit to list all available reporters. Example: 276=Germany, 840=USA, 156=China. |
| classification | string | Classification system. HS=Harmonized System (default). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"period": {
"type": "string",
"description": "Filter by reference period. Annual: 4-digit year (e.g. \"2022\"). Monthly: YYYYMM (e.g. \"202209\"). Omit to list all available periods."
},
"cmd_code": {
"type": "string",
"description": "Filter by commodity code (e.g. \"84\", \"TOTAL\"). Omit for all commodities."
},
"flow_code": {
"enum": [
"M",
"X",
"MX",
"RM",
"RX"
],
"type": "string",
"description": "Filter by trade flow: M=Imports, X=Exports, MX=Both. Omit for all flows."
},
"freq_code": {
"enum": [
"A",
"M"
],
"type": "string",
"description": "Frequency. A=Annual (default), M=Monthly."
},
"type_code": {
"enum": [
"C",
"S"
],
"type": "string",
"description": "Data type. C=Commodities (default), S=Services."
},
"reporter_code": {
"type": "integer",
"description": "UN numeric code for the reporting country to check. Omit to list all available reporters. Example: 276=Germany, 840=USA, 156=China."
},
"classification": {
"enum": [
"HS",
"B4",
"B5",
"EB",
"S1",
"S2",
"S3",
"S4",
"SS"
],
"type": "string",
"description": "Classification system. HS=Harmonized System (default)."
}
},
"additionalProperties": false
}Retrieve methodological metadata for a UN Comtrade dataset: the reporting currency, USD conversion factors applied (import/export), trade system used (General vs Special trade), import/export valuation method (CIF vs FOB), partner country attribution rules, and publication notes. Essential for understanding how to interpret the trade values in comtrade.trade_data results. Each country reports using its own methodology and currency — this endpoint reveals those details. Source: UN Comtrade public preview API, no auth.
| Argument | Type | Description |
|---|---|---|
| period* | string | Reference period. Annual: 4-digit year (e.g. "2022"). Monthly: YYYYMM (e.g. "202209"). Returns currency conversion factors, trade system, valuation notes for this dataset. |
| freq_code | string | Frequency. A=Annual (default), M=Monthly. |
| type_code | string | Data type. C=Commodities (default), S=Services. |
| show_history | boolean | Include historical revisions in the metadata response. Default false (returns only the latest version). |
| reporter_code* | integer | UN numeric code for the reporting country. Example: 276=Germany, 840=USA, 156=China. Use comtrade.reporters to look up codes. |
| classification | string | Classification system. HS=Harmonized System (default). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"reporter_code",
"period"
],
"properties": {
"period": {
"type": "string",
"description": "Reference period. Annual: 4-digit year (e.g. \"2022\"). Monthly: YYYYMM (e.g. \"202209\"). Returns currency conversion factors, trade system, valuation notes for this dataset."
},
"freq_code": {
"enum": [
"A",
"M"
],
"type": "string",
"description": "Frequency. A=Annual (default), M=Monthly."
},
"type_code": {
"enum": [
"C",
"S"
],
"type": "string",
"description": "Data type. C=Commodities (default), S=Services."
},
"show_history": {
"type": "boolean",
"description": "Include historical revisions in the metadata response. Default false (returns only the latest version)."
},
"reporter_code": {
"type": "integer",
"description": "UN numeric code for the reporting country. Example: 276=Germany, 840=USA, 156=China. Use comtrade.reporters to look up codes."
},
"classification": {
"enum": [
"HS",
"B4",
"B5",
"EB",
"S1",
"S2",
"S3",
"S4",
"SS"
],
"type": "string",
"description": "Classification system. HS=Harmonized System (default)."
}
},
"additionalProperties": false
}Query international merchandise trade statistics from the UN Comtrade database. Returns up to 500 records of imports and/or exports for a specific reporting country, reference period, commodity code, and partner country. Data covers 200+ reporter countries from 1962 (annual) and 2010 (monthly). Values in USD (primary value), CIF for imports, FOB for exports. Commodities classified by Harmonized System (HS) or SITC. Use reporter_code from comtrade.reporters, HS chapter codes (e.g. "84" for machinery, "27" for petroleum, "85" for electronics), and flow_code M=imports, X=exports. Source: UN Comtrade public preview API, no auth, 500 calls/day free.
| Argument | Type | Description |
|---|---|---|
| period* | string | Reference period to query. Annual: 4-digit year (e.g. "2022"). Monthly: YYYYMM (e.g. "202209" for Sep 2022). Comma-separated for multiple periods (e.g. "2020,2021,2022"). |
| cmd_code | string | Commodity code filter. Use HS codes (e.g. "84" for machinery, "27" for petroleum, "TOTAL" for aggregate totals, "AG2" for all 2-digit chapters). Omit to return all commodities (may be large). Default: TOTAL. |
| flow_code* | string | Trade flow direction. M=Imports, X=Exports, MX=Both imports and exports, RM=Re-imports, RX=Re-exports. |
| freq_code | string | Frequency. A=Annual (default), M=Monthly. |
| type_code | string | Trade data type. C=Commodities (default), S=Services. |
| max_records | integer | Maximum number of records to return (1–500). Default 100. The public preview API is capped at 500 records per request. |
| aggregate_by | string | Aggregate results by a dimension. Valid values: "cmdCode", "flowCode", "partnerCode", "reporterCode", "period". Omit to return unaggregated records. |
| customs_code | string | Customs procedure code filter (e.g. "C00"=all procedures, "C03"=outright export, "C04"=warehousing). Omit for all procedures. |
| partner_code | integer | UN numeric code for the partner country. 0=World aggregate (all partners combined). Omit to return all individual partners. |
| partner2_code | integer | Secondary partner code for extended trade flow tracking (consignment country). 0=World aggregate. Omit to use the default world aggregate. |
| reporter_code* | integer | UN numeric code for the reporting country (e.g. 276=Germany, 840=USA, 156=China, 826=UK). Use comtrade.reporters to look up codes. |
| classification | string | Commodity classification system. HS=Harmonized System (default, most common). B4/B5=BEC, EB=EBOPS services, S1-S4/SS=SITC revisions. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"reporter_code",
"period",
"flow_code"
],
"properties": {
"period": {
"type": "string",
"description": "Reference period to query. Annual: 4-digit year (e.g. \"2022\"). Monthly: YYYYMM (e.g. \"202209\" for Sep 2022). Comma-separated for multiple periods (e.g. \"2020,2021,2022\")."
},
"cmd_code": {
"type": "string",
"description": "Commodity code filter. Use HS codes (e.g. \"84\" for machinery, \"27\" for petroleum, \"TOTAL\" for aggregate totals, \"AG2\" for all 2-digit chapters). Omit to return all commodities (may be large). Default: TOTAL."
},
"flow_code": {
"enum": [
"M",
"X",
"MX",
"RM",
"RX"
],
"type": "string",
"description": "Trade flow direction. M=Imports, X=Exports, MX=Both imports and exports, RM=Re-imports, RX=Re-exports."
},
"freq_code": {
"enum": [
"A",
"M"
],
"type": "string",
"description": "Frequency. A=Annual (default), M=Monthly."
},
"type_code": {
"enum": [
"C",
"S"
],
"type": "string",
"description": "Trade data type. C=Commodities (default), S=Services."
},
"max_records": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Maximum number of records to return (1–500). Default 100. The public preview API is capped at 500 records per request."
},
"aggregate_by": {
"type": "string",
"description": "Aggregate results by a dimension. Valid values: \"cmdCode\", \"flowCode\", \"partnerCode\", \"reporterCode\", \"period\". Omit to return unaggregated records."
},
"customs_code": {
"type": "string",
"description": "Customs procedure code filter (e.g. \"C00\"=all procedures, \"C03\"=outright export, \"C04\"=warehousing). Omit for all procedures."
},
"partner_code": {
"type": "integer",
"description": "UN numeric code for the partner country. 0=World aggregate (all partners combined). Omit to return all individual partners."
},
"partner2_code": {
"type": "integer",
"description": "Secondary partner code for extended trade flow tracking (consignment country). 0=World aggregate. Omit to use the default world aggregate."
},
"reporter_code": {
"type": "integer",
"description": "UN numeric code for the reporting country (e.g. 276=Germany, 840=USA, 156=China, 826=UK). Use comtrade.reporters to look up codes."
},
"classification": {
"enum": [
"HS",
"B4",
"B5",
"EB",
"S1",
"S2",
"S3",
"S4",
"SS"
],
"type": "string",
"description": "Commodity classification system. HS=Harmonized System (default, most common). B4/B5=BEC, EB=EBOPS services, S1-S4/SS=SITC revisions."
}
},
"additionalProperties": false
}Get full details for a specific US bill by Congress number, type (hr/s), and bill number. Returns title, all sponsors, co-sponsor count, action history, committee referrals, policy subjects. Source: Congress.gov.
| Argument | Type | Description |
|---|---|---|
| type* | string | Bill type: hr (House bill), s (Senate bill), hjres, sjres, etc. |
| number* | integer | Bill number (e.g. 1 for HR 1) |
| congress* | integer | Congress number (e.g. 119 for 2025-2026, 118 for 2023-2024) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"congress",
"type",
"number"
],
"properties": {
"type": {
"enum": [
"hr",
"s",
"hjres",
"sjres",
"hconres",
"sconres",
"hres",
"sres"
],
"type": "string",
"description": "Bill type: hr (House bill), s (Senate bill), hjres, sjres, etc."
},
"number": {
"type": "integer",
"minimum": 1,
"description": "Bill number (e.g. 1 for HR 1)"
},
"congress": {
"type": "integer",
"maximum": 119,
"minimum": 93,
"description": "Congress number (e.g. 119 for 2025-2026, 118 for 2023-2024)"
}
},
"additionalProperties": false
}Search US federal bills and resolutions from 1973 to present. Filter by Congress number (93-119), bill type (hr/s/hjres/sjres). Returns title, sponsor, party, latest action, policy area. Source: Congress.gov (Library of Congress).
| Argument | Type | Description |
|---|---|---|
| type | string | Bill type: hr (House), s (Senate), hjres, sjres, hconres, sconres, hres, sres |
| limit | integer | Number of results (1-25, default 10) |
| congress | integer | Congress number (93=1973 to 119=2025-2026). Default: current (119). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"type": {
"enum": [
"hr",
"s",
"hjres",
"sjres",
"hconres",
"sconres",
"hres",
"sres"
],
"type": "string",
"description": "Bill type: hr (House), s (Senate), hjres, sjres, hconres, sconres, hres, sres"
},
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Number of results (1-25, default 10)"
},
"congress": {
"type": "integer",
"maximum": 119,
"minimum": 93,
"description": "Congress number (93=1973 to 119=2025-2026). Default: current (119)."
}
},
"additionalProperties": false
}Search current and historical members of the US Congress. Filter by state, chamber (House/Senate), and Congress number. Returns name, party, state, district, bioguide ID. Source: Congress.gov.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of results (1-25, default 10) |
| state | string | US state code (e.g. CA, TX, NY) |
| chamber | string | Chamber: house or senate |
| congress | integer | Congress number. Default: current (119). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Number of results (1-25, default 10)"
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "US state code (e.g. CA, TX, NY)"
},
"chamber": {
"enum": [
"house",
"senate"
],
"type": "string",
"description": "Chamber: house or senate"
},
"congress": {
"type": "integer",
"maximum": 119,
"minimum": 93,
"description": "Congress number. Default: current (119)."
}
},
"additionalProperties": false
}Get observed meteorological data from a NOAA CO-OPS station. Supports five products: air_temperature (°F or °C), water_temperature (sea surface °F or °C), air_pressure (millibars), humidity (relative humidity %), and wind (speed and direction — available at select stations). Returns 6-minute interval readings for the specified date range (default: last 24 hours) plus the most recent reading for quick lookups. Note: not all stations have all sensors — if a product is unavailable at the requested station, the API returns an error. Try station 8443970 (Boston) for air_temperature, 9414290 (San Francisco) for water_temperature. Source: NOAA CO-OPS — tidesandcurrents.noaa.gov. No auth, US Gov public domain.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of recent readings to return (1–500). Readings are at 6-minute intervals. Defaults to 60 (last 6 hours). |
| units | string | Unit system: english = °F / knots / feet, metric = °C / m/s / meters. Defaults to english. |
| product | string | Meteorological product to retrieve. air_temperature = air temp in °F (or °C), water_temperature = sea surface temp, air_pressure = barometric pressure in mb, humidity = relative humidity %, wind = wind speed/direction. Not all stations have all sensors. Defaults to air_temperature. |
| end_date | string | End date for observations in YYYY-MM-DD or YYYYMMDD format (e.g. 2025-07-02). Defaults to today. Maximum range: 31 days. |
| begin_date | string | Start date for observations in YYYY-MM-DD or YYYYMMDD format (e.g. 2025-07-01). Defaults to yesterday. Maximum range: 31 days. |
| station_id* | string | NOAA CO-OPS station ID (4–7 digits, e.g. 8443970 for Boston MA). Find station IDs with the coops.tides.stations tool. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"station_id"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Maximum number of recent readings to return (1–500). Readings are at 6-minute intervals. Defaults to 60 (last 6 hours)."
},
"units": {
"enum": [
"english",
"metric"
],
"type": "string",
"description": "Unit system: english = °F / knots / feet, metric = °C / m/s / meters. Defaults to english."
},
"product": {
"enum": [
"air_temperature",
"water_temperature",
"air_pressure",
"humidity",
"wind"
],
"type": "string",
"description": "Meteorological product to retrieve. air_temperature = air temp in °F (or °C), water_temperature = sea surface temp, air_pressure = barometric pressure in mb, humidity = relative humidity %, wind = wind speed/direction. Not all stations have all sensors. Defaults to air_temperature."
},
"end_date": {
"type": "string",
"description": "End date for observations in YYYY-MM-DD or YYYYMMDD format (e.g. 2025-07-02). Defaults to today. Maximum range: 31 days."
},
"begin_date": {
"type": "string",
"description": "Start date for observations in YYYY-MM-DD or YYYYMMDD format (e.g. 2025-07-01). Defaults to yesterday. Maximum range: 31 days."
},
"station_id": {
"type": "string",
"description": "NOAA CO-OPS station ID (4–7 digits, e.g. 8443970 for Boston MA). Find station IDs with the coops.tides.stations tool."
}
},
"additionalProperties": false
}Get predicted high and low tide times and heights for any NOAA CO-OPS tide gauge station in the US, Puerto Rico, Pacific Islands, and Great Lakes. Returns a chronological list of high (H) and low (L) tides with UTC timestamps and water heights. Specify a station_id (e.g. 8443970 for Boston, 9414290 for San Francisco, 8518750 for New York) and optional date range (default: next 7 days). Datum defaults to MLLW (Mean Lower Low Water) — the reference datum used on NOAA nautical charts. Data is generated from harmonic tide predictions. Useful for sailing, fishing, coastal engineering, and flood planning. Source: NOAA Center for Operational Oceanographic Products and Services (CO-OPS) — tidesandcurrents.noaa.gov. No auth, US Gov public domain.
| Argument | Type | Description |
|---|---|---|
| datum | string | Vertical datum for water height measurements. MLLW (Mean Lower Low Water) is the chart datum used for nautical charts. MSL = Mean Sea Level. Defaults to MLLW. |
| limit | integer | Maximum number of tide predictions to return (1–500). Defaults to 100. A 7-day window typically has 28 high/low tides. |
| units | string | Unit system for water heights. english = feet, metric = meters. Defaults to english. |
| end_date | string | End date for tide predictions in YYYY-MM-DD or YYYYMMDD format (e.g. 2025-07-11). Defaults to 7 days from today. Maximum range: 366 days. |
| begin_date | string | Start date for tide predictions in YYYY-MM-DD or YYYYMMDD format (e.g. 2025-07-04). Defaults to today. Maximum range: 366 days. |
| station_id* | string | NOAA CO-OPS station ID (4–7 digits, e.g. 8443970 for Boston MA). Find station IDs with the coops.tides.stations tool. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"station_id"
],
"properties": {
"datum": {
"enum": [
"MLLW",
"MLW",
"MSL",
"MHW",
"MHHW",
"NAVD",
"STND"
],
"type": "string",
"description": "Vertical datum for water height measurements. MLLW (Mean Lower Low Water) is the chart datum used for nautical charts. MSL = Mean Sea Level. Defaults to MLLW."
},
"limit": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Maximum number of tide predictions to return (1–500). Defaults to 100. A 7-day window typically has 28 high/low tides."
},
"units": {
"enum": [
"english",
"metric"
],
"type": "string",
"description": "Unit system for water heights. english = feet, metric = meters. Defaults to english."
},
"end_date": {
"type": "string",
"description": "End date for tide predictions in YYYY-MM-DD or YYYYMMDD format (e.g. 2025-07-11). Defaults to 7 days from today. Maximum range: 366 days."
},
"begin_date": {
"type": "string",
"description": "Start date for tide predictions in YYYY-MM-DD or YYYYMMDD format (e.g. 2025-07-04). Defaults to today. Maximum range: 366 days."
},
"station_id": {
"type": "string",
"description": "NOAA CO-OPS station ID (4–7 digits, e.g. 8443970 for Boston MA). Find station IDs with the coops.tides.stations tool."
}
},
"additionalProperties": false
}List active NOAA CO-OPS tide gauge stations with their IDs, names, coordinates, and metadata. Over 300 stations covering US coastal states, Puerto Rico, Pacific Islands, and the Great Lakes. Filter by state abbreviation (e.g. CA, FL, NY) to find local stations. Returns station_id, name, latitude, longitude, state, timezone, tidal flag, and forecast availability. Use the returned station_id values with coops.tides.predictions, coops.tides.water_level, and coops.tides.conditions. Source: NOAA CO-OPS — tidesandcurrents.noaa.gov. No auth, US Gov public domain.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of stations to return (1–200). Defaults to 50. |
| state | string | Filter stations by US state abbreviation (e.g. CA, NY, FL, TX). Must be exactly 2 uppercase letters. Omit for all states. |
| tidal_only | boolean | When true (default), return only tidal stations. Set to false to include Great Lakes and non-tidal stations. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Maximum number of stations to return (1–200). Defaults to 50."
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Filter stations by US state abbreviation (e.g. CA, NY, FL, TX). Must be exactly 2 uppercase letters. Omit for all states."
},
"tidal_only": {
"type": "boolean",
"description": "When true (default), return only tidal stations. Set to false to include Great Lakes and non-tidal stations."
}
},
"additionalProperties": false
}Get verified observed water level readings (at 6-minute intervals) from a NOAA CO-OPS tide gauge station. Returns time-series data with UTC timestamps, water height in feet or meters relative to the chosen datum, and data quality flags. Specify station_id and optional date range (default: last 24 hours, max range 31 days). Datum defaults to MLLW. Observed data may lag real-time by up to 6 minutes; use coops.tides.predictions for future forecasts. Useful for flood monitoring, storm surge analysis, historical tide research, and comparing observed vs. predicted tides. Source: NOAA CO-OPS — tidesandcurrents.noaa.gov. No auth, US Gov public domain.
| Argument | Type | Description |
|---|---|---|
| datum | string | Vertical datum for water height measurements. MLLW is the standard chart datum. Defaults to MLLW. |
| limit | integer | Maximum number of 6-minute interval readings to return (1–500). Defaults to 120. One day has 240 readings. |
| units | string | Unit system: english = feet, metric = meters. Defaults to english. |
| end_date | string | End date for water level observations in YYYY-MM-DD or YYYYMMDD format (e.g. 2025-07-02). Defaults to today. Maximum range: 31 days. |
| begin_date | string | Start date for water level observations in YYYY-MM-DD or YYYYMMDD format (e.g. 2025-07-01). Defaults to yesterday. Maximum range: 31 days. |
| station_id* | string | NOAA CO-OPS station ID (4–7 digits, e.g. 8443970 for Boston MA). Find station IDs with the coops.tides.stations tool. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"station_id"
],
"properties": {
"datum": {
"enum": [
"MLLW",
"MLW",
"MSL",
"MHW",
"MHHW",
"NAVD",
"STND"
],
"type": "string",
"description": "Vertical datum for water height measurements. MLLW is the standard chart datum. Defaults to MLLW."
},
"limit": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Maximum number of 6-minute interval readings to return (1–500). Defaults to 120. One day has 240 readings."
},
"units": {
"enum": [
"english",
"metric"
],
"type": "string",
"description": "Unit system: english = feet, metric = meters. Defaults to english."
},
"end_date": {
"type": "string",
"description": "End date for water level observations in YYYY-MM-DD or YYYYMMDD format (e.g. 2025-07-02). Defaults to today. Maximum range: 31 days."
},
"begin_date": {
"type": "string",
"description": "Start date for water level observations in YYYY-MM-DD or YYYYMMDD format (e.g. 2025-07-01). Defaults to yesterday. Maximum range: 31 days."
},
"station_id": {
"type": "string",
"description": "NOAA CO-OPS station ID (4–7 digits, e.g. 8443970 for Boston MA). Find station IDs with the coops.tides.stations tool."
}
},
"additionalProperties": false
}Browse the Copernicus Data Space Ecosystem STAC catalog of satellite/product collections (Sentinel-1 radar, Sentinel-2 optical, Sentinel-3 ocean/land, Sentinel-5P atmosphere, Sentinel-6 altimetry, plus Copernicus contributing missions and derived land/emergency products), filterable by keyword. Use the returned collection IDs with search_scenes and scene_detail. Data: ESA/EU Copernicus, public STAC catalog, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of collections to return (default 20, max 100). |
| keyword | string | Filter collections by keyword matched against collection ID and title (case-insensitive substring), e.g. "sentinel-1" or "dem". Omit to list only the Sentinel mission collections. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of collections to return (default 20, max 100)."
},
"keyword": {
"type": "string",
"description": "Filter collections by keyword matched against collection ID and title (case-insensitive substring), e.g. \"sentinel-1\" or \"dem\". Omit to list only the Sentinel mission collections."
}
},
"additionalProperties": false
}Get full metadata for one Sentinel satellite scene: acquisition time, footprint, platform, instrument, product type, cloud/snow cover, orbit state, and the list of available spectral band assets plus a public quicklook thumbnail URL. Collection and item_id come from copernicus-sentinel.search_scenes. Data: ESA/EU Copernicus, public STAC catalog, no auth required.
| Argument | Type | Description |
|---|---|---|
| item_id* | string | STAC item (scene) ID from a search_scenes result, e.g. "S2B_MSIL2A_20260829T053639_N0512_R005_T50XNK_20260829T072754". |
| collection* | string | STAC collection ID the scene belongs to (from a search_scenes result), e.g. "sentinel-2-l2a". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"collection",
"item_id"
],
"properties": {
"item_id": {
"type": "string",
"minLength": 1,
"description": "STAC item (scene) ID from a search_scenes result, e.g. \"S2B_MSIL2A_20260829T053639_N0512_R005_T50XNK_20260829T072754\"."
},
"collection": {
"type": "string",
"minLength": 1,
"description": "STAC collection ID the scene belongs to (from a search_scenes result), e.g. \"sentinel-2-l2a\"."
}
},
"additionalProperties": false
}Search the Copernicus Data Space Ecosystem STAC catalog for Sentinel satellite scenes covering an area and date range, with optional maximum cloud cover filter and sort by date or cloudiness. Returns scene IDs, acquisition time, cloud cover, and a quicklook thumbnail URL for each match. Data: ESA/EU Copernicus Sentinel program, public STAC catalog, no auth required.
| Argument | Type | Description |
|---|---|---|
| lat | number | Latitude of a point of interest. Use with "lon" (and optional "radius_km") instead of bbox. |
| lon | number | Longitude of a point of interest. Use with "lat" (and optional "radius_km") instead of bbox. |
| bbox | array | Bounding box [min_lon, min_lat, max_lon, max_lat] in WGS84 decimal degrees. Provide this OR lat + lon. |
| sort | string | Sort order: "date_desc" (newest first, default) or "cloud_asc" (least cloudy first). |
| limit | integer | Maximum number of scenes to return (default 10, max 50). |
| end_date* | string | End of the acquisition date range, format YYYY-MM-DD. |
| radius_km | number | Search radius in kilometers around lat/lon (default 20, max 500). Ignored if bbox is given. |
| collection | string | STAC collection ID to search (default "sentinel-2-l2a"). Other common values: "sentinel-1-grd" (radar), "sentinel-2-l1c" (top-of-atmosphere optical), "sentinel-3-olci-2-wfr-nrt" (ocean color). See copernicus-sentinel.list_collections for the full list. |
| start_date* | string | Start of the acquisition date range, format YYYY-MM-DD. |
| max_cloud_cover | number | Maximum acceptable cloud cover percentage (0-100). Applies to optical collections like Sentinel-2; omit for radar collections such as Sentinel-1. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"start_date",
"end_date"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude of a point of interest. Use with \"lon\" (and optional \"radius_km\") instead of bbox."
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude of a point of interest. Use with \"lat\" (and optional \"radius_km\") instead of bbox."
},
"bbox": {
"type": "array",
"items": {
"type": "number"
},
"maxItems": 4,
"minItems": 4,
"description": "Bounding box [min_lon, min_lat, max_lon, max_lat] in WGS84 decimal degrees. Provide this OR lat + lon."
},
"sort": {
"enum": [
"date_desc",
"cloud_asc"
],
"type": "string",
"description": "Sort order: \"date_desc\" (newest first, default) or \"cloud_asc\" (least cloudy first)."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of scenes to return (default 10, max 50)."
},
"end_date": {
"type": "string",
"description": "End of the acquisition date range, format YYYY-MM-DD."
},
"radius_km": {
"type": "number",
"maximum": 500,
"minimum": 1,
"description": "Search radius in kilometers around lat/lon (default 20, max 500). Ignored if bbox is given."
},
"collection": {
"type": "string",
"minLength": 1,
"description": "STAC collection ID to search (default \"sentinel-2-l2a\"). Other common values: \"sentinel-1-grd\" (radar), \"sentinel-2-l1c\" (top-of-atmosphere optical), \"sentinel-3-olci-2-wfr-nrt\" (ocean color). See copernicus-sentinel.list_collections for the full list."
},
"start_date": {
"type": "string",
"description": "Start of the acquisition date range, format YYYY-MM-DD."
},
"max_cloud_cover": {
"type": "number",
"maximum": 100,
"minimum": 0,
"description": "Maximum acceptable cloud cover percentage (0-100). Applies to optical collections like Sentinel-2; omit for radar collections such as Sentinel-1."
}
},
"additionalProperties": false
}Find universities, research institutes, companies, and SMEs registered in CORDIS as participants in EU-funded research. Search by organisation name fragment (case-insensitive). Optionally filter by ISO 2-letter country code. Returns CORDIS organisation ID (PIC number), legal name, country, website URL, and entity type (Organisation / ForProfitOrganisation / SME). Useful for partner discovery, consortium research, and EU research landscape mapping. Covers 72,000+ organisations across all EU member states and associated countries.
| Argument | Type | Description |
|---|---|---|
| name* | string | Organisation name fragment to search (case-insensitive). E.g. "university of cambridge", "fraunhofer", "CERN". |
| limit | integer | Maximum number of results (1-20, default 10) |
| country | string | ISO 3166-1 alpha-2 country code to filter by (e.g. "DE" for Germany, "FR" for France, "GB" for UK) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"minLength": 2,
"description": "Organisation name fragment to search (case-insensitive). E.g. \"university of cambridge\", \"fraunhofer\", \"CERN\"."
},
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Maximum number of results (1-20, default 10)"
},
"country": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO 3166-1 alpha-2 country code to filter by (e.g. \"DE\" for Germany, \"FR\" for France, \"GB\" for UK)"
}
},
"additionalProperties": false
}Retrieve full details for a specific EU-funded research project by its grant agreement number. Returns project title, acronym, abstract (project description and scientific objectives), start and end dates, total EU funding in EUR, duration in months, signature date, project status, and the list of all participating organisations with their roles (coordinator vs participant). Use the Horizon Europe CORDIS project page URL for direct browser access. Grant IDs are typically 9-digit numbers (Horizon Europe) or 6-digit numbers (H2020).
| Argument | Type | Description |
|---|---|---|
| grant_id* | string | Grant agreement number — typically 9 digits for Horizon Europe (e.g. "101181585") or 6 digits for H2020 (e.g. "101004410"). Found in cordis.project_search results as the `id` field. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"grant_id"
],
"properties": {
"grant_id": {
"type": "string",
"minLength": 6,
"description": "Grant agreement number — typically 9 digits for Horizon Europe (e.g. \"101181585\") or 6 digits for H2020 (e.g. \"101004410\"). Found in cordis.project_search results as the `id` field."
}
},
"additionalProperties": false
}Search research publications (journal papers, conference proceedings) linked to EU-funded projects in the CORDIS linked-data knowledge graph. Filter by keyword in the publication title, or scope to a specific project by providing the grant agreement number. Returns publication identifier, full title, DOI (when available), publication date, and the RCN of the parent EU project. Covers 283,000+ journal papers and 92,000+ proceedings papers from Horizon/H2020 research.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of publications to return (1-20, default 10) |
| query* | string | Keyword(s) to search in publication titles (e.g. "machine learning", "cancer therapy", "battery storage") |
| project_id | string | Optional grant agreement number to scope publications to a specific EU project (e.g. "101181585") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Maximum number of publications to return (1-20, default 10)"
},
"query": {
"type": "string",
"minLength": 2,
"description": "Keyword(s) to search in publication titles (e.g. \"machine learning\", \"cancer therapy\", \"battery storage\")"
},
"project_id": {
"type": "string",
"description": "Optional grant agreement number to scope publications to a specific EU project (e.g. \"101181585\")"
}
},
"additionalProperties": false
}Search 80,000+ EU-funded research projects from Horizon Europe (2021–2027) and H2020 (2014–2020) using the CORDIS EURIO linked-data SPARQL endpoint. Filter by keywords in the project title, lifecycle status (SIGNED = active, CLOSED = completed, TERMINATED = cancelled), and start year range. Returns grant agreement ID, RCN, title, dates, and status. Use the `id` field with cordis.research.project_details to get full project data. Covers research in AI, climate, health, energy, space, digital, and all Horizon thematic clusters.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of results to return (1-20, default 10) |
| query* | string | Keyword(s) to search in project titles (e.g. "artificial intelligence", "climate change", "renewable energy") |
| status | string | Project lifecycle status filter. SIGNED = active/running, CLOSED = completed, TERMINATED = cancelled early. |
| year_to | integer | Filter projects starting on or before this year (e.g. 2027) |
| year_from | integer | Filter projects starting on or after this year (e.g. 2020 for Horizon Europe era) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Maximum number of results to return (1-20, default 10)"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Keyword(s) to search in project titles (e.g. \"artificial intelligence\", \"climate change\", \"renewable energy\")"
},
"status": {
"enum": [
"SIGNED",
"CLOSED",
"TERMINATED"
],
"type": "string",
"description": "Project lifecycle status filter. SIGNED = active/running, CLOSED = completed, TERMINATED = cancelled early."
},
"year_to": {
"type": "integer",
"maximum": 2035,
"minimum": 1984,
"description": "Filter projects starting on or before this year (e.g. 2027)"
},
"year_from": {
"type": "integer",
"maximum": 2030,
"minimum": 1984,
"description": "Filter projects starting on or after this year (e.g. 2020 for Horizon Europe era)"
}
},
"additionalProperties": false
}Retrieve all CPSC consumer product recall notices for a specific manufacturer or brand name. Returns the full recall history for companies like Samsung, Polaris, Kidde, IKEA, or any manufacturer that has issued CPSC recalls. Supports optional date range filtering. Returns recall title, products, hazards, remedy options, and recall dates. Essential for supply chain due diligence, vendor safety audits, product liability research, and regulatory compliance checks on specific manufacturers or brands. No auth — US Consumer Product Safety Act public domain data, unlimited free.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of recalls to return (1–100, default 50). Prolific manufacturers may have many recalls — use date filters to narrow. |
| date_end | string | End date filter (YYYY-MM-DD). Only returns recalls issued on or before this date. Example: "2024-12-31". |
| date_start | string | Start date filter (YYYY-MM-DD). Only returns recalls issued on or after this date. Example: "2020-01-01". |
| manufacturer* | string | Manufacturer or brand name to retrieve all recalls for. Partial match is supported. Example: "Samsung", "Polaris", "Kidde", "Traeger". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"manufacturer"
],
"properties": {
"limit": {
"type": "integer",
"default": 50,
"maximum": 100,
"minimum": 1,
"description": "Maximum number of recalls to return (1–100, default 50). Prolific manufacturers may have many recalls — use date filters to narrow."
},
"date_end": {
"type": "string",
"description": "End date filter (YYYY-MM-DD). Only returns recalls issued on or before this date. Example: \"2024-12-31\"."
},
"date_start": {
"type": "string",
"description": "Start date filter (YYYY-MM-DD). Only returns recalls issued on or after this date. Example: \"2020-01-01\"."
},
"manufacturer": {
"type": "string",
"minLength": 2,
"description": "Manufacturer or brand name to retrieve all recalls for. Partial match is supported. Example: \"Samsung\", \"Polaris\", \"Kidde\", \"Traeger\"."
}
},
"additionalProperties": false
}Retrieve complete details for a single CPSC recall notice by its numeric RecallID or recall number string (e.g. "26582"). Returns the full record including: product descriptions, model numbers, units affected, hazard descriptions and types, injury reports, all remedy instructions, remedy options (refund/repair/replace), manufacturer and retailer names, importer and distributor information, manufacturer country, product UPCs, and all recall images with captions. Use after cpsc.safety.search to get complete details on a specific recall record. No auth — US Consumer Product Safety Act public domain data, unlimited free.
| Argument | Type | Description |
|---|---|---|
| recall_id | integer | Numeric CPSC recall ID (RecallID field). Preferred over recall_number — use the integer ID returned by cpsc.safety.search. Example: 10840. At least one of recall_id or recall_number must be provided. |
| recall_number | string | CPSC recall number string (RecallNumber field). Typically a 5-digit string like "26582". Use when you have the recall number from a CPSC press release but not the internal RecallID. At least one of recall_id or recall_number must be provided. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"recall_id": {
"type": "integer",
"description": "Numeric CPSC recall ID (RecallID field). Preferred over recall_number — use the integer ID returned by cpsc.safety.search. Example: 10840. At least one of recall_id or recall_number must be provided."
},
"recall_number": {
"type": "string",
"description": "CPSC recall number string (RecallNumber field). Typically a 5-digit string like \"26582\". Use when you have the recall number from a CPSC press release but not the internal RecallID. At least one of recall_id or recall_number must be provided."
}
},
"additionalProperties": false
}Get the most recent US CPSC consumer product recall notices issued within the last N days. Returns recalls ordered newest-first with title, affected products, hazards, remedy options, and manufacturer details. Optionally filter by CPSC product category (e.g. "Toys", "Furniture", "Power Tools"). Ideal for safety monitoring agents, compliance dashboards, and consumer protection workflows that need to track new recall announcements on a daily or weekly basis. No auth — US Consumer Product Safety Act public domain data, unlimited free.
| Argument | Type | Description |
|---|---|---|
| days | integer | Number of days to look back for recent recalls (1–365, default 30). Example: 7 returns recalls from the last week; 90 returns the last quarter. |
| limit | integer | Maximum number of recent recalls to return (1–100, default 20). Results are ordered newest-first. |
| product_type | string | Optional CPSC product category to filter recent recalls. Example: "Toys", "Furniture", "Power Tools". Leave blank to get recent recalls across all categories. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"days": {
"type": "integer",
"default": 30,
"maximum": 365,
"minimum": 1,
"description": "Number of days to look back for recent recalls (1–365, default 30). Example: 7 returns recalls from the last week; 90 returns the last quarter."
},
"limit": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1,
"description": "Maximum number of recent recalls to return (1–100, default 20). Results are ordered newest-first."
},
"product_type": {
"type": "string",
"description": "Optional CPSC product category to filter recent recalls. Example: \"Toys\", \"Furniture\", \"Power Tools\". Leave blank to get recent recalls across all categories."
}
},
"additionalProperties": false
}Search US Consumer Product Safety Commission (CPSC) recall notices by product name, product category, manufacturer, date range, hazard type, and country of origin. Returns matching recalls with title, description, hazards, remedy options, manufacturer details, and official recall URL from cpsc.gov. Database contains all recalls since 1974 — over 6 000 active recall records. Use to check whether a specific product or brand has been recalled for safety defects, fire hazards, choking risks, or other consumer safety issues. No auth — US Consumer Product Safety Act public domain data, unlimited free.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of recalls to return (1–100, default 20). The API may match more records — use date_start/date_end to narrow results. |
| hazard | string | Hazard type keyword to filter recalls. Must match an exact CPSC hazard name. Example: "fire hazard", "choking hazard". Note: use product_name or product_type for broader searches. |
| country | string | Manufacturer country of origin to filter recalls. Example: "China", "United States", "Vietnam". |
| date_end | string | End date for recall date range filter (ISO 8601 format YYYY-MM-DD). Example: "2024-12-31". Only returns recalls issued on or before this date. |
| date_start | string | Start date for recall date range filter (ISO 8601 format YYYY-MM-DD). Example: "2024-01-01". Only returns recalls issued on or after this date. |
| manufacturer | string | Manufacturer or brand name to filter recalls (partial match). Example: "Fisher-Price", "IKEA", "Honda". |
| product_name | string | Product name keyword to filter recalls (partial match). Example: "bicycle helmet", "smoke detector", "baby carrier". |
| product_type | string | CPSC product category to filter recalls. Common values: "Toys", "Clothing", "Furniture", "Sports & Recreation", "Home Furnishings", "Electronics", "Children's Products", "Power Tools". Must match a CPSC category name exactly. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1,
"description": "Maximum number of recalls to return (1–100, default 20). The API may match more records — use date_start/date_end to narrow results."
},
"hazard": {
"type": "string",
"description": "Hazard type keyword to filter recalls. Must match an exact CPSC hazard name. Example: \"fire hazard\", \"choking hazard\". Note: use product_name or product_type for broader searches."
},
"country": {
"type": "string",
"description": "Manufacturer country of origin to filter recalls. Example: \"China\", \"United States\", \"Vietnam\"."
},
"date_end": {
"type": "string",
"description": "End date for recall date range filter (ISO 8601 format YYYY-MM-DD). Example: \"2024-12-31\". Only returns recalls issued on or before this date."
},
"date_start": {
"type": "string",
"description": "Start date for recall date range filter (ISO 8601 format YYYY-MM-DD). Example: \"2024-01-01\". Only returns recalls issued on or after this date."
},
"manufacturer": {
"type": "string",
"description": "Manufacturer or brand name to filter recalls (partial match). Example: \"Fisher-Price\", \"IKEA\", \"Honda\"."
},
"product_name": {
"type": "string",
"description": "Product name keyword to filter recalls (partial match). Example: \"bicycle helmet\", \"smoke detector\", \"baby carrier\"."
},
"product_type": {
"type": "string",
"description": "CPSC product category to filter recalls. Common values: \"Toys\", \"Clothing\", \"Furniture\", \"Sports & Recreation\", \"Home Furnishings\", \"Electronics\", \"Children's Products\", \"Power Tools\". Must match a CPSC category name exactly."
}
},
"additionalProperties": false
}Browse article-to-dataset citation events by creation-date range and/or publisher member ID, without needing a known DOI. Useful for monitoring newly-deposited data citations from a specific publisher or time window. Data: api.crossref.org/beta/datacitations (CrossRef Data Citations API), no auth required, CC0 metadata, ~5-day delay between deposit and API appearance.
| Argument | Type | Description |
|---|---|---|
| rows | integer | Number of citation events to return (1-500, default 20) |
| from_date | string | Only citation events created on/after this date, YYYY-MM-DD or YYYY-MM-DDTHH:MM:SS (e.g. "2026-01-20") |
| member_id | string | Filter to citing works from a specific CrossRef member/publisher ID (e.g. "78") |
| until_date | string | Only citation events created on/before this date, YYYY-MM-DD or YYYY-MM-DDTHH:MM:SS (e.g. "2026-01-21") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"rows": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Number of citation events to return (1-500, default 20)"
},
"from_date": {
"type": "string",
"description": "Only citation events created on/after this date, YYYY-MM-DD or YYYY-MM-DDTHH:MM:SS (e.g. \"2026-01-20\")"
},
"member_id": {
"type": "string",
"description": "Filter to citing works from a specific CrossRef member/publisher ID (e.g. \"78\")"
},
"until_date": {
"type": "string",
"description": "Only citation events created on/before this date, YYYY-MM-DD or YYYY-MM-DDTHH:MM:SS (e.g. \"2026-01-21\")"
}
},
"additionalProperties": false
}Find datasets (Crossref-DOI or DataCite-DOI) cited by a given scholarly work DOI. Returns each cited dataset's DOI, registration agency (Crossref/DataCite), and the citation timestamp. Useful for surfacing the underlying data behind a paper for reproducibility or follow-up analysis. Data: api.crossref.org/beta/datacitations (CrossRef Data Citations API), no auth required, CC0 metadata.
| Argument | Type | Description |
|---|---|---|
| rows | integer | Number of citation events to return (1-500, default 20) |
| article_doi* | string | DOI of the scholarly work to find cited datasets for (e.g. "10.1016/j.jpeds.2026.114997") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"article_doi"
],
"properties": {
"rows": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Number of citation events to return (1-500, default 20)"
},
"article_doi": {
"type": "string",
"minLength": 1,
"description": "DOI of the scholarly work to find cited datasets for (e.g. \"10.1016/j.jpeds.2026.114997\")"
}
},
"additionalProperties": false
}Find scholarly works (journal articles, preprints) that cite a given dataset DOI. Returns each citing work's DOI, work type, publisher member ID, and the citation timestamp. Useful for measuring dataset reuse/impact or tracing which papers relied on a specific dataset. Data: api.crossref.org/beta/datacitations (CrossRef Data Citations API), no auth required, CC0 metadata, ~5-day delay between deposit and API appearance.
| Argument | Type | Description |
|---|---|---|
| rows | integer | Number of citation events to return (1-500, default 20) |
| dataset_doi* | string | DOI of the dataset to find citing works for (e.g. "10.1037/t00742-000") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"dataset_doi"
],
"properties": {
"rows": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Number of citation events to return (1-500, default 20)"
},
"dataset_doi": {
"type": "string",
"minLength": 1,
"description": "DOI of the dataset to find citing works for (e.g. \"10.1037/t00742-000\")"
}
},
"additionalProperties": false
}Search the CrossRef Funder Registry (open registry of ~30K research funding organizations, based on the Funder Registry / ROR data) by name. Returns funder ID (DOI-based), canonical and alternate names, location, and URI — used to trace grant funding acknowledged in published papers. Data: api.crossref.org (CrossRef REST API), no auth required.
| Argument | Type | Description |
|---|---|---|
| rows | integer | Number of results to return (1-20, default 10) |
| query* | string | Search query for funder/grant organization name (e.g. "national science foundation") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"rows": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of results to return (1-20, default 10)"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Search query for funder/grant organization name (e.g. \"national science foundation\")"
}
},
"additionalProperties": false
}Get metadata for an academic journal by its ISSN — title, publisher, subject areas, and DOI coverage counts (current, backfile, total). Useful for verifying a journal's publisher or gauging its publication volume. Data: api.crossref.org (CrossRef REST API), no auth required.
| Argument | Type | Description |
|---|---|---|
| issn* | string | Journal ISSN in NNNN-NNNN format (e.g. 0028-0836 for Nature) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"issn"
],
"properties": {
"issn": {
"type": "string",
"minLength": 1,
"description": "Journal ISSN in NNNN-NNNN format (e.g. 0028-0836 for Nature)"
}
},
"additionalProperties": false
}Search the CrossRef member registry (17K+ registered publishers and societies) by name. Returns member ID, primary name, location, DOI prefixes, and DOI coverage counts. Useful for identifying a publisher's CrossRef member ID or checking publication volume. Data: api.crossref.org (CrossRef REST API), no auth required.
| Argument | Type | Description |
|---|---|---|
| rows | integer | Number of results to return (1-20, default 10) |
| query* | string | Search query for publisher/member name (e.g. "elsevier", "springer") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"rows": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of results to return (1-20, default 10)"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Search query for publisher/member name (e.g. \"elsevier\", \"springer\")"
}
},
"additionalProperties": false
}Search 150M+ scholarly works (journal articles, books, conference papers, datasets) by title, author, or full text. Returns DOI, title, authors, publisher, container (journal/book) title, published date, citation count, and abstract. Complements education.doi_lookup (which resolves a single known DOI) by letting agents discover DOIs from a text query. Data: api.crossref.org (CrossRef REST API), no auth required, CC0 metadata.
| Argument | Type | Description |
|---|---|---|
| rows | integer | Number of results to return (1-20, default 10) |
| query* | string | Search query across title, author, and full text (e.g. "quantum computing") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"rows": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of results to return (1-20, default 10)"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Search query across title, author, and full text (e.g. \"quantum computing\")"
}
},
"additionalProperties": false
}Get detailed information about a cryptocurrency
| Argument | Type | Description |
|---|---|---|
| coin_id* | string | CoinGecko coin ID (e.g. bitcoin, ethereum) |
| include_community | boolean | Include community/social stats |
| include_developer | boolean | Include developer/GitHub stats |
| include_description | boolean | Include coin description text |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"coin_id"
],
"properties": {
"coin_id": {
"type": "string",
"description": "CoinGecko coin ID (e.g. bitcoin, ethereum)"
},
"include_community": {
"type": "boolean",
"description": "Include community/social stats"
},
"include_developer": {
"type": "boolean",
"description": "Include developer/GitHub stats"
},
"include_description": {
"type": "boolean",
"description": "Include coin description text"
}
},
"additionalProperties": false
}Search for cryptocurrencies by name or symbol
| Argument | Type | Description |
|---|---|---|
| query* | string | Search query for coin name, symbol, or ID |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"description": "Search query for coin name, symbol, or ID"
}
},
"additionalProperties": false
}Get DEX liquidity pool data
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max number of results (1-50) |
| query | string | Search query for pool name or token |
| network | string | Blockchain network to query (e.g. ethereum, bsc, polygon, solana) |
| sort_by | string | Sort order for pool results |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"description": "Max number of results (1-50)"
},
"query": {
"type": "string",
"description": "Search query for pool name or token"
},
"network": {
"enum": [
"ethereum",
"bsc",
"polygon",
"arbitrum",
"solana",
"base",
"avalanche",
"optimism"
],
"type": "string",
"description": "Blockchain network to query (e.g. ethereum, bsc, polygon, solana)"
},
"sort_by": {
"enum": [
"volume_24h",
"liquidity",
"price_change_24h",
"transactions_24h"
],
"type": "string",
"description": "Sort order for pool results"
}
},
"additionalProperties": false
}Get global cryptocurrency market statistics
| Argument | Type | Description |
|---|---|---|
| include_defi | boolean | Include DeFi-specific global stats |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"include_defi": {
"type": "boolean",
"description": "Include DeFi-specific global stats"
}
},
"additionalProperties": false
}Get cryptocurrency market data by category
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max number of results (1-250) |
| sort_by | string | Sort order for results |
| category | string | Filter by market category |
| include_sparkline | boolean | Include 7-day sparkline price data |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 250,
"description": "Max number of results (1-250)"
},
"sort_by": {
"enum": [
"market_cap_desc",
"market_cap_asc",
"volume_desc",
"price_desc",
"price_change_24h_desc"
],
"type": "string",
"description": "Sort order for results"
},
"category": {
"enum": [
"defi",
"layer-1",
"layer-2",
"gaming",
"ai-big-data",
"meme-token",
"stablecoins",
"nft",
"exchange-based-tokens",
"real-world-assets"
],
"type": "string",
"description": "Filter by market category"
},
"include_sparkline": {
"type": "boolean",
"description": "Include 7-day sparkline price data"
}
},
"additionalProperties": false
}Get current prices for cryptocurrencies
| Argument | Type | Description |
|---|---|---|
| coins* | array | List of coin IDs to get prices for |
| vs_currencies | array | Target currencies for price conversion |
| include_volume | boolean | Include 24-hour trading volume |
| include_24h_change | boolean | Include 24-hour price change percentage |
| include_market_cap | boolean | Include market capitalization |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"coins"
],
"properties": {
"coins": {
"type": "array",
"items": {
"type": "string",
"description": "CoinGecko coin ID (e.g. bitcoin, ethereum)"
},
"maxItems": 50,
"description": "List of coin IDs to get prices for"
},
"vs_currencies": {
"type": "array",
"items": {
"type": "string",
"description": "Currency code (e.g. usd, eur, btc)"
},
"description": "Target currencies for price conversion"
},
"include_volume": {
"type": "boolean",
"description": "Include 24-hour trading volume"
},
"include_24h_change": {
"type": "boolean",
"description": "Include 24-hour price change percentage"
},
"include_market_cap": {
"type": "boolean",
"description": "Include market capitalization"
}
},
"additionalProperties": false
}Get price history for a cryptocurrency
| Argument | Type | Description |
|---|---|---|
| days | integer | Number of days of history (1-365) |
| format | string | Response format: timeseries (price points) or ohlcv (candlestick data) |
| coin_id* | string | CoinGecko coin ID (e.g. bitcoin, ethereum) |
| interval | string | Data point interval for price history (5m, hourly, or daily) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"coin_id"
],
"properties": {
"days": {
"type": "integer",
"maximum": 365,
"description": "Number of days of history (1-365)"
},
"format": {
"enum": [
"timeseries",
"ohlcv"
],
"type": "string",
"description": "Response format: timeseries (price points) or ohlcv (candlestick data)"
},
"coin_id": {
"type": "string",
"description": "CoinGecko coin ID (e.g. bitcoin, ethereum)"
},
"interval": {
"enum": [
"5m",
"hourly",
"daily"
],
"type": "string",
"description": "Data point interval for price history (5m, hourly, or daily)"
}
},
"additionalProperties": false
}Get token info by contract address
| Argument | Type | Description |
|---|---|---|
| network | string | Blockchain network to query (e.g. ethereum, bsc, polygon, solana) |
| contract_address* | string | Token contract address (e.g. 0x...) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"contract_address"
],
"properties": {
"network": {
"enum": [
"ethereum",
"bsc",
"polygon",
"arbitrum",
"solana",
"base",
"avalanche",
"optimism"
],
"type": "string",
"description": "Blockchain network to query (e.g. ethereum, bsc, polygon, solana)"
},
"contract_address": {
"type": "string",
"description": "Token contract address (e.g. 0x...)"
}
},
"additionalProperties": false
}Get trending cryptocurrencies
| Argument | Type | Description |
|---|---|---|
| include_nfts | boolean | Include trending NFT collections |
| include_categories | boolean | Include trending categories |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"include_nfts": {
"type": "boolean",
"description": "Include trending NFT collections"
},
"include_categories": {
"type": "boolean",
"description": "Include trending categories"
}
},
"additionalProperties": false
}Search artists and makers in the Art Institute of Chicago collection — name, birth/death dates, biography. Find artist IDs for cross-referencing with artwork search (ARTIC)
| Argument | Type | Description |
|---|---|---|
| q* | string | Artist name to search (e.g. "Claude Monet", "Picasso", "Georgia O'Keeffe") |
| limit | integer | Number of results (default 10, max 100) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"minLength": 1,
"description": "Artist name to search (e.g. \"Claude Monet\", \"Picasso\", \"Georgia O'Keeffe\")"
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of results (default 10, max 100)"
}
},
"additionalProperties": false
}Full details for a single artwork — title, artist, date, medium, dimensions, credit line, place of origin, department, provenance, exhibition history, high-res IIIF image URL. Use artwork ID from search results (ARTIC)
| Argument | Type | Description |
|---|---|---|
| id* | integer | ARTIC artwork ID from search results (e.g. 16568 for Monet Water Lilies) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"description": "ARTIC artwork ID from search results (e.g. 16568 for Monet Water Lilies)"
}
},
"additionalProperties": false
}Search 120,000+ artworks at the Art Institute of Chicago — paintings, sculptures, photographs, prints, textiles. Returns title, artist, date, medium, dimensions, IIIF image URL, public domain status. Covers all periods and regions (ARTIC)
| Argument | Type | Description |
|---|---|---|
| q* | string | Search query for artworks (e.g. "monet water lilies", "picasso", "impressionism", "Japanese woodblock") |
| page | integer | Page number for pagination (default 1) |
| limit | integer | Number of results (default 10, max 100) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"minLength": 1,
"description": "Search query for artworks (e.g. \"monet water lilies\", \"picasso\", \"impressionism\", \"Japanese woodblock\")"
},
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)"
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of results (default 10, max 100)"
}
},
"additionalProperties": false
}Full metadata for a single cultural heritage object — title, creator, description, date, language, source, rights, high-res image URL, provider institution, landing page. Use ID from search results (Europeana)
| Argument | Type | Description |
|---|---|---|
| id* | string | Europeana record ID from search results (e.g. "/09102/_GNM_693983" or "09102/_GNM_693983") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "Europeana record ID from search results (e.g. \"/09102/_GNM_693983\" or \"09102/_GNM_693983\")"
}
},
"additionalProperties": false
}Search 50M+ cultural heritage objects across 4,000 institutions in 36 European countries — paintings, photographs, books, maps, 3D objects, music, film. Multilingual (24 languages). Filter by country, media type. Returns title, creator, thumbnail, provider, year (Europeana)
| Argument | Type | Description |
|---|---|---|
| rows | integer | Number of results to return (default 12, max 100) |
| media | boolean | Only return items with media (images/video/audio) — default false |
| query* | string | Search term (e.g. "Rembrandt", "Mona Lisa", "medieval manuscript", "Art Nouveau poster") |
| start | integer | Start position for pagination (default 1) |
| country | string | Filter by country (e.g. "Netherlands", "France", "Italy", "Germany") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"rows": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of results to return (default 12, max 100)"
},
"media": {
"type": "boolean",
"description": "Only return items with media (images/video/audio) — default false"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Search term (e.g. \"Rembrandt\", \"Mona Lisa\", \"medieval manuscript\", \"Art Nouveau poster\")"
},
"start": {
"type": "integer",
"minimum": 1,
"description": "Start position for pagination (default 1)"
},
"country": {
"type": "string",
"description": "Filter by country (e.g. \"Netherlands\", \"France\", \"Italy\", \"Germany\")"
}
},
"additionalProperties": false
}Convert amount between any two currencies — 160+ currencies supported. Returns conversion rate and result (ExchangeRate-API)
| Argument | Type | Description |
|---|---|---|
| to* | string | Target currency code (e.g. "EUR") |
| from* | string | Source currency code (e.g. "USD") |
| amount | number | Amount to convert (default 1) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"from",
"to"
],
"properties": {
"to": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "Target currency code (e.g. \"EUR\")"
},
"from": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "Source currency code (e.g. \"USD\")"
},
"amount": {
"type": "number",
"description": "Amount to convert (default 1)"
}
},
"additionalProperties": false
}Latest exchange rates for 160+ currencies against any base currency. Updated daily on free tier. Returns all rates in one call (ExchangeRate-API)
| Argument | Type | Description |
|---|---|---|
| base | string | Base currency code (e.g. "USD", "EUR", "GBP"). Default: USD. Returns rates for 160+ currencies. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"base": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "Base currency code (e.g. \"USD\", \"EUR\", \"GBP\"). Default: USD. Returns rates for 160+ currencies."
}
},
"additionalProperties": false
}List all 46 available news categories: technology, business, health, sports, science, entertainment, finance, world, politics, and more. Use to discover valid category values for filtering.
| Argument | Type | Description |
|---|---|---|
| locale | string | Response locale (default: en) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"locale": {
"type": "string",
"description": "Response locale (default: en)"
}
},
"additionalProperties": false
}Get latest breaking news from 70+ countries in 18+ languages. Returns full article text, author, source URL, and publication time. Filter by language, country, and category (technology, business, health, sports, science, finance, world).
| Argument | Type | Description |
|---|---|---|
| country | string | ISO 3166-1 alpha-2 country code (e.g. "US", "GB", "DE", "JP") |
| category | string | News category filter (e.g. "technology", "business", "health", "sports", "science", "entertainment", "finance", "world") |
| language | string | ISO 639-1 language code (e.g. "en", "de", "fr", "ja", "zh"). Default: all languages |
| page_size | integer | Number of articles to return, max 200 (default 10) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"country": {
"type": "string",
"description": "ISO 3166-1 alpha-2 country code (e.g. \"US\", \"GB\", \"DE\", \"JP\")"
},
"category": {
"type": "string",
"description": "News category filter (e.g. \"technology\", \"business\", \"health\", \"sports\", \"science\", \"entertainment\", \"finance\", \"world\")"
},
"language": {
"type": "string",
"description": "ISO 639-1 language code (e.g. \"en\", \"de\", \"fr\", \"ja\", \"zh\"). Default: all languages"
},
"page_size": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Number of articles to return, max 200 (default 10)"
}
},
"additionalProperties": false
}Search news articles by keyword across 70+ countries and 18+ languages. Returns full article text with Boolean operator support. Filter by language, country, category, and date range.
| Argument | Type | Description |
|---|---|---|
| country | string | ISO 3166-1 alpha-2 country code |
| end_date | string | End date in ISO 8601 format |
| keywords* | string | Search keywords — supports Boolean operators (e.g. "AI agents", "climate AND policy") |
| language | string | ISO 639-1 language code (e.g. "en", "es", "ar") |
| page_size | integer | Number of articles to return, max 200 (default 10) |
| start_date | string | Start date in ISO 8601 format (e.g. "2026-03-01T00:00:00+00:00") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"keywords"
],
"properties": {
"country": {
"type": "string",
"description": "ISO 3166-1 alpha-2 country code"
},
"end_date": {
"type": "string",
"description": "End date in ISO 8601 format"
},
"keywords": {
"type": "string",
"description": "Search keywords — supports Boolean operators (e.g. \"AI agents\", \"climate AND policy\")"
},
"language": {
"type": "string",
"description": "ISO 639-1 language code (e.g. \"en\", \"es\", \"ar\")"
},
"page_size": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Number of articles to return, max 200 (default 10)"
},
"start_date": {
"type": "string",
"description": "Start date in ISO 8601 format (e.g. \"2026-03-01T00:00:00+00:00\")"
}
},
"additionalProperties": false
}Get the current UV Index, an hourly forecast for the next ~120 hours, and up to 24 hours of recent history for any latitude/longitude worldwide. Each data point includes a WHO/EPA risk category (Low, Moderate, High, Very High, Extreme). Also returns the peak forecasted UV Index and when it occurs. Data: currentuvindex.com, CC BY 4.0 license, no auth required.
| Argument | Type | Description |
|---|---|---|
| latitude* | number | Latitude of the location, decimal degrees (-90 to 90). Example: 40.6943. |
| longitude* | number | Longitude of the location, decimal degrees (-180 to 180). Example: -73.9249. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude"
],
"properties": {
"latitude": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude of the location, decimal degrees (-90 to 90). Example: 40.6943."
},
"longitude": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude of the location, decimal degrees (-180 to 180). Example: -73.9249."
}
},
"additionalProperties": false
}Check a CVE ID's current lifecycle state (RESERVED, PUBLISHED, or REJECTED) and which CNA owns/assigned it, even for IDs that have been reserved but have no published record yet. NVD has no equivalent — it only indexes published records. Data: cveawg.mitre.org (CVE Program, MITRE Corporation), no auth required.
| Argument | Type | Description |
|---|---|---|
| cve_id* | string | CVE identifier to check, e.g. "CVE-2021-44228". Returns state (RESERVED/PUBLISHED/REJECTED) and the assigning CNA even for IDs with no published record yet. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"cve_id"
],
"properties": {
"cve_id": {
"type": "string",
"minLength": 1,
"description": "CVE identifier to check, e.g. \"CVE-2021-44228\". Returns state (RESERVED/PUBLISHED/REJECTED) and the assigning CNA even for IDs with no published record yet."
}
},
"additionalProperties": false
}Fetch the full canonical CVE record as published by the assigning CNA (CVE Numbering Authority) in CVE JSON 5.x format — title, description, affected vendor/product/version ranges, CVSS score/vector (if scored), CWE weakness types, and references. This is the authoritative source record; distinct from nvd.cves.detail, which serves NIST's downstream-enriched copy (added CPE configurations, NVD-analyst CVSS). Example: CVE-2021-44228 (Log4Shell). Data: cveawg.mitre.org (CVE Program, MITRE Corporation), no auth required.
| Argument | Type | Description |
|---|---|---|
| cve_id* | string | CVE identifier, e.g. "CVE-2021-44228" (Log4Shell) or "CVE-2024-3400". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"cve_id"
],
"properties": {
"cve_id": {
"type": "string",
"minLength": 1,
"description": "CVE identifier, e.g. \"CVE-2021-44228\" (Log4Shell) or \"CVE-2024-3400\"."
}
},
"additionalProperties": false
}Browse the Czech Statistical Office open-data catalog (~1000 datasets: demographics, prices, census, territorial statistics). Optional id_prefix substring filter narrows by dataset id — CZSO has no full-text search. Returns dataset_id + title + temporal coverage for use in czso.dataset_metadata and czso.dataset_data. Data: vdb.czso.cz (Czech Statistical Office open-data catalog), no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max datasets to return with title + coverage attached (1-20, default 10). |
| offset | integer | Number of matching dataset ids to skip (default 0). For paging through results. |
| id_prefix | string | Filter dataset ids by substring, case-insensitive (e.g. "13014" for population-movement series, "sldb2021" for the 2021 census). CZSO has no full-text search — omit to page through the full ~1000-dataset catalog with offset/limit. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Max datasets to return with title + coverage attached (1-20, default 10)."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Number of matching dataset ids to skip (default 0). For paging through results."
},
"id_prefix": {
"type": "string",
"description": "Filter dataset ids by substring, case-insensitive (e.g. \"13014\" for population-movement series, \"sldb2021\" for the 2021 census). CZSO has no full-text search — omit to page through the full ~1000-dataset catalog with offset/limit."
}
},
"additionalProperties": false
}Get full metadata for one CZSO dataset (dataset_id from czso.dataset_list) — description, update frequency, temporal coverage, tags, and the resource list (download URL + format) needed before calling czso.dataset_data. Data: vdb.czso.cz (Czech Statistical Office open-data catalog), no auth required.
| Argument | Type | Description |
|---|---|---|
| dataset_id* | string | CZSO dataset id, from czso.dataset_list (e.g. "130141r25" for 2024 population movement, "010022" for consumer price indices). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"dataset_id"
],
"properties": {
"dataset_id": {
"type": "string",
"minLength": 1,
"description": "CZSO dataset id, from czso.dataset_list (e.g. \"130141r25\" for 2024 population movement, \"010022\" for consumer price indices)."
}
},
"additionalProperties": false
}Fetch rows from a CZSO dataset's CSV data file (dataset_id from czso.dataset_list). Column names vary per dataset (e.g. "vuzemi_txt" for territory, "rok" for year) — call once without filter_column to see the header, then narrow with filter_column + filter_value (substring match). Rows capped 1-500 (default 50). Datasets whose only resource is not CSV (e.g. ZIP) are rejected with a pointer to the raw download URL. Data: vdb.czso.cz (Czech Statistical Office open-data catalog), no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max rows to return after filtering (1-500, default 50). |
| offset | integer | Number of matching rows to skip, for paging through a large filtered result. |
| dataset_id* | string | CZSO dataset id, from czso.dataset_list (e.g. "130141r25" for 2024 population movement). |
| filter_value | string | Substring to match (case-insensitive) against filter_column's value, e.g. "Praha" when filter_column is "vuzemi_txt". Required when filter_column is set. |
| filter_column | string | Column name to filter on, must match a column in the CSV header returned by this same tool (column names vary per dataset, e.g. "vuzemi_txt" for territory name, "rok" for year, "vuk" for indicator code) — call once without a filter to see the header first. Requires filter_value. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"dataset_id"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Max rows to return after filtering (1-500, default 50)."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Number of matching rows to skip, for paging through a large filtered result."
},
"dataset_id": {
"type": "string",
"minLength": 1,
"description": "CZSO dataset id, from czso.dataset_list (e.g. \"130141r25\" for 2024 population movement)."
},
"filter_value": {
"type": "string",
"description": "Substring to match (case-insensitive) against filter_column's value, e.g. \"Praha\" when filter_column is \"vuzemi_txt\". Required when filter_column is set."
},
"filter_column": {
"type": "string",
"description": "Column name to filter on, must match a column in the CSV header returned by this same tool (column names vary per dataset, e.g. \"vuzemi_txt\" for territory name, \"rok\" for year, \"vuk\" for indicator code) — call once without a filter to see the header first. Requires filter_value."
}
},
"additionalProperties": false
}Get full metadata for one EU Open Data Portal dataset by id: localized title/description, source catalogue, tags, license, and the full distribution list (format, download URL, license, release/update dates). Data: data.europa.eu Hub-Search API (CKAN-compatible shim), no auth required.
| Argument | Type | Description |
|---|---|---|
| id* | string | data.europa.eu dataset id (from dataset_search results, e.g. "f431cf05-276e-4741-ab6e-96ce8b8c5f66") |
| locale | string | 2-letter language code for localized fields where available (default "en") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "data.europa.eu dataset id (from dataset_search results, e.g. \"f431cf05-276e-4741-ab6e-96ce8b8c5f66\")"
},
"locale": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "2-letter language code for localized fields where available (default \"en\")"
}
},
"additionalProperties": false
}Search the EU Open Data Portal catalog (1M+ datasets aggregated from national and regional EU/EEA open-data portals plus EU institutions) by free text, country, and/or DCAT-AP theme, returning dataset id, localized title/description, source catalogue, country, categories, and available distribution formats. Use data-europa.theme_list for valid theme codes. Data: data.europa.eu Hub-Search API, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of datasets to return (1-20, default 10) |
| query | string | Free-text search across dataset title/description (e.g. "air quality") |
| theme | string | DCAT-AP data theme code to filter by (e.g. "ENVI" for Environment, "HEAL" for Health) — see data-europa.theme_list for the full list |
| locale | string | 2-letter language code for localized fields (default "en") |
| country | string | 2-letter lowercase ISO country code to filter by (e.g. "de", "fr", "it", "es") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of datasets to return (1-20, default 10)"
},
"query": {
"type": "string",
"description": "Free-text search across dataset title/description (e.g. \"air quality\")"
},
"theme": {
"enum": [
"AGRI",
"ECON",
"EDUC",
"ENER",
"ENVI",
"GOVE",
"HEAL",
"INTR",
"JUST",
"OP_DATPRO",
"REGI",
"SOCI",
"TECH",
"TRAN"
],
"type": "string",
"description": "DCAT-AP data theme code to filter by (e.g. \"ENVI\" for Environment, \"HEAL\" for Health) — see data-europa.theme_list for the full list"
},
"locale": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "2-letter language code for localized fields (default \"en\")"
},
"country": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "2-letter lowercase ISO country code to filter by (e.g. \"de\", \"fr\", \"it\", \"es\")"
}
},
"additionalProperties": false
}List the ~211 national, regional, and EU-institution data catalogues (portal source ids, e.g. "gdi-de", "govdata", "geocat-li") that feed the EU Open Data Portal, optionally filtered by an id substring. Data: data.europa.eu Hub-Search API, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max catalogues to return (1-211, default 50) |
| query | string | Substring filter on catalogue id (e.g. "geo" matches "geocat-li", "gdi-de") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 211,
"minimum": 1,
"description": "Max catalogues to return (1-211, default 50)"
},
"query": {
"type": "string",
"description": "Substring filter on catalogue id (e.g. \"geo\" matches \"geocat-li\", \"gdi-de\")"
}
},
"additionalProperties": false
}List the 14 fixed DCAT-AP data themes used by the EU Open Data Portal (e.g. "ENVI" for Environment, "HEAL" for Health, "ECON" for Economy and finance) with localized labels. Use the returned theme code as the `theme` filter for data-europa.dataset_search. Data: data.europa.eu Hub-Search API, no auth required.
| Argument | Type | Description |
|---|---|---|
| locale | string | 2-letter language code for theme labels (default "en") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"locale": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "2-letter language code for theme labels (default \"en\")"
}
},
"additionalProperties": false
}Search the 3,500+ DataCite member repositories (called "clients") by name or keyword. Returns repository ID, name, symbol (short code like "cern.zenodo"), description, URL, and total DOI count. Repository IDs can be used with datacite.doi.search to filter results to a specific repository. Examples: Zenodo (cern.zenodo, 150K+ DOIs), figshare (figshare.ars, 42K+ DOIs), Mendeley Data (bl.mendeley, 10K+ DOIs), IEEE DataPort (ieee.dataport, 5K+ DOIs), Open Science Framework (cos.osf, 4K+ DOIs).
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default 1). |
| limit | integer | Number of repositories per page (1–50, default 10). |
| query | string | Search DataCite member repositories by name or keyword. Examples: "zenodo", "dryad", "figshare", "harvard", "pangaea". Returns matching repositories with their DOI counts. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of repositories per page (1–50, default 10)."
},
"query": {
"type": "string",
"description": "Search DataCite member repositories by name or keyword. Examples: \"zenodo\", \"dryad\", \"figshare\", \"harvard\", \"pangaea\". Returns matching repositories with their DOI counts."
}
},
"additionalProperties": false
}Get full metadata for a specific DataCite DOI. Returns the complete scholarly metadata record: title, all creators with ORCID identifiers and affiliations, publisher, publication year, resource type, abstract, subjects, license, funding references (funder name, award number), related identifiers, language, formats, usage metrics (views, downloads, citations), and registration/update timestamps. Accepts bare DOI (e.g. "10.5281/zenodo.3490396") or full URL form. Most Zenodo, Dryad, Figshare, and institutional repository DOIs are registered with DataCite.
| Argument | Type | Description |
|---|---|---|
| doi* | string | The DOI to look up. Accepts bare DOI (e.g. "10.5281/zenodo.3490396") or full URL form ("https://doi.org/10.5281/zenodo.3490396"). Must be a DataCite-registered DOI. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"doi"
],
"properties": {
"doi": {
"type": "string",
"description": "The DOI to look up. Accepts bare DOI (e.g. \"10.5281/zenodo.3490396\") or full URL form (\"https://doi.org/10.5281/zenodo.3490396\"). Must be a DataCite-registered DOI."
}
},
"additionalProperties": false
}Search 70M+ DataCite-registered DOIs for research outputs: datasets, software, preprints, journal articles, dissertations, and more. Filter by keyword, resource type (dataset/software/preprint/etc.), publication year, repository (Zenodo, Figshare, Dryad), or funder. Returns normalized metadata including title, creators, publisher, year, abstract, license, subjects, and usage metrics (views, downloads, citations). Results include facets for resource types and top providers. DataCite covers outputs from 3,500+ repositories worldwide including arXiv, Zenodo, Mendeley Data, and IEEE DataPort.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default 1). |
| sort | string | Sort order for results. "relevance" (default) uses full-text score. "-published" returns newest first. "published" returns oldest first. |
| limit | integer | Number of results per page (1–50, default 10). |
| query | string | Full-text search query across DOI metadata: titles, abstracts, creator names, subjects. Examples: "climate change", "CRISPR gene editing", "COVID-19 epidemiology". |
| client_id | string | Filter by DataCite repository/client ID. Examples: "cern.zenodo" (Zenodo), "figshare.ars" (figshare), "bl.mendeley" (Mendeley Data), "cos.osf" (Open Science Framework). Get IDs from datacite.client.search. |
| funder_id | string | Filter by funder ROR ID or Crossref Funder ID. Examples: "https://doi.org/10.13039/100000001" (US NSF), "https://doi.org/10.13039/100004440" (Wellcome Trust). |
| resource_type | string | Filter by DataCite resource type. "dataset" returns data files, "software" returns code repositories, "preprint" returns preprints (mostly arXiv/Zenodo), "text" includes general text outputs. |
| publication_year | integer | Filter by publication year (e.g. 2023). Returns only DOIs published in that calendar year. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)."
},
"sort": {
"enum": [
"relevance",
"published",
"-published",
"created",
"-created"
],
"type": "string",
"description": "Sort order for results. \"relevance\" (default) uses full-text score. \"-published\" returns newest first. \"published\" returns oldest first."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results per page (1–50, default 10)."
},
"query": {
"type": "string",
"description": "Full-text search query across DOI metadata: titles, abstracts, creator names, subjects. Examples: \"climate change\", \"CRISPR gene editing\", \"COVID-19 epidemiology\"."
},
"client_id": {
"type": "string",
"description": "Filter by DataCite repository/client ID. Examples: \"cern.zenodo\" (Zenodo), \"figshare.ars\" (figshare), \"bl.mendeley\" (Mendeley Data), \"cos.osf\" (Open Science Framework). Get IDs from datacite.client.search."
},
"funder_id": {
"type": "string",
"description": "Filter by funder ROR ID or Crossref Funder ID. Examples: \"https://doi.org/10.13039/100000001\" (US NSF), \"https://doi.org/10.13039/100004440\" (Wellcome Trust)."
},
"resource_type": {
"enum": [
"dataset",
"software",
"text",
"image",
"audiovisual",
"collection",
"preprint",
"journal-article",
"conference-paper",
"dissertation",
"report",
"model",
"workflow",
"computational-notebook",
"other"
],
"type": "string",
"description": "Filter by DataCite resource type. \"dataset\" returns data files, \"software\" returns code repositories, \"preprint\" returns preprints (mostly arXiv/Zenodo), \"text\" includes general text outputs."
},
"publication_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1900,
"description": "Filter by publication year (e.g. 2023). Returns only DOIs published in that calendar year."
}
},
"additionalProperties": false
}Get aggregated statistics across DataCite research outputs. Returns total DOI count, breakdown by resource type (datasets 70M+, software, preprints, journal articles, dissertations), registration year distribution, top contributing organizations (arXiv, CERN/Zenodo, Figshare, Mendeley), and top repositories. Optionally scope to a keyword query or specific resource type/year to get focused analytics. Useful for understanding the research landscape in a topic area — e.g. how many climate datasets exist, which repositories host the most neuroscience data.
| Argument | Type | Description |
|---|---|---|
| query | string | Optional keyword query to scope the statistics (e.g. "machine learning" returns stats only for ML-related DOIs). If omitted, stats cover all 70M+ DataCite works. |
| resource_type | string | Scope statistics to a single resource type (e.g. "dataset" to see dataset-specific provider breakdowns). |
| publication_year | integer | Scope statistics to a specific publication year. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"query": {
"type": "string",
"description": "Optional keyword query to scope the statistics (e.g. \"machine learning\" returns stats only for ML-related DOIs). If omitted, stats cover all 70M+ DataCite works."
},
"resource_type": {
"enum": [
"dataset",
"software",
"text",
"image",
"audiovisual",
"collection",
"preprint",
"journal-article",
"conference-paper",
"dissertation",
"report",
"model",
"workflow",
"computational-notebook",
"other"
],
"type": "string",
"description": "Scope statistics to a single resource type (e.g. \"dataset\" to see dataset-specific provider breakdowns)."
},
"publication_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1900,
"description": "Scope statistics to a specific publication year."
}
},
"additionalProperties": false
}Query US government statistical data (Census/ACS, BLS, IPEDS, and more) from Data USA. Group by one or more dimensions (e.g. State, Year, Industry) and retrieve one or more measures (e.g. Population, Median Household Income), optionally restricted to specific member keys. Returns dataset source/citation plus the resulting rows (Data USA, Deloitte/Datawheel/MIT Media Lab, US government open data)
| Argument | Type | Description |
|---|---|---|
| cube* | string | Data cube (dataset) name to query, e.g. "acs_yg_total_population_1". Look up names via datausa.reference.cubes. |
| sort | string | Sort order as "field" or "field.order" where order is asc/desc, e.g. "Population.desc". |
| limit | integer | Maximum number of result rows to return (default 100, max 1000). |
| offset | integer | Number of result rows to skip, for pagination (default 0). |
| include | string | Restrict results to specific member keys, formatted "Level:key,key;Level2:key" (e.g. "State:04000US06" for California only, or "Year:2021,2022"). Find member keys via datausa.reference.members. |
| measures* | array | Measure (metric) names to retrieve, e.g. ["Population"]. Look up available measures for a cube via datausa.reference.cubes. |
| drilldowns* | array | Dimension level names to group the results by, e.g. ["State"] or ["State", "Year"]. Look up available levels for a cube via datausa.reference.cubes. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"cube",
"drilldowns",
"measures"
],
"properties": {
"cube": {
"type": "string",
"minLength": 1,
"description": "Data cube (dataset) name to query, e.g. \"acs_yg_total_population_1\". Look up names via datausa.reference.cubes."
},
"sort": {
"type": "string",
"description": "Sort order as \"field\" or \"field.order\" where order is asc/desc, e.g. \"Population.desc\"."
},
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Maximum number of result rows to return (default 100, max 1000)."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Number of result rows to skip, for pagination (default 0)."
},
"include": {
"type": "string",
"description": "Restrict results to specific member keys, formatted \"Level:key,key;Level2:key\" (e.g. \"State:04000US06\" for California only, or \"Year:2021,2022\"). Find member keys via datausa.reference.members."
},
"measures": {
"type": "array",
"items": {
"type": "string"
},
"minItems": 1,
"description": "Measure (metric) names to retrieve, e.g. [\"Population\"]. Look up available measures for a cube via datausa.reference.cubes."
},
"drilldowns": {
"type": "array",
"items": {
"type": "string"
},
"minItems": 1,
"description": "Dimension level names to group the results by, e.g. [\"State\"] or [\"State\", \"Year\"]. Look up available levels for a cube via datausa.reference.cubes."
}
},
"additionalProperties": false
}Browse the 120+ data cubes (datasets) available on Data USA — population, income, education, employment, housing, and more. List cube names filterable by topic or keyword, or fetch full detail (available dimension levels and measures) for one specific cube by name, to plan a datausa.data.query call
| Argument | Type | Description |
|---|---|---|
| cube | string | Exact cube name to get full detail for (dimensions, levels, measures). Omit to list all available cubes instead. |
| limit | integer | When listing cubes: maximum number of cubes to return (default 50, max 200). |
| topic | string | When listing cubes: filter by topic, case-insensitive substring match (e.g. "Education", "Diversity"). Ignored when cube is set. |
| search | string | When listing cubes: filter by cube name or dataset name, case-insensitive substring match. Ignored when cube is set. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"cube": {
"type": "string",
"description": "Exact cube name to get full detail for (dimensions, levels, measures). Omit to list all available cubes instead."
},
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "When listing cubes: maximum number of cubes to return (default 50, max 200)."
},
"topic": {
"type": "string",
"description": "When listing cubes: filter by topic, case-insensitive substring match (e.g. \"Education\", \"Diversity\"). Ignored when cube is set."
},
"search": {
"type": "string",
"description": "When listing cubes: filter by cube name or dataset name, case-insensitive substring match. Ignored when cube is set."
}
},
"additionalProperties": false
}Look up the member values (e.g. specific states, counties, industries, or years) available for a dimension level within a Data USA cube, optionally filtered by name — use this to find the exact key to pass into datausa.data.query's include filter
| Argument | Type | Description |
|---|---|---|
| cube* | string | Data cube (dataset) name, e.g. "acs_yg_total_population_1". |
| level* | string | Dimension level name to list members for, e.g. "State" or "County". |
| limit | integer | Maximum number of members to return. |
| search | string | Filter members by name, case-insensitive substring match (e.g. "cali"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"cube",
"level"
],
"properties": {
"cube": {
"type": "string",
"minLength": 1,
"description": "Data cube (dataset) name, e.g. \"acs_yg_total_population_1\"."
},
"level": {
"type": "string",
"minLength": 1,
"description": "Dimension level name to list members for, e.g. \"State\" or \"County\"."
},
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Maximum number of members to return."
},
"search": {
"type": "string",
"description": "Filter members by name, case-insensitive substring match (e.g. \"cali\")."
}
},
"additionalProperties": false
}Search 3M+ computer science authors on DBLP. Returns author name, DBLP PID, profile URL, aliases, affiliations. Use for finding researchers, checking publication records, or discovering collaborators (DBLP, CC0)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of results (1-30, default 10) |
| query* | string | Author name to search (e.g. "Geoffrey Hinton", "Yann LeCun", "Ilya Sutskever") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 30,
"minimum": 1,
"description": "Number of results (1-30, default 10)"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Author name to search (e.g. \"Geoffrey Hinton\", \"Yann LeCun\", \"Ilya Sutskever\")"
}
},
"additionalProperties": false
}Search 7M+ computer science publications on DBLP by title, keyword, or topic. Returns title, authors, venue (NeurIPS, ICML, CVPR, ACL, etc.), year, DOI. The largest CS-specific bibliography — covers journals, conferences, and workshops (DBLP, CC0)
| Argument | Type | Description |
|---|---|---|
| year | integer | Filter by publication year (e.g. 2024) |
| limit | integer | Number of results (1-50, default 20) |
| query* | string | Search query — paper title, keyword, or topic (e.g. "transformer attention", "graph neural network", "LLM reasoning") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"year": {
"type": "integer",
"description": "Filter by publication year (e.g. 2024)"
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results (1-50, default 20)"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Search query — paper title, keyword, or topic (e.g. \"transformer attention\", \"graph neural network\", \"LLM reasoning\")"
}
},
"additionalProperties": false
}List all datasets published by a specific statistical agency on DBnomics. For example: provider WB has WDI (World Development Indicators, 396K+ series); provider OECD has QNA (quarterly national accounts), KEI, MEI, and 200+ more; provider IMF has WEO, BOP, IFS; Eurostat has 1,000+ datasets. Returns dataset codes, names, and series counts. Use the returned dataset codes with dbnomics.data.series to browse available time series. First call dbnomics.data.providers to get valid provider codes. No API key required — open data under CC-BY 4.0.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of datasets to return (1–200, default 50) |
| offset | integer | Pagination offset — number of datasets to skip (default 0) |
| provider_code* | string | DBnomics provider code (e.g. WB for World Bank, OECD, IMF, Eurostat, ECB). Use dbnomics.providers to list valid codes. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"provider_code"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Number of datasets to return (1–200, default 50)"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset — number of datasets to skip (default 0)"
},
"provider_code": {
"type": "string",
"minLength": 1,
"description": "DBnomics provider code (e.g. WB for World Bank, OECD, IMF, Eurostat, ECB). Use dbnomics.providers to list valid codes."
}
},
"additionalProperties": false
}Fetch the full time-series history for a specific series from DBnomics. Returns an array of {period, value} observations covering up to decades of data. Periods are formatted as YYYY for annual, YYYY-QN for quarterly, YYYY-MM for monthly. Example: provider=WB, dataset=WDI, series=A-US.NY.GDP.MKTP.CD → US nominal GDP in current USD annually. Example: provider=OECD, dataset=QNA, series=USA.B1GQ.LNBARSA.Q → US real GDP quarterly. Use last_n_periods to limit output to the most recent N observations. Covers data from IMF, World Bank, OECD, Eurostat, ECB, BIS, ILO, and 85+ other agencies. No API key required — open data under CC-BY 4.0.
| Argument | Type | Description |
|---|---|---|
| series_code* | string | Series code within the dataset (e.g. A-US.NY.GDP.MKTP.CD for US annual nominal GDP in WB/WDI). Use dbnomics.series to browse available codes. |
| dataset_code* | string | Dataset code within the provider (e.g. WDI, QNA). Use dbnomics.datasets to list codes. |
| provider_code* | string | DBnomics provider code (e.g. WB, OECD, IMF). Use dbnomics.providers to list codes. |
| last_n_periods | integer | Return only the last N observations (most recent). Omit to return the full history. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"provider_code",
"dataset_code",
"series_code"
],
"properties": {
"series_code": {
"type": "string",
"minLength": 1,
"description": "Series code within the dataset (e.g. A-US.NY.GDP.MKTP.CD for US annual nominal GDP in WB/WDI). Use dbnomics.series to browse available codes."
},
"dataset_code": {
"type": "string",
"minLength": 1,
"description": "Dataset code within the provider (e.g. WDI, QNA). Use dbnomics.datasets to list codes."
},
"provider_code": {
"type": "string",
"minLength": 1,
"description": "DBnomics provider code (e.g. WB, OECD, IMF). Use dbnomics.providers to list codes."
},
"last_n_periods": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Return only the last N observations (most recent). Omit to return the full history."
}
},
"additionalProperties": false
}List all statistical data providers available on DBnomics — the unified gateway to 93+ national and international agencies. Includes IMF, World Bank (WB), OECD, Eurostat, ECB, BIS, UN, ILO, CEPII, and many more. Returns provider codes, full names, and regions. Use the returned provider codes with dbnomics.data.datasets to explore available datasets. DBnomics aggregates over 46,000 datasets and 1.7 billion time series from official statistical sources. No API key required — open data under CC-BY 4.0.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of providers to return (1–200, default 100) |
| offset | integer | Pagination offset — number of providers to skip (default 0) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Number of providers to return (1–200, default 100)"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset — number of providers to skip (default 0)"
}
},
"additionalProperties": false
}List all time series available in a specific dataset on DBnomics, with pagination. Each series has a unique code, human-readable name, frequency, and dimension labels. Examples: WB/WDI contains NY.GDP.MKTP.CD (nominal GDP) for 200+ countries; OECD/QNA contains quarterly GDP growth for OECD members; EUROSTAT/nama_10_gdp contains GDP component breakdowns by EU country. Use the returned series codes with dbnomics.data.fetch_series to retrieve actual data. Supports pagination via limit (max 200) and offset. No API key required — open data under CC-BY 4.0.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of series to return (1–200, default 50) |
| offset | integer | Pagination offset — number of series to skip (default 0) |
| dataset_code* | string | Dataset code within the provider (e.g. WDI for World Development Indicators). Use dbnomics.datasets to list codes. |
| provider_code* | string | DBnomics provider code (e.g. WB, OECD, IMF). Use dbnomics.providers to list codes. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"provider_code",
"dataset_code"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Number of series to return (1–200, default 50)"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset — number of series to skip (default 0)"
},
"dataset_code": {
"type": "string",
"minLength": 1,
"description": "Dataset code within the provider (e.g. WDI for World Development Indicators). Use dbnomics.datasets to list codes."
},
"provider_code": {
"type": "string",
"minLength": 1,
"description": "DBnomics provider code (e.g. WB, OECD, IMF). Use dbnomics.providers to list codes."
}
},
"additionalProperties": false
}Access COVID-19 epidemiological signals from multiple data sources via CMU Delphi COVIDcast. Sources include: "jhu-csse" (JHU confirmed cases/deaths), "hhs" (HHS hospitalization admissions), "fb-survey" (COVID symptom surveys), "doctor-visits" (CLI doctor visits), and more. Signals can be filtered by geographic level (nation, state, county, MSA, HHS region) and date range. Returns signal value, standard error, sample size, and reporting lag. No auth — CMU Delphi open COVID surveillance data, unlimited free.
| Argument | Type | Description |
|---|---|---|
| signal* | string | Signal name within the data source. Examples for jhu-csse: "confirmed_cumulative_num", "confirmed_incidence_num", "deaths_cumulative_num", "deaths_incidence_num". For hhs: "confirmed_admissions_covid_1d". |
| geo_type | string | Geographic aggregation level (default: "state"). "nation"=US, "state"=US state, "county"=county FIPS, "msa"=metro area, "hrr"=hospital referral region, "hhs"=HHS region. |
| geo_value* | string | Geographic identifier. For state: 2-letter code (e.g. "ca", "ny"). For county: 5-digit FIPS (e.g. "06037"). For nation: "us". For hrr: HRR number. Case-insensitive. |
| time_type | string | Temporal resolution: "day" (daily, default) or "week" (weekly epiweek). |
| data_source* | string | Signal data source. Common values: "jhu-csse" (JHU confirmed cases/deaths), "cdc" (CDC surveillance), "hhs" (HHS hospitalization), "fb-survey" (COVID symptoms survey), "doctor-visits" (doctor visits with CLI). See https://cmu-delphi.github.io/delphi-epidata/api/covidcast_signals.html. |
| time_values* | string | Date(s) in YYYYMMDD format. Single: "20210101". Range: "20210101-20210131". Supports up to ~200 dates per call. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"data_source",
"signal",
"time_values",
"geo_value"
],
"properties": {
"signal": {
"type": "string",
"description": "Signal name within the data source. Examples for jhu-csse: \"confirmed_cumulative_num\", \"confirmed_incidence_num\", \"deaths_cumulative_num\", \"deaths_incidence_num\". For hhs: \"confirmed_admissions_covid_1d\"."
},
"geo_type": {
"enum": [
"nation",
"state",
"county",
"msa",
"hrr",
"hhs"
],
"type": "string",
"description": "Geographic aggregation level (default: \"state\"). \"nation\"=US, \"state\"=US state, \"county\"=county FIPS, \"msa\"=metro area, \"hrr\"=hospital referral region, \"hhs\"=HHS region."
},
"geo_value": {
"type": "string",
"description": "Geographic identifier. For state: 2-letter code (e.g. \"ca\", \"ny\"). For county: 5-digit FIPS (e.g. \"06037\"). For nation: \"us\". For hrr: HRR number. Case-insensitive."
},
"time_type": {
"enum": [
"day",
"week"
],
"type": "string",
"description": "Temporal resolution: \"day\" (daily, default) or \"week\" (weekly epiweek)."
},
"data_source": {
"type": "string",
"description": "Signal data source. Common values: \"jhu-csse\" (JHU confirmed cases/deaths), \"cdc\" (CDC surveillance), \"hhs\" (HHS hospitalization), \"fb-survey\" (COVID symptoms survey), \"doctor-visits\" (doctor visits with CLI). See https://cmu-delphi.github.io/delphi-epidata/api/covidcast_signals.html."
},
"time_values": {
"type": "string",
"description": "Date(s) in YYYYMMDD format. Single: \"20210101\". Range: \"20210101-20210131\". Supports up to ~200 dates per call."
}
},
"additionalProperties": false
}Retrieve daily COVID-19 hospitalization data from HHS Protect via CMU Delphi for US states. Returns adult and pediatric ICU/hospital patient counts, new daily admissions, and bed utilization metrics per state per day. Data available from 2020-07-15 onward. Supports multi-state queries and date ranges in YYYYMMDD format. Useful for tracking pandemic hospital burden over time. No auth — HHS/CMU Delphi open public health data, unlimited free.
| Argument | Type | Description |
|---|---|---|
| dates* | string | Date(s) in YYYYMMDD format. Single: "20210101". Range: "20210101-20210131". Daily HHS hospitalization data, available from 2020-07-15 onward. |
| states* | string | 2-letter US state abbreviation(s) (e.g. "ca", "ny", "tx"). Comma-separated for multiple states: "ca,ny,tx". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"states",
"dates"
],
"properties": {
"dates": {
"type": "string",
"description": "Date(s) in YYYYMMDD format. Single: \"20210101\". Range: \"20210101-20210131\". Daily HHS hospitalization data, available from 2020-07-15 onward."
},
"states": {
"type": "string",
"description": "2-letter US state abbreviation(s) (e.g. \"ca\", \"ny\", \"tx\"). Comma-separated for multiple states: \"ca,ny,tx\"."
}
},
"additionalProperties": false
}Retrieve CDC FluSurv-NET influenza hospitalization surveillance rates. Covers the national network ("network_all"), EIP sites ("network_eip"), IHSP sites ("network_ihsp"), and individual state networks. Returns hospitalization rates per 100,000 population overall and by age group (0-4, 5-17, 18-49, 50-64, 65+), sex (male, female), and flu type (A/B). Essential for tracking influenza severity and hospitalizations by season. No auth — CDC/CMU Delphi open data, unlimited free.
| Argument | Type | Description |
|---|---|---|
| epiweeks* | string | Epiweek(s) in YYYYWW format. Single: "202001". Range: "201940-202039" (full season). List: "202001,202010". |
| locations* | string | FluSurv-NET location(s). "network_all" (national), "network_eip" (EIP sites), "network_ihsp" (IHSP sites), or state name (e.g. "california", "new_york"). Comma-separated for multiple. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"locations",
"epiweeks"
],
"properties": {
"epiweeks": {
"type": "string",
"description": "Epiweek(s) in YYYYWW format. Single: \"202001\". Range: \"201940-202039\" (full season). List: \"202001,202010\"."
},
"locations": {
"type": "string",
"description": "FluSurv-NET location(s). \"network_all\" (national), \"network_eip\" (EIP sites), \"network_ihsp\" (IHSP sites), or state name (e.g. \"california\", \"new_york\"). Comma-separated for multiple."
}
},
"additionalProperties": false
}Retrieve weekly CDC ILINet influenza-like illness (ILI) surveillance data by US region. Covers national ("nat"), HHS regions (hhs1-hhs10), Census regions (cen1-cen9), and individual states. Returns weighted ILI (wILI) rate, unweighted ILI rate, patient counts, provider counts, and age-group breakdown (0-4, 5-24, 25-49, 50-64, 65+) for each epiweek. Historical data from 1997 onward. No auth — CMU Delphi open epidemiological data, unlimited free.
| Argument | Type | Description |
|---|---|---|
| issues | string | Filter to a specific issue/release epiweek (YYYYWW). Omit to get the most recent revision for each epiweek. |
| regions* | string | Comma-separated region codes: "nat" (national), "hhs1"-"hhs10" (HHS regions), "cen1"-"cen9" (Census regions), or 2-letter state abbreviation (e.g. "ca"). Multiple: "nat,hhs1". |
| epiweeks* | string | Epiweek(s) in YYYYWW format. Single: "202001". Range: "202001-202020". List: "202001,202010,202020". Epiweeks start Sunday; week 1 contains Jan 1. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"regions",
"epiweeks"
],
"properties": {
"issues": {
"type": "string",
"description": "Filter to a specific issue/release epiweek (YYYYWW). Omit to get the most recent revision for each epiweek."
},
"regions": {
"type": "string",
"description": "Comma-separated region codes: \"nat\" (national), \"hhs1\"-\"hhs10\" (HHS regions), \"cen1\"-\"cen9\" (Census regions), or 2-letter state abbreviation (e.g. \"ca\"). Multiple: \"nat,hhs1\"."
},
"epiweeks": {
"type": "string",
"description": "Epiweek(s) in YYYYWW format. Single: \"202001\". Range: \"202001-202020\". List: \"202001,202010,202020\". Epiweeks start Sunday; week 1 contains Jan 1."
}
},
"additionalProperties": false
}Get 5-minute-resolution CO2 emission intensity (grams CO2 per kWh) of the Danish electricity grid for a price zone (e.g. "DK1", "DK2"). Supports an optional date range (start_date/end_date); omit both to get the most recent readings. Useful for scheduling energy-intensive tasks during low-carbon periods. Data: Energinet, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of 5-minute CO2 readings to return (1-200, default 24) |
| end_date | string | End of the time range, ISO 8601 (e.g. "2026-09-02"). Omit for the most recent data. |
| price_area | string | Bidding/price zone to filter by, e.g. "DK1" (West Denmark), "DK2" (East Denmark), or a connected zone such as "DE", "NO2", "SE3". Omit to return all zones. |
| start_date | string | Start of the time range, ISO 8601 (e.g. "2026-09-01" or "2026-09-01T00:00"). Omit for the most recent data. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Maximum number of 5-minute CO2 readings to return (1-200, default 24)"
},
"end_date": {
"type": "string",
"description": "End of the time range, ISO 8601 (e.g. \"2026-09-02\"). Omit for the most recent data."
},
"price_area": {
"type": "string",
"description": "Bidding/price zone to filter by, e.g. \"DK1\" (West Denmark), \"DK2\" (East Denmark), or a connected zone such as \"DE\", \"NO2\", \"SE3\". Omit to return all zones."
},
"start_date": {
"type": "string",
"description": "Start of the time range, ISO 8601 (e.g. \"2026-09-01\" or \"2026-09-01T00:00\"). Omit for the most recent data."
}
},
"additionalProperties": false
}Get hourly Danish electricity production mix (central power, local power, offshore wind, onshore wind, hydro, solar) and gross consumption in MWh, per price zone (e.g. "DK1", "DK2"). Supports an optional date range (start_date/end_date); omit both to get the most recent hours. Data: Energinet, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of hourly production/consumption records to return (1-200, default 24) |
| end_date | string | End of the time range, ISO 8601 (e.g. "2026-09-02"). Omit for the most recent data. |
| price_area | string | Bidding/price zone to filter by, e.g. "DK1" (West Denmark), "DK2" (East Denmark), or a connected zone such as "DE", "NO2", "SE3". Omit to return all zones. |
| start_date | string | Start of the time range, ISO 8601 (e.g. "2026-09-01" or "2026-09-01T00:00"). Omit for the most recent data. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Maximum number of hourly production/consumption records to return (1-200, default 24)"
},
"end_date": {
"type": "string",
"description": "End of the time range, ISO 8601 (e.g. \"2026-09-02\"). Omit for the most recent data."
},
"price_area": {
"type": "string",
"description": "Bidding/price zone to filter by, e.g. \"DK1\" (West Denmark), \"DK2\" (East Denmark), or a connected zone such as \"DE\", \"NO2\", \"SE3\". Omit to return all zones."
},
"start_date": {
"type": "string",
"description": "Start of the time range, ISO 8601 (e.g. \"2026-09-01\" or \"2026-09-01T00:00\"). Omit for the most recent data."
}
},
"additionalProperties": false
}Get hourly day-ahead electricity spot prices for a Nordic/European bidding zone (e.g. "DK1", "DK2", or connected zones like "DE", "NO2", "SE3"). Returns each hour's price in both DKK/MWh and EUR/MWh. Supports an optional date range (start_date/end_date); omit both to get the most recent hours. Data: Energinet (Danish TSO), no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of hourly price points to return (1-200, default 24) |
| end_date | string | End of the time range, ISO 8601 (e.g. "2026-09-02"). Omit for the most recent data. |
| price_area | string | Bidding/price zone to filter by, e.g. "DK1" (West Denmark), "DK2" (East Denmark), or a connected zone such as "DE", "NO2", "SE3". Omit to return all zones. |
| start_date | string | Start of the time range, ISO 8601 (e.g. "2026-09-01" or "2026-09-01T00:00"). Omit for the most recent data. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Maximum number of hourly price points to return (1-200, default 24)"
},
"end_date": {
"type": "string",
"description": "End of the time range, ISO 8601 (e.g. \"2026-09-02\"). Omit for the most recent data."
},
"price_area": {
"type": "string",
"description": "Bidding/price zone to filter by, e.g. \"DK1\" (West Denmark), \"DK2\" (East Denmark), or a connected zone such as \"DE\", \"NO2\", \"SE3\". Omit to return all zones."
},
"start_date": {
"type": "string",
"description": "Start of the time range, ISO 8601 (e.g. \"2026-09-01\" or \"2026-09-01T00:00\"). Omit for the most recent data."
}
},
"additionalProperties": false
}List security advisories (from OSV) affecting a specific package version. Cross-ecosystem: npm, PyPI, Go, Maven, Cargo, NuGet. Returns advisory IDs with links to OSV.dev for full details. Complements osv.query for version-specific lookups.
| Argument | Type | Description |
|---|---|---|
| system* | string | Package ecosystem: npm, pypi, go, maven, cargo, or nuget |
| package* | string | Package name to check for security advisories |
| version* | string | Package version to check (e.g. 4.17.20) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"system",
"package",
"version"
],
"properties": {
"system": {
"enum": [
"npm",
"pypi",
"go",
"maven",
"cargo",
"nuget"
],
"type": "string",
"description": "Package ecosystem: npm, pypi, go, maven, cargo, or nuget"
},
"package": {
"type": "string",
"minLength": 1,
"description": "Package name to check for security advisories"
},
"version": {
"type": "string",
"minLength": 1,
"description": "Package version to check (e.g. 4.17.20)"
}
},
"additionalProperties": false
}Resolve the full transitive dependency tree for a package version. Returns all direct and indirect dependencies with versions and relation type. Reveals hidden supply chain depth (e.g. [email protected] has 67 transitive deps). Google deps.dev.
| Argument | Type | Description |
|---|---|---|
| system* | string | Package ecosystem: npm, pypi, go, maven, cargo, or nuget |
| package* | string | Package name (e.g. lodash, flask, github.com/gin-gonic/gin) |
| version* | string | Package version to resolve dependencies for (e.g. 4.17.21, 3.0.0) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"system",
"package",
"version"
],
"properties": {
"system": {
"enum": [
"npm",
"pypi",
"go",
"maven",
"cargo",
"nuget"
],
"type": "string",
"description": "Package ecosystem: npm, pypi, go, maven, cargo, or nuget"
},
"package": {
"type": "string",
"minLength": 1,
"description": "Package name (e.g. lodash, flask, github.com/gin-gonic/gin)"
},
"version": {
"type": "string",
"minLength": 1,
"description": "Package version to resolve dependencies for (e.g. 4.17.21, 3.0.0)"
}
},
"additionalProperties": false
}Get package metadata from Google deps.dev — all versions, default version, ecosystem. Covers npm, PyPI, Go, Maven, Cargo, NuGet (50M+ package versions). Complements npm/PyPI registries with cross-ecosystem unified view.
| Argument | Type | Description |
|---|---|---|
| system* | string | Package ecosystem: npm, pypi, go, maven, cargo, or nuget |
| package* | string | Package name (e.g. express, requests, gin-gonic/gin, log4j-core) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"system",
"package"
],
"properties": {
"system": {
"enum": [
"npm",
"pypi",
"go",
"maven",
"cargo",
"nuget"
],
"type": "string",
"description": "Package ecosystem: npm, pypi, go, maven, cargo, or nuget"
},
"package": {
"type": "string",
"minLength": 1,
"description": "Package name (e.g. express, requests, gin-gonic/gin, log4j-core)"
}
},
"additionalProperties": false
}⚡ ACTION: Execute source code in a sandboxed environment — 71 programming languages supported (Python, JavaScript, Java, C++, Go, Rust, C#, Bash, Ruby, PHP, and 60+ more). Returns stdout, stderr, execution time, and memory usage. Safe sandboxed execution with CPU/memory limits. Use code.languages to get language IDs (Judge0 CE)
| Argument | Type | Description |
|---|---|---|
| stdin | string | Standard input to feed to the program |
| language_id* | integer | Language ID from code.languages (e.g. 71=Python 3, 63=JavaScript, 62=Java, 54=C++, 60=Go, 73=Rust, 51=C#, 46=Bash). Call code.languages for full list |
| source_code* | string | Source code to execute |
| memory_limit | number | Memory limit in KB (default 128000 = 128MB) |
| cpu_time_limit | number | CPU time limit in seconds (default 5, max 15) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"language_id",
"source_code"
],
"properties": {
"stdin": {
"type": "string",
"description": "Standard input to feed to the program"
},
"language_id": {
"type": "integer",
"description": "Language ID from code.languages (e.g. 71=Python 3, 63=JavaScript, 62=Java, 54=C++, 60=Go, 73=Rust, 51=C#, 46=Bash). Call code.languages for full list"
},
"source_code": {
"type": "string",
"minLength": 1,
"description": "Source code to execute"
},
"memory_limit": {
"type": "number",
"description": "Memory limit in KB (default 128000 = 128MB)"
},
"cpu_time_limit": {
"type": "number",
"description": "CPU time limit in seconds (default 5, max 15)"
}
},
"additionalProperties": false
}List all 71 available programming languages and their IDs for code execution. Common IDs: 71=Python 3.8, 63=JavaScript (Node.js), 62=Java, 54=C++ (GCC), 60=Go, 73=Rust, 51=C#, 46=Bash. Returns full list with compiler/interpreter versions (Judge0 CE)
| Argument | Type | Description |
|---|---|---|
| filter | string | Optional filter — substring match on language name (e.g. "python", "java", "rust"). Returns all 71 languages if omitted |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"filter": {
"type": "string",
"description": "Optional filter — substring match on language name (e.g. \"python\", \"java\", \"rust\"). Returns all 71 languages if omitted"
}
},
"additionalProperties": false
}Get full details of a GitHub repository — description, stars, forks, language, topics, license, last update. Public repos only (GitHub API)
| Argument | Type | Description |
|---|---|---|
| repo* | string | Repository name (e.g. "react", "vscode") |
| owner* | string | Repository owner (e.g. "facebook", "microsoft") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"owner",
"repo"
],
"properties": {
"repo": {
"type": "string",
"description": "Repository name (e.g. \"react\", \"vscode\")"
},
"owner": {
"type": "string",
"description": "Repository owner (e.g. \"facebook\", \"microsoft\")"
}
},
"additionalProperties": false
}Search GitHub repositories by keyword, language, stars, topics. Returns name, description, stars, forks, language, license, owner. Sort by stars/forks/updated. 86K+ MCP repos, 372M+ total repos (GitHub API)
| Argument | Type | Description |
|---|---|---|
| sort | string | Sort by: stars (default), forks, updated, help-wanted-issues |
| limit | integer | Max results (1-30, default 10) |
| query* | string | Search query (e.g. "mcp server", "react framework", "language:python stars:>1000") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"sort": {
"enum": [
"stars",
"forks",
"updated",
"help-wanted-issues"
],
"type": "string",
"default": "stars",
"description": "Sort by: stars (default), forks, updated, help-wanted-issues"
},
"limit": {
"type": "integer",
"default": 10,
"maximum": 30,
"minimum": 1,
"description": "Max results (1-30, default 10)"
},
"query": {
"type": "string",
"description": "Search query (e.g. \"mcp server\", \"react framework\", \"language:python stars:>1000\")"
}
},
"additionalProperties": false
}Get a GitHub user profile — name, bio, public repos count, followers, company, location, join date. Works for users and organizations (GitHub API)
| Argument | Type | Description |
|---|---|---|
| username* | string | GitHub username (e.g. "torvalds", "whiteknightonhorse") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"username"
],
"properties": {
"username": {
"type": "string",
"description": "GitHub username (e.g. \"torvalds\", \"whiteknightonhorse\")"
}
},
"additionalProperties": false
}⚡ ACTION: Send a command to a physical device the calling agent owns via a linked vendor connection (e.g. turn a plug on/off, set an AC temperature). Numeric setpoints are bounds-checked against the device class's configured safety limits (config/device-classes.json); some device classes require confirm:true. Requires connection_id, device_id, command, value.
| Argument | Type | Description |
|---|---|---|
| value* | string | number | boolean | The value to set for this command |
| command* | string | The device's data-point code, e.g. 'switch_1', 'temp_set' |
| confirm | boolean | Must be true for any device class flagged confirm_required in the safety layer (locks, valves, etc.) |
| device_id* | string | The vendor's device id (from device.list) |
| connection_id* | string | Your device-connection id from /connect/device/connections |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"connection_id",
"device_id",
"command",
"value"
],
"properties": {
"value": {
"type": [
"string",
"number",
"boolean"
],
"description": "The value to set for this command"
},
"command": {
"type": "string",
"maxLength": 64,
"minLength": 1,
"description": "The device's data-point code, e.g. 'switch_1', 'temp_set'"
},
"confirm": {
"type": "boolean",
"description": "Must be true for any device class flagged confirm_required in the safety layer (locks, valves, etc.)"
},
"device_id": {
"type": "string",
"maxLength": 128,
"minLength": 1,
"description": "The vendor's device id (from device.list)"
},
"connection_id": {
"type": "string",
"format": "uuid",
"description": "Your device-connection id from /connect/device/connections"
}
},
"additionalProperties": false
}List every physical device reachable through the calling agent's own linked vendor accounts (Tuya first). Returns each device's vendor id, name, category, and online status, grouped by connection_id. Empty if the agent has not linked any vendor account yet -- see /connect/device/vendors.
| Argument | Type | Description |
|---|---|---|
| vendor | string | Filter to one linked vendor's devices, e.g. 'tuya' (omit to list all) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"vendor": {
"type": "string",
"description": "Filter to one linked vendor's devices, e.g. 'tuya' (omit to list all)"
}
},
"additionalProperties": false
}Read the current state (data points) of one physical device the calling agent owns via a linked vendor connection. Requires connection_id (from device.list) and device_id.
| Argument | Type | Description |
|---|---|---|
| device_id* | string | The vendor's device id (from device.list) |
| connection_id* | string | Your device-connection id from /connect/device/connections |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"connection_id",
"device_id"
],
"properties": {
"device_id": {
"type": "string",
"maxLength": 128,
"minLength": 1,
"description": "The vendor's device id (from device.list)"
},
"connection_id": {
"type": "string",
"format": "uuid",
"description": "Your device-connection id from /connect/device/connections"
}
},
"additionalProperties": false
}Extract article text, author, date, tags, sentiment, and images from any blog or news URL with multi-page support (Diffbot)
| Argument | Type | Description |
|---|---|---|
| url* | string | Article or blog post URL to extract text, author, and metadata |
| paging | boolean | Follow multi-page articles and concatenate text (default true) |
| maxTags | integer | Maximum number of topic tags to return (1-50, default 10) |
| timeout | integer | Request timeout in milliseconds (5000-30000, default 15000) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Article or blog post URL to extract text, author, and metadata"
},
"paging": {
"type": "boolean",
"description": "Follow multi-page articles and concatenate text (default true)"
},
"maxTags": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of topic tags to return (1-50, default 10)"
},
"timeout": {
"type": "integer",
"maximum": 30000,
"minimum": 5000,
"description": "Request timeout in milliseconds (5000-30000, default 15000)"
}
},
"additionalProperties": false
}Search Diffbot Knowledge Graph for products, organizations, people, and places — billions of structured entities from the web (Diffbot)
| Argument | Type | Description |
|---|---|---|
| from | integer | Pagination offset for results (default 0) |
| size | integer | Number of results to return (1-50, default 25) |
| type | string | Filter results by entity type in Knowledge Graph |
| query* | string | Diffbot Knowledge Graph query (DQL) — e.g. "type:Product title:iPhone" |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"from": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset for results (default 0)"
},
"size": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results to return (1-50, default 25)"
},
"type": {
"enum": [
"Product",
"Article",
"Organization",
"Person",
"Place",
"Event"
],
"type": "string",
"description": "Filter results by entity type in Knowledge Graph"
},
"query": {
"type": "string",
"description": "Diffbot Knowledge Graph query (DQL) — e.g. \"type:Product title:iPhone\""
}
},
"additionalProperties": false
}Auto-detect page type (product, article, image, video) and extract structured data from any URL using AI (Diffbot)
| Argument | Type | Description |
|---|---|---|
| url* | string | Web page URL to auto-detect type and extract structured data |
| mode | string | Force extraction mode instead of auto-detection |
| timeout | integer | Request timeout in milliseconds (5000-30000, default 15000) |
| fallback | string | Fallback extraction type if auto-detection fails |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Web page URL to auto-detect type and extract structured data"
},
"mode": {
"enum": [
"product",
"article",
"image",
"discussion",
"video"
],
"type": "string",
"description": "Force extraction mode instead of auto-detection"
},
"timeout": {
"type": "integer",
"maximum": 30000,
"minimum": 5000,
"description": "Request timeout in milliseconds (5000-30000, default 15000)"
},
"fallback": {
"enum": [
"article",
"product"
],
"type": "string",
"description": "Fallback extraction type if auto-detection fails"
}
},
"additionalProperties": false
}Extract structured product data from any e-commerce URL — title, price, brand, specs, images, reviews. Works on any retailer without custom integration (Diffbot)
| Argument | Type | Description |
|---|---|---|
| url* | string | Product page URL to extract data from (any e-commerce site) |
| timeout | integer | Request timeout in milliseconds (5000-30000, default 15000) |
| discussion | boolean | Include product reviews and comments (default false) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Product page URL to extract data from (any e-commerce site)"
},
"timeout": {
"type": "integer",
"maximum": 30000,
"minimum": 5000,
"description": "Request timeout in milliseconds (5000-30000, default 15000)"
},
"discussion": {
"type": "boolean",
"description": "Include product reviews and comments (default false)"
}
},
"additionalProperties": false
}Get COVID-19 statistics for a specific country by name or ISO code. Returns cases, deaths, recoveries, active, critical, per-million rates, tests, population, and flag. Covers 215+ countries and territories.
| Argument | Type | Description |
|---|---|---|
| strict | boolean | Use strict name matching instead of fuzzy search (default false) |
| country* | string | Country name, ISO2 code, or ISO3 code (e.g. "United States", "US", "USA", "Germany", "DE") |
| yesterday | boolean | Return yesterday's data instead of today's (default false) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country"
],
"properties": {
"strict": {
"type": "boolean",
"description": "Use strict name matching instead of fuzzy search (default false)"
},
"country": {
"type": "string",
"description": "Country name, ISO2 code, or ISO3 code (e.g. \"United States\", \"US\", \"USA\", \"Germany\", \"DE\")"
},
"yesterday": {
"type": "boolean",
"description": "Return yesterday's data instead of today's (default false)"
}
},
"additionalProperties": false
}Get aggregated global COVID-19 statistics: total cases (704M+), deaths, recoveries, active cases, critical cases, cases/deaths per million, tests administered, and affected countries count. Data from Worldometers and OWID.
| Argument | Type | Description |
|---|---|---|
| yesterday | boolean | Return yesterday's data instead of today's (default false) |
| twoDaysAgo | boolean | Return data from two days ago for comparison (default false) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"yesterday": {
"type": "boolean",
"description": "Return yesterday's data instead of today's (default false)"
},
"twoDaysAgo": {
"type": "boolean",
"description": "Return data from two days ago for comparison (default false)"
}
},
"additionalProperties": false
}Get historical time-series COVID-19 data for a country or globally. Returns daily case, death, and recovery counts. Useful for trend analysis and longitudinal research. Data from Johns Hopkins CSSE.
| Argument | Type | Description |
|---|---|---|
| country | string | Country name, ISO2/ISO3 code, or "all" for global aggregate (default "all") |
| lastdays | integer | Number of most recent days to return (default 30, max ~1500 for full history) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"country": {
"type": "string",
"description": "Country name, ISO2/ISO3 code, or \"all\" for global aggregate (default \"all\")"
},
"lastdays": {
"type": "integer",
"maximum": 1500,
"minimum": 1,
"description": "Number of most recent days to return (default 30, max ~1500 for full history)"
}
},
"additionalProperties": false
}Get US influenza surveillance data from CDC FluView. Returns weekly ILI (influenza-like illness) activity levels by age group, positive test rates by influenza type (A/B), and national summary. Updated weekly.
| Argument | Type | Description |
|---|---|---|
| weeks | integer | Number of most recent weeks to return (default all, up to 104). CDC ILI data is published weekly. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"weeks": {
"type": "integer",
"maximum": 104,
"minimum": 1,
"description": "Number of most recent weeks to return (default all, up to 104). CDC ILI data is published weekly."
}
},
"additionalProperties": false
}Retrieve full metadata for a single open access article from the Directory of Open Access Journals by its DOAJ article ID. Returns complete bibliographic record including all authors, journal title, ISSN, publication year and month, subject classifications, full keyword list, full abstract, DOI, and direct full-text URL. Use after doaj.articles.search to get complete details for a specific article.
| Argument | Type | Description |
|---|---|---|
| article_id* | string | DOAJ article identifier (32-character hex string, e.g. "000004687a3a411cb466625281f2ceb0"). Obtain from article_search results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"article_id"
],
"properties": {
"article_id": {
"type": "string",
"description": "DOAJ article identifier (32-character hex string, e.g. \"000004687a3a411cb466625281f2ceb0\"). Obtain from article_search results."
}
},
"additionalProperties": false
}Search 10 million+ open access articles indexed by the Directory of Open Access Journals (DOAJ). All articles are from peer-reviewed journals with immediate free access (no embargo, no paywall). Query by topic, author, title, DOI, or DOAJ query syntax. Returns title, authors, journal, year, subjects, keywords, abstract (up to 500 chars), DOI, and full-text URL for direct access to the paper. Ideal for finding freely readable academic literature across any discipline.
| Argument | Type | Description |
|---|---|---|
| page | integer | Result page number (1-based). Default: 1. |
| sort | string | Sort order. Examples: "title:asc", "created_date:desc". Default: relevance. |
| query* | string | Full-text search query for articles (e.g. "climate change mitigation", "title:CRISPR", "doi:10.1002/xyz"). Supports DOAJ query syntax. |
| page_size | integer | Number of articles per page (1–50). Default: 10. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Result page number (1-based). Default: 1."
},
"sort": {
"type": "string",
"description": "Sort order. Examples: \"title:asc\", \"created_date:desc\". Default: relevance."
},
"query": {
"type": "string",
"description": "Full-text search query for articles (e.g. \"climate change mitigation\", \"title:CRISPR\", \"doi:10.1002/xyz\"). Supports DOAJ query syntax."
},
"page_size": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of articles per page (1–50). Default: 10."
}
},
"additionalProperties": false
}Retrieve full metadata for a single open access journal from the Directory of Open Access Journals by its DOAJ journal ID. Returns comprehensive bibliographic and quality metadata including aims & scope URL, author instructions, peer-review process type, BOAI compliance status, APC pricing in EUR, preservation archiving services, and all ISSN variants. Use after doaj.journals.search to get complete details for a specific journal.
| Argument | Type | Description |
|---|---|---|
| journal_id* | string | DOAJ journal identifier (32-character hex string, e.g. "4b3d6d1e61534f8d84b64b5c5a9a4cd0"). Obtain from journal_search results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"journal_id"
],
"properties": {
"journal_id": {
"type": "string",
"description": "DOAJ journal identifier (32-character hex string, e.g. \"4b3d6d1e61534f8d84b64b5c5a9a4cd0\"). Obtain from journal_search results."
}
},
"additionalProperties": false
}Search the Directory of Open Access Journals (DOAJ) for peer-reviewed, fully open access journals. DOAJ indexes 20,000+ journals in 80+ languages from 129 countries — all free to read, CC-licensed, and vetted for quality. Query by topic, ISSN, publisher, or DOAJ query syntax. Returns title, ISSN, publisher, country, subject classification, license type, APC cost, preservation services (CLOCKSS, Portico, LOCKSS), and OA start year. Useful for finding publishing venues, checking journal legitimacy, and academic research.
| Argument | Type | Description |
|---|---|---|
| page | integer | Result page number (1-based). Default: 1. |
| sort | string | Sort order for results. Examples: "title:asc", "issn:desc". Default: relevance. |
| query* | string | Search query for journals (e.g. "ecology", "ISSN:1234-5678", "publisher:Elsevier"). Supports DOAJ query syntax. |
| page_size | integer | Number of journals per page (1–50). Default: 10. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Result page number (1-based). Default: 1."
},
"sort": {
"type": "string",
"description": "Sort order for results. Examples: \"title:asc\", \"issn:desc\". Default: relevance."
},
"query": {
"type": "string",
"description": "Search query for journals (e.g. \"ecology\", \"ISSN:1234-5678\", \"publisher:Elsevier\"). Supports DOAJ query syntax."
},
"page_size": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of journals per page (1–50). Default: 10."
}
},
"additionalProperties": false
}Convert PDF to Word (DOCX), Excel (XLSX), PowerPoint (PPTX), plain text (TXT), or images (JPG/PNG per page). Optional page range selection. Provide PDF as URL (ConvertAPI)
| Argument | Type | Description |
|---|---|---|
| pages | string | Page range to convert (e.g. "1-5", "1,3,5", default "all") |
| to_format* | string | Target format to convert PDF into |
| source_url* | string | Publicly accessible URL of the PDF to convert (e.g. "https://example.com/doc.pdf") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"source_url",
"to_format"
],
"properties": {
"pages": {
"type": "string",
"description": "Page range to convert (e.g. \"1-5\", \"1,3,5\", default \"all\")"
},
"to_format": {
"enum": [
"docx",
"xlsx",
"pptx",
"txt",
"jpg",
"png"
],
"type": "string",
"description": "Target format to convert PDF into"
},
"source_url": {
"type": "string",
"format": "uri",
"description": "Publicly accessible URL of the PDF to convert (e.g. \"https://example.com/doc.pdf\")"
}
},
"additionalProperties": false
}Convert Word (DOCX), Excel (XLSX), PowerPoint (PPTX), HTML, Markdown, RTF, ODT, or images (JPG/PNG/SVG) to PDF. Provide source file as URL. Custom page size and orientation. 200+ format pairs supported (ConvertAPI)
| Argument | Type | Description |
|---|---|---|
| page_size | string | PDF page size (default "a4") |
| source_url* | string | Publicly accessible URL of the source file to convert (e.g. "https://example.com/report.docx") |
| from_format* | string | Source file format |
| orientation | string | Page orientation (default "portrait") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"source_url",
"from_format"
],
"properties": {
"page_size": {
"enum": [
"a4",
"letter",
"legal",
"a3",
"a5"
],
"type": "string",
"description": "PDF page size (default \"a4\")"
},
"source_url": {
"type": "string",
"format": "uri",
"description": "Publicly accessible URL of the source file to convert (e.g. \"https://example.com/report.docx\")"
},
"from_format": {
"enum": [
"docx",
"xlsx",
"pptx",
"html",
"md",
"jpg",
"png",
"svg",
"rtf",
"odt",
"txt"
],
"type": "string",
"description": "Source file format"
},
"orientation": {
"enum": [
"portrait",
"landscape"
],
"type": "string",
"description": "Page orientation (default \"portrait\")"
}
},
"additionalProperties": false
}Render any web page URL to PDF with full JavaScript execution — custom viewport width, lazy content loading, wait delay. Returns PDF download URL (ConvertAPI)
| Argument | Type | Description |
|---|---|---|
| url* | string | Web page URL to render as PDF (e.g. "https://example.com") |
| delay | integer | Seconds to wait after page load before capturing (default 0) |
| viewport_width | integer | Browser viewport width in pixels (default 1280) |
| load_lazy_content | boolean | Scroll page to trigger lazy-loaded images (default false) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Web page URL to render as PDF (e.g. \"https://example.com\")"
},
"delay": {
"type": "integer",
"maximum": 30,
"minimum": 0,
"description": "Seconds to wait after page load before capturing (default 0)"
},
"viewport_width": {
"type": "integer",
"maximum": 3840,
"minimum": 320,
"description": "Browser viewport width in pixels (default 1280)"
},
"load_lazy_content": {
"type": "boolean",
"description": "Scroll page to trigger lazy-loaded images (default false)"
}
},
"additionalProperties": false
}List every dog breed in the Dog CEO database, each with its known sub-breeds (e.g. "bulldog" → ["boston", "english", "french"]). Set include_sub_breeds=false for a flat list of breed names only. No auth required, MIT licensed.
| Argument | Type | Description |
|---|---|---|
| include_sub_breeds | boolean | Include the nested sub-breeds array for each breed (default true). Set false for a flat list of breed names only. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"include_sub_breeds": {
"type": "boolean",
"description": "Include the nested sub-breeds array for each breed (default true). Set false for a flat list of breed names only."
}
},
"additionalProperties": false
}Get one or more random dog images, optionally filtered by breed and sub-breed (e.g. "hound" + "afghan"). Returns direct image URLs from the Dog CEO open-source image database. No auth required, MIT licensed.
| Argument | Type | Description |
|---|---|---|
| breed | string | Filter by dog breed (e.g. "hound", "labrador"). Omit for a random breed. |
| count | integer | Number of random images to return (1-50, default 1) |
| sub_breed | string | Filter by sub-breed within the given breed (e.g. "afghan" for breed "hound"). Requires breed to also be set. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"breed": {
"type": "string",
"maxLength": 50,
"minLength": 1,
"description": "Filter by dog breed (e.g. \"hound\", \"labrador\"). Omit for a random breed."
},
"count": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of random images to return (1-50, default 1)"
},
"sub_breed": {
"type": "string",
"maxLength": 50,
"minLength": 1,
"description": "Filter by sub-breed within the given breed (e.g. \"afghan\" for breed \"hound\"). Requires breed to also be set."
}
},
"additionalProperties": false
}List the known sub-breeds for a single dog breed (e.g. breed="terrier" → ["american", "australian", "bedlington", ...]). Returns an empty list if the breed has no recognized sub-breeds. No auth required, MIT licensed.
| Argument | Type | Description |
|---|---|---|
| breed* | string | Dog breed to look up sub-breeds for (e.g. "bulldog", "terrier") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"breed"
],
"properties": {
"breed": {
"type": "string",
"maxLength": 50,
"minLength": 1,
"description": "Dog breed to look up sub-breeds for (e.g. \"bulldog\", \"terrier\")"
}
},
"additionalProperties": false
}Check if domain names are available for registration. Returns availability status, registration price, and renewal price per domain. Supports all TLDs (.com, .io, .dev, .app, .ai, etc.) (NameSilo)
| Argument | Type | Description |
|---|---|---|
| domains* | string | Comma-separated domain names to check availability (e.g. "example.com,mysite.io,startup.dev") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"domains"
],
"properties": {
"domains": {
"type": "string",
"minLength": 3,
"description": "Comma-separated domain names to check availability (e.g. \"example.com,mysite.io,startup.dev\")"
}
},
"additionalProperties": false
}Get detailed info for a domain — nameservers, creation/expiry dates, lock status, auto-renew setting, WHOIS contact (NameSilo)
| Argument | Type | Description |
|---|---|---|
| domain* | string | Domain name to get details for (e.g. "example.com") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"minLength": 3,
"description": "Domain name to get details for (e.g. \"example.com\")"
}
},
"additionalProperties": false
}List all domains registered in the account with expiry dates and status (NameSilo)
| Argument | Type | Description |
|---|---|---|
| filter | string | Optional keyword to filter domain list |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"filter": {
"type": "string",
"description": "Optional keyword to filter domain list"
}
},
"additionalProperties": false
}Get current registration, renewal, and transfer prices for popular TLDs (.com, .net, .org, .io, .dev, .app, .ai, .co, .xyz, .tech, etc.) (NameSilo)
| Argument | Type | Description |
|---|---|---|
| tld | string | Optional TLD to filter (e.g. "com", "io"). Omit for all popular TLDs |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"tld": {
"type": "string",
"description": "Optional TLD to filter (e.g. \"com\", \"io\"). Omit for all popular TLDs"
}
},
"additionalProperties": false
}⚡ ACTION: Purchase and register a domain name (1-10 years). Includes free WHOIS privacy protection. Domain is registered instantly. Prices: .com ~$21, .org ~$12, .dev ~$18, .io ~$42 (NameSilo)
| Argument | Type | Description |
|---|---|---|
| years | integer | Registration period in years (default 1, max 10) |
| domain* | string | Domain name to register (e.g. "mybusiness.com") |
| private | boolean | Enable free WHOIS privacy (default true) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"domain"
],
"properties": {
"years": {
"type": "integer",
"maximum": 10,
"minimum": 1,
"description": "Registration period in years (default 1, max 10)"
},
"domain": {
"type": "string",
"minLength": 3,
"description": "Domain name to register (e.g. \"mybusiness.com\")"
},
"private": {
"type": "boolean",
"description": "Enable free WHOIS privacy (default true)"
}
},
"additionalProperties": false
}Browse digitized items from US archives by subject or topic keyword using DPLA subject vocabulary. Subjects include broad categories (Women, Architecture, Photography) and historical topics (Civil War, Native Americans, Abolitionists). Optionally filter by media type. Returns paginated list of matching items with title, creator, date, type, thumbnail, and direct URL.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination, starting at 1 (default: 1) |
| type | string | Optionally narrow results to a specific media type: image, text, sound, moving image, or physical object |
| subject* | string | Subject or topic to browse (e.g. "Photography", "Women", "Architecture", "Native Americans"). Case-insensitive exact match against DPLA subject vocabulary. |
| page_size | integer | Number of items per page, 1–50 (default: 10) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"subject"
],
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination, starting at 1 (default: 1)"
},
"type": {
"enum": [
"image",
"text",
"sound",
"moving image",
"physical object"
],
"type": "string",
"description": "Optionally narrow results to a specific media type: image, text, sound, moving image, or physical object"
},
"subject": {
"type": "string",
"description": "Subject or topic to browse (e.g. \"Photography\", \"Women\", \"Architecture\", \"Native Americans\"). Case-insensitive exact match against DPLA subject vocabulary."
},
"page_size": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of items per page, 1–50 (default: 10)"
}
},
"additionalProperties": false
}Fetch the full metadata record for a specific DPLA item by its 32-character hex identifier. Returns complete fields: title, creator, date, type, format, subject tags, language, rights category, contributing institution, original item URL, and thumbnail URL. Use after a search call to retrieve complete details for a specific digitized object.
| Argument | Type | Description |
|---|---|---|
| item_id* | string | DPLA item identifier (32-character hex string, e.g. "eb930b2f9ad638f921429e5e898f0a34"). Obtain from search results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"item_id"
],
"properties": {
"item_id": {
"type": "string",
"description": "DPLA item identifier (32-character hex string, e.g. \"eb930b2f9ad638f921429e5e898f0a34\"). Obtain from search results."
}
},
"additionalProperties": false
}Get top facet counts (subjects, providers/institutions, media types, US states) across the entire DPLA collection or scoped to a search query. Useful for discovering what subject areas, contributing libraries, or media types dominate a given topic. Returns ranked term lists with counts for four dimensions: subject, provider, type, and state.
| Argument | Type | Description |
|---|---|---|
| q | string | Optional query to scope the facets (e.g. "civil war" returns top subjects/providers/types within that query). Omit for global top facets. |
| facet_size | integer | Number of top terms to return per facet dimension, 1–50 (default: 10) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"q": {
"type": "string",
"description": "Optional query to scope the facets (e.g. \"civil war\" returns top subjects/providers/types within that query). Omit for global top facets."
},
"facet_size": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of top terms to return per facet dimension, 1–50 (default: 10)"
}
},
"additionalProperties": false
}Search 50M+ digitized items from US libraries, archives, and museums via the Digital Public Library of America. Filter by media type (image, text, sound, moving image), date range, US state, or contributing institution. Results include title, creator, date, type, subject tags, rights, and direct links to the original item and thumbnail. Sources include the Smithsonian, Library of Congress, NYPL, state digitization programs, and 2,000+ contributing institutions. Returns facets for top subjects, providers, and types within the result set.
| Argument | Type | Description |
|---|---|---|
| q | string | Full-text search query across title, description, creator, and subject fields (e.g. "civil war photographs", "Thomas Jefferson") |
| page | integer | Page number for pagination, starting at 1 (default: 1) |
| type | string | Filter by media type: image (photographs, drawings), text (books, manuscripts), sound (audio recordings), moving image (film/video), physical object |
| state | string | Filter by US state name where the item originated or is about (e.g. "Massachusetts", "California") |
| date_end | string | Filter items created on or before this year (e.g. "1900"). Use with date_begin for a range. |
| provider | string | Filter by contributing institution name (e.g. "Smithsonian Institution", "The New York Public Library") |
| page_size | integer | Number of items per page, 1–50 (default: 10) |
| date_begin | string | Filter items created on or after this year (e.g. "1850"). Use with date_end for a range. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"q": {
"type": "string",
"description": "Full-text search query across title, description, creator, and subject fields (e.g. \"civil war photographs\", \"Thomas Jefferson\")"
},
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination, starting at 1 (default: 1)"
},
"type": {
"enum": [
"image",
"text",
"sound",
"moving image",
"physical object"
],
"type": "string",
"description": "Filter by media type: image (photographs, drawings), text (books, manuscripts), sound (audio recordings), moving image (film/video), physical object"
},
"state": {
"type": "string",
"description": "Filter by US state name where the item originated or is about (e.g. \"Massachusetts\", \"California\")"
},
"date_end": {
"type": "string",
"description": "Filter items created on or before this year (e.g. \"1900\"). Use with date_begin for a range."
},
"provider": {
"type": "string",
"description": "Filter by contributing institution name (e.g. \"Smithsonian Institution\", \"The New York Public Library\")"
},
"page_size": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of items per page, 1–50 (default: 10)"
},
"date_begin": {
"type": "string",
"description": "Filter items created on or after this year (e.g. \"1850\"). Use with date_end for a range."
}
},
"additionalProperties": false
}Retrieve weekly county-level drought statistics from the USDA/NOAA US Drought Monitor for a specific county or all counties in a US state. Pass a 5-digit FIPS code (e.g. "48113" for Dallas County TX, "06037" for Los Angeles County CA) to get a single county, or a 2-letter state abbreviation (e.g. "TX", "CA", "NE") to get all counties in that state. Returns drought severity by area (square miles) at each drought level (D0–D4) per week. Useful for granular agricultural impact assessment, insurance risk modeling, and local government drought planning.
| Argument | Type | Description |
|---|---|---|
| aoi* | string | Area of interest: either a 5-digit county FIPS code (e.g. "48113" for Dallas County TX, "06037" for Los Angeles County CA) or a 2-letter state abbreviation to get all counties in a state (e.g. "TX", "CA", "NE"). |
| end_date* | string | End date for the query range in YYYY-MM-DD format (e.g. "2022-08-14"). Maximum range is 1 year from start_date. |
| start_date* | string | Start date for the query range in YYYY-MM-DD format (e.g. "2022-08-01"). USDM publishes weekly on Tuesdays; dates snap to the nearest release. |
| statistics_type | string | How drought levels are counted: "cumulative" (default) means each D-level includes worse levels; "categorical" means each level is non-overlapping and mutually exclusive. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"aoi",
"start_date",
"end_date"
],
"properties": {
"aoi": {
"type": "string",
"description": "Area of interest: either a 5-digit county FIPS code (e.g. \"48113\" for Dallas County TX, \"06037\" for Los Angeles County CA) or a 2-letter state abbreviation to get all counties in a state (e.g. \"TX\", \"CA\", \"NE\")."
},
"end_date": {
"type": "string",
"description": "End date for the query range in YYYY-MM-DD format (e.g. \"2022-08-14\"). Maximum range is 1 year from start_date."
},
"start_date": {
"type": "string",
"description": "Start date for the query range in YYYY-MM-DD format (e.g. \"2022-08-01\"). USDM publishes weekly on Tuesdays; dates snap to the nearest release."
},
"statistics_type": {
"enum": [
"cumulative",
"categorical"
],
"type": "string",
"description": "How drought levels are counted: \"cumulative\" (default) means each D-level includes worse levels; \"categorical\" means each level is non-overlapping and mutually exclusive."
}
},
"additionalProperties": false
}Find US counties that experienced at least N weeks of drought at or above a specified drought severity level during a given time period, using data from the USDA/NOAA US Drought Monitor. Filter by state (or all states), drought level (D0–D4), minimum weeks threshold, and whether to count consecutive or total (non-consecutive) weeks. Returns a list of matching counties with their FIPS codes, state, and week counts. Useful for identifying persistent drought-affected regions, prioritizing disaster relief, analyzing multi-year drought patterns, and supporting agricultural or water resource planning.
| Argument | Type | Description |
|---|---|---|
| state | string | Two-letter US state abbreviation to filter results to one state (e.g. "NE", "TX", "CA"). Leave empty to return counties from all states. |
| end_date* | string | End date for the analysis period in YYYY-MM-DD format (e.g. "2023-01-01"). Maximum range is 1 year from start_date. |
| min_weeks* | integer | Minimum number of weeks that a county must have been at or above the drought_level threshold to be included in results (e.g. 4 for counties with at least 4 weeks of drought). |
| start_date* | string | Start date for the analysis period in YYYY-MM-DD format (e.g. "2022-01-01"). Maximum range is 1 year from start_date. |
| consecutive | boolean | If true, counts only consecutive weeks in drought; if false or omitted (default), counts all weeks (consecutive + non-consecutive) spent at or above the threshold. |
| drought_level* | integer | Minimum drought severity level to count: 0=D0 Abnormally Dry, 1=D1 Moderate Drought, 2=D2 Severe Drought, 3=D3 Extreme Drought, 4=D4 Exceptional Drought. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"drought_level",
"min_weeks",
"start_date",
"end_date"
],
"properties": {
"state": {
"type": "string",
"description": "Two-letter US state abbreviation to filter results to one state (e.g. \"NE\", \"TX\", \"CA\"). Leave empty to return counties from all states."
},
"end_date": {
"type": "string",
"description": "End date for the analysis period in YYYY-MM-DD format (e.g. \"2023-01-01\"). Maximum range is 1 year from start_date."
},
"min_weeks": {
"type": "integer",
"minimum": 1,
"description": "Minimum number of weeks that a county must have been at or above the drought_level threshold to be included in results (e.g. 4 for counties with at least 4 weeks of drought)."
},
"start_date": {
"type": "string",
"description": "Start date for the analysis period in YYYY-MM-DD format (e.g. \"2022-01-01\"). Maximum range is 1 year from start_date."
},
"consecutive": {
"type": "boolean",
"description": "If true, counts only consecutive weeks in drought; if false or omitted (default), counts all weeks (consecutive + non-consecutive) spent at or above the threshold."
},
"drought_level": {
"type": "integer",
"maximum": 4,
"minimum": 0,
"description": "Minimum drought severity level to count: 0=D0 Abnormally Dry, 1=D1 Moderate Drought, 2=D2 Severe Drought, 3=D3 Extreme Drought, 4=D4 Exceptional Drought."
}
},
"additionalProperties": false
}Retrieve the Drought Severity and Coverage Index (DSCI) for the US from the USDA/NOAA US Drought Monitor. DSCI is a single composite score per week ranging from 0 (no drought anywhere) to 500 (100% of the area in D4 Exceptional Drought), calculated as the weighted sum D0%×1 + D1%×2 + D2%×3 + D3%×4 + D4%×5. Returns DSCI values for both CONUS and the total US (including Alaska/Hawaii/territories) with a descriptive severity classification (none/low/moderate/severe/extreme/exceptional). Useful for tracking drought trends over time, comparing drought years, and integrating a single drought severity metric into dashboards or alerts.
| Argument | Type | Description |
|---|---|---|
| end_date* | string | End date for the query range in YYYY-MM-DD format (e.g. "2024-01-08"). Maximum range is 1 year from start_date. |
| start_date* | string | Start date for the query range in YYYY-MM-DD format (e.g. "2024-01-01"). USDM publishes weekly on Tuesdays; dates snap to the nearest release. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"start_date",
"end_date"
],
"properties": {
"end_date": {
"type": "string",
"description": "End date for the query range in YYYY-MM-DD format (e.g. \"2024-01-08\"). Maximum range is 1 year from start_date."
},
"start_date": {
"type": "string",
"description": "Start date for the query range in YYYY-MM-DD format (e.g. \"2024-01-01\"). USDM publishes weekly on Tuesdays; dates snap to the nearest release."
}
},
"additionalProperties": false
}Retrieve weekly US national drought statistics from the USDA/NOAA US Drought Monitor for a date range. Returns drought coverage by severity level (D0 Abnormally Dry through D4 Exceptional Drought) for CONUS and the total US (including Alaska/Hawaii/territories), reported as either square miles ("area") or percent of total land area ("percent"). Choose "cumulative" statistics_type to see how much area is in each level or worse (D1 includes D2+D3+D4); choose "categorical" for non-overlapping, mutually exclusive counts. Data is published weekly on Tuesdays — dates automatically snap to the nearest valid release. Maximum query window: 1 year. Useful for climate risk analysis, agricultural planning, and drought trend monitoring.
| Argument | Type | Description |
|---|---|---|
| metric | string | Measurement unit: "area" returns drought coverage in square miles (default); "percent" returns drought coverage as a percentage of total US land area. |
| end_date* | string | End date for the query range in YYYY-MM-DD format (e.g. "2024-01-08"). Maximum range is 1 year from start_date. |
| start_date* | string | Start date for the query range in YYYY-MM-DD format (e.g. "2024-01-01"). USDM publishes weekly on Tuesdays; dates snap to the nearest release. |
| statistics_type | string | How drought levels are counted: "cumulative" (default) means each D-level includes worse levels (D1 includes D1+D2+D3+D4); "categorical" means each level is non-overlapping and mutually exclusive. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"start_date",
"end_date"
],
"properties": {
"metric": {
"enum": [
"area",
"percent"
],
"type": "string",
"description": "Measurement unit: \"area\" returns drought coverage in square miles (default); \"percent\" returns drought coverage as a percentage of total US land area."
},
"end_date": {
"type": "string",
"description": "End date for the query range in YYYY-MM-DD format (e.g. \"2024-01-08\"). Maximum range is 1 year from start_date."
},
"start_date": {
"type": "string",
"description": "Start date for the query range in YYYY-MM-DD format (e.g. \"2024-01-01\"). USDM publishes weekly on Tuesdays; dates snap to the nearest release."
},
"statistics_type": {
"enum": [
"cumulative",
"categorical"
],
"type": "string",
"description": "How drought levels are counted: \"cumulative\" (default) means each D-level includes worse levels (D1 includes D1+D2+D3+D4); \"categorical\" means each level is non-overlapping and mutually exclusive."
}
},
"additionalProperties": false
}Get a DuckDuckGo Instant Answer digest for a query: Wikipedia-sourced abstract, direct answer (for calculations/conversions/facts), dictionary definition, entity type, and infobox key-value facts when available. Best for quick factual lookups on well-known topics, people, places, and things. Data: DuckDuckGo Instant Answer API (api.duckduckgo.com), no auth required.
| Argument | Type | Description |
|---|---|---|
| query* | string | Search query or topic to look up (e.g. "Python programming language", "coffee") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"maxLength": 500,
"minLength": 1,
"description": "Search query or topic to look up (e.g. \"Python programming language\", \"coffee\")"
}
},
"additionalProperties": false
}Get DuckDuckGo related/disambiguation topics for a query — a flattened list of related concepts, categories, or alternate meanings, each with a title and DuckDuckGo link. Useful for exploring ambiguous or broad queries (e.g. a name that maps to multiple people, or a category like "coffee"). Data: DuckDuckGo Instant Answer API (api.duckduckgo.com), no auth required.
| Argument | Type | Description |
|---|---|---|
| query* | string | Search query or topic to look up (e.g. "Python programming language", "coffee") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"maxLength": 500,
"minLength": 1,
"description": "Search query or topic to look up (e.g. \"Python programming language\", \"coffee\")"
}
},
"additionalProperties": false
}Get the most recent reading (date, value, quality flag) for one EA hydrology data series, identified by the measure_id from ea-hydrology.station_measures. Data: environment.data.gov.uk/hydrology, UK Open Government Licence v3.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| measure_id* | string | Measure identifier — the `measure_id` (notation) returned by ea-hydrology.station_measures, e.g. "052d0819-2a32-47df-9b99-c243c9c8235b-flow-i-900-m3s-qualified". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"measure_id"
],
"properties": {
"measure_id": {
"type": "string",
"maxLength": 300,
"minLength": 1,
"description": "Measure identifier — the `measure_id` (notation) returned by ea-hydrology.station_measures, e.g. \"052d0819-2a32-47df-9b99-c243c9c8235b-flow-i-900-m3s-qualified\"."
}
},
"additionalProperties": false
}Get a date-ranged time series of readings (date, value, quality, completeness) for one EA hydrology data series, identified by the measure_id from ea-hydrology.station_measures. Requires min_date and max_date (YYYY-MM-DD, inclusive). Data: environment.data.gov.uk/hydrology, UK Open Government Licence v3.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max readings to return (default 500, max 2000). |
| max_date* | string | End date (inclusive), format YYYY-MM-DD. |
| min_date* | string | Start date (inclusive), format YYYY-MM-DD. |
| measure_id* | string | Measure identifier returned by ea-hydrology.station_measures. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"measure_id",
"min_date",
"max_date"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 2000,
"minimum": 1,
"description": "Max readings to return (default 500, max 2000)."
},
"max_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "End date (inclusive), format YYYY-MM-DD."
},
"min_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Start date (inclusive), format YYYY-MM-DD."
},
"measure_id": {
"type": "string",
"maxLength": 300,
"minLength": 1,
"description": "Measure identifier returned by ea-hydrology.station_measures."
}
},
"additionalProperties": false
}List the data series (measures) recorded at one EA hydrology station — e.g. 15-minute instantaneous flow, daily mean/min/max level, daily total rainfall — identified by the station_id from ea-hydrology.station_search. Optional parameter filter (flow, level, rainfall, TEMPERATURE — note TEMPERATURE is uppercase upstream). Returns measure_id, period, value type, and unit for each series — use measure_id with ea-hydrology.readings_latest or ea-hydrology.readings_range. Data: environment.data.gov.uk/hydrology, UK Open Government Licence v3.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| parameter | string | Filter measures by parameter type. Note: TEMPERATURE must be uppercase, the others lowercase — confirmed upstream data quirk, not a typo. |
| station_id* | string | Station identifier — the `station_id` (notation/GUID) returned by ea-hydrology.station_search, e.g. "052d0819-2a32-47df-9b99-c243c9c8235b". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"station_id"
],
"properties": {
"parameter": {
"enum": [
"flow",
"level",
"rainfall",
"TEMPERATURE"
],
"type": "string",
"description": "Filter measures by parameter type. Note: TEMPERATURE must be uppercase, the others lowercase — confirmed upstream data quirk, not a typo."
},
"station_id": {
"type": "string",
"maxLength": 100,
"minLength": 1,
"description": "Station identifier — the `station_id` (notation/GUID) returned by ea-hydrology.station_search, e.g. \"052d0819-2a32-47df-9b99-c243c9c8235b\"."
}
},
"additionalProperties": false
}Search the UK Environment Agency hydrology monitoring network for river, groundwater, and rainfall stations, filterable by river name, freetext label search, or what the station measures (waterFlow, waterLevel, rainfall, temperature, groundwaterLevel). Returns station_id, name, river/catchment, coordinates, and measure count — use the station_id with ea-hydrology.station_measures to see its available data series. Data: environment.data.gov.uk/hydrology, UK Open Government Licence v3.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max stations to return (default 20, max 200). |
| search | string | Freetext search matching the station label/name (e.g. "Farmoor"). |
| river_name | string | Filter stations by river name, partial match (e.g. "River Thames"). |
| observed_property | string | Filter stations by what they measure: waterFlow (river flow m3/s), waterLevel (river level), rainfall, temperature, or groundwaterLevel (borehole). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Max stations to return (default 20, max 200)."
},
"search": {
"type": "string",
"maxLength": 200,
"description": "Freetext search matching the station label/name (e.g. \"Farmoor\")."
},
"river_name": {
"type": "string",
"maxLength": 200,
"description": "Filter stations by river name, partial match (e.g. \"River Thames\")."
},
"observed_property": {
"enum": [
"waterFlow",
"waterLevel",
"rainfall",
"temperature",
"groundwaterLevel"
],
"type": "string",
"description": "Filter stations by what they measure: waterFlow (river flow m3/s), waterLevel (river level), rainfall, temperature, or groundwaterLevel (borehole)."
}
},
"additionalProperties": false
}Active fire hotspots detected by NASA satellites (VIIRS, MODIS) — latitude, longitude, brightness, confidence, fire radiative power. Filter by bounding box and days. Near real-time updates (NASA FIRMS)
| Argument | Type | Description |
|---|---|---|
| days | integer | Number of days of data (1-5, default 1) |
| east* | number | Eastern longitude of bounding box (e.g. -114) |
| west* | number | Western longitude of bounding box (e.g. -125 for California) |
| north* | number | Northern latitude of bounding box (e.g. 42) |
| south* | number | Southern latitude of bounding box (e.g. 32) |
| source | string | Satellite sensor: VIIRS_SNPP_NRT (default, highest resolution), MODIS_NRT (legacy) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"west",
"south",
"east",
"north"
],
"properties": {
"days": {
"type": "integer",
"maximum": 5,
"minimum": 1,
"description": "Number of days of data (1-5, default 1)"
},
"east": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Eastern longitude of bounding box (e.g. -114)"
},
"west": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Western longitude of bounding box (e.g. -125 for California)"
},
"north": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Northern latitude of bounding box (e.g. 42)"
},
"south": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Southern latitude of bounding box (e.g. 32)"
},
"source": {
"enum": [
"VIIRS_SNPP_NRT",
"VIIRS_NOAA20_NRT",
"VIIRS_NOAA21_NRT",
"MODIS_NRT"
],
"type": "string",
"description": "Satellite sensor: VIIRS_SNPP_NRT (default, highest resolution), MODIS_NRT (legacy)"
}
},
"additionalProperties": false
}Count earthquakes matching search criteria without returning full data — useful for statistics and monitoring thresholds (USGS)
| Argument | Type | Description |
|---|---|---|
| endtime | string | End date in ISO 8601 format (default: now) |
| latitude | number | Center latitude for radius search |
| longitude | number | Center longitude for radius search |
| starttime | string | Start date in ISO 8601 format, e.g. "2026-01-01" |
| maxradiuskm | number | Search radius in kilometers from lat/lon center |
| maxmagnitude | number | Maximum magnitude on Richter scale |
| minmagnitude | number | Minimum magnitude on Richter scale |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"endtime": {
"type": "string",
"description": "End date in ISO 8601 format (default: now)"
},
"latitude": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Center latitude for radius search"
},
"longitude": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Center longitude for radius search"
},
"starttime": {
"type": "string",
"description": "Start date in ISO 8601 format, e.g. \"2026-01-01\""
},
"maxradiuskm": {
"type": "number",
"maximum": 20001.6,
"minimum": 0,
"description": "Search radius in kilometers from lat/lon center"
},
"maxmagnitude": {
"type": "number",
"description": "Maximum magnitude on Richter scale"
},
"minmagnitude": {
"type": "number",
"description": "Minimum magnitude on Richter scale"
}
},
"additionalProperties": false
}Get real-time earthquake feed by magnitude threshold (significant/4.5+/2.5+/1.0+/all) and time window (hour/day/week/month) — updated every minute (USGS)
| Argument | Type | Description |
|---|---|---|
| magnitude | string | Magnitude threshold: "significant", "4.5", "2.5", "1.0", or "all" (default: "4.5") |
| timeframe | string | Time window: "hour", "day" (default), "week", or "month" |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"magnitude": {
"enum": [
"significant",
"4.5",
"2.5",
"1.0",
"all"
],
"type": "string",
"description": "Magnitude threshold: \"significant\", \"4.5\", \"2.5\", \"1.0\", or \"all\" (default: \"4.5\")"
},
"timeframe": {
"enum": [
"hour",
"day",
"week",
"month"
],
"type": "string",
"description": "Time window: \"hour\", \"day\" (default), \"week\", or \"month\""
}
},
"additionalProperties": false
}Search global earthquakes by time, location, magnitude, and depth — returns magnitude, coordinates, tsunami flags, PAGER alerts, and felt reports. 100+ years of data, updated every minute (USGS)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of results (default 20, max 200) |
| endtime | string | End date in ISO 8601 format (default: now) |
| orderby | string | Sort order: "time" (newest first, default), "time-asc", "magnitude" (largest first), "magnitude-asc" |
| latitude | number | Center latitude for radius search (-90 to 90) |
| maxdepth | number | Maximum depth in kilometers (max 1000) |
| mindepth | number | Minimum depth in kilometers (negative = above sea level) |
| longitude | number | Center longitude for radius search (-180 to 180) |
| starttime | string | Start date in ISO 8601 format, e.g. "2026-01-01" or "2026-01-01T00:00:00" |
| alertlevel | string | PAGER alert level filter: green (no damage), yellow, orange, red (significant damage/casualties) |
| maxradiuskm | number | Search radius in kilometers from lat/lon center point (max ~20,000 km) |
| maxmagnitude | number | Maximum magnitude on Richter scale |
| minmagnitude | number | Minimum magnitude on Richter scale (e.g. 4.5 for significant earthquakes) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Maximum number of results (default 20, max 200)"
},
"endtime": {
"type": "string",
"description": "End date in ISO 8601 format (default: now)"
},
"orderby": {
"enum": [
"time",
"time-asc",
"magnitude",
"magnitude-asc"
],
"type": "string",
"description": "Sort order: \"time\" (newest first, default), \"time-asc\", \"magnitude\" (largest first), \"magnitude-asc\""
},
"latitude": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Center latitude for radius search (-90 to 90)"
},
"maxdepth": {
"type": "number",
"description": "Maximum depth in kilometers (max 1000)"
},
"mindepth": {
"type": "number",
"description": "Minimum depth in kilometers (negative = above sea level)"
},
"longitude": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Center longitude for radius search (-180 to 180)"
},
"starttime": {
"type": "string",
"description": "Start date in ISO 8601 format, e.g. \"2026-01-01\" or \"2026-01-01T00:00:00\""
},
"alertlevel": {
"enum": [
"green",
"yellow",
"orange",
"red"
],
"type": "string",
"description": "PAGER alert level filter: green (no damage), yellow, orange, red (significant damage/casualties)"
},
"maxradiuskm": {
"type": "number",
"maximum": 20001.6,
"minimum": 0,
"description": "Search radius in kilometers from lat/lon center point (max ~20,000 km)"
},
"maxmagnitude": {
"type": "number",
"description": "Maximum magnitude on Richter scale"
},
"minmagnitude": {
"type": "number",
"description": "Minimum magnitude on Richter scale (e.g. 4.5 for significant earthquakes)"
}
},
"additionalProperties": false
}Browse MGnify's environment classification tree starting at a given lineage — returns the queried biome plus every descendant beneath it (not just immediate children), e.g. lineage "root" for the entire tree or "root:Host-associated" for just that subtree. Returns each biome's lineage, name, and sample count — use the returned lineage as the biome_lineage filter in ebi-metagenomics.study_search. Data: EMBL-EBI MGnify (www.ebi.ac.uk/metagenomics), no auth required.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number, 1-indexed (default 1). |
| lineage | string | Biome lineage to browse the descendant subtree of, e.g. "root" (entire tree), "root:Host-associated", or "root:Environmental:Aquatic:Marine". Defaults to "root". Returns the queried biome plus every descendant beneath it, not just immediate children. |
| page_size | integer | Number of biomes to return per page, 1-50 (default 20). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number, 1-indexed (default 1)."
},
"lineage": {
"type": "string",
"description": "Biome lineage to browse the descendant subtree of, e.g. \"root\" (entire tree), \"root:Host-associated\", or \"root:Environmental:Aquatic:Marine\". Defaults to \"root\". Returns the queried biome plus every descendant beneath it, not just immediate children."
},
"page_size": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of biomes to return per page, 1-50 (default 20)."
}
},
"additionalProperties": false
}List the biological samples belonging to a MGnify study (study_accession from ebi-metagenomics.study_search or ebi-metagenomics.study_detail). Returns each sample's accession, name, description, BioSample ID, latitude/longitude, geographic location, collection date, environment biome/feature/material, host taxon ID, species, and metadata key/value pairs. Data: EMBL-EBI MGnify (www.ebi.ac.uk/metagenomics), no auth required.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number, 1-indexed (default 1). |
| page_size | integer | Number of samples to return per page, 1-50 (default 10). |
| study_accession* | string | MGnify study accession, e.g. "MGYS00006862", from ebi-metagenomics.study_search. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"study_accession"
],
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number, 1-indexed (default 1)."
},
"page_size": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of samples to return per page, 1-50 (default 10)."
},
"study_accession": {
"type": "string",
"minLength": 1,
"description": "MGnify study accession, e.g. \"MGYS00006862\", from ebi-metagenomics.study_search."
}
},
"additionalProperties": false
}Get full detail for one MGnify study by its accession (e.g. "MGYS00006862") from ebi-metagenomics.study_search: study name, abstract, bioproject, secondary accession, sequencing centre, sample count, privacy/release status, data origination, and biome lineages. Data: EMBL-EBI MGnify (www.ebi.ac.uk/metagenomics), no auth required.
| Argument | Type | Description |
|---|---|---|
| accession* | string | MGnify study accession, e.g. "MGYS00006862", from ebi-metagenomics.study_search. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"accession"
],
"properties": {
"accession": {
"type": "string",
"minLength": 1,
"description": "MGnify study accession, e.g. \"MGYS00006862\", from ebi-metagenomics.study_search."
}
},
"additionalProperties": false
}Search EBI's MGnify metagenomics archive for studies by free-text query (name/abstract/bioproject) and/or biome lineage (e.g. "root:Host-associated:Human"). Returns each study's accession, name, abstract, bioproject, sequencing centre, sample count, last-update date, and associated biome lineages. Data: EMBL-EBI MGnify (www.ebi.ac.uk/metagenomics), no auth required.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number, 1-indexed (default 1). |
| query | string | Free-text search across study name, abstract, and bioproject, e.g. "gut microbiome". |
| page_size | integer | Number of studies to return per page, 1-25 (default 10). |
| biome_lineage | string | Filter to studies classified under this biome lineage, e.g. "root:Host-associated:Human" or "root:Environmental:Aquatic:Marine". Get valid lineages from ebi-metagenomics.biome_browse. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number, 1-indexed (default 1)."
},
"query": {
"type": "string",
"description": "Free-text search across study name, abstract, and bioproject, e.g. \"gut microbiome\"."
},
"page_size": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Number of studies to return per page, 1-25 (default 10)."
},
"biome_lineage": {
"type": "string",
"description": "Filter to studies classified under this biome lineage, e.g. \"root:Host-associated:Human\" or \"root:Environmental:Aquatic:Marine\". Get valid lineages from ebi-metagenomics.biome_browse."
}
},
"additionalProperties": false
}Get the euro area Harmonised Index of Consumer Prices (HICP) all-items annual rate of change — the ECB's official inflation measure used for its 2% target. Monthly series. Filter by last_n_observations or start_period/end_period. Data: ECB Statistical Data Warehouse (data-api.ecb.europa.eu), no auth required.
| Argument | Type | Description |
|---|---|---|
| end_period | string | End of date range: YYYY, YYYY-MM, or YYYY-MM-DD depending on series frequency. Ignored if last_n_observations is set. |
| start_period | string | Start of date range: YYYY, YYYY-MM, or YYYY-MM-DD depending on series frequency. Ignored if last_n_observations is set. |
| last_n_observations | integer | Return only the most recent N observations (max 100). Takes precedence over start_period/end_period. Default 10 if no range given. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"end_period": {
"type": "string",
"pattern": "^\\d{4}(-\\d{2}(-\\d{2})?)?$",
"description": "End of date range: YYYY, YYYY-MM, or YYYY-MM-DD depending on series frequency. Ignored if last_n_observations is set."
},
"start_period": {
"type": "string",
"pattern": "^\\d{4}(-\\d{2}(-\\d{2})?)?$",
"description": "Start of date range: YYYY, YYYY-MM, or YYYY-MM-DD depending on series frequency. Ignored if last_n_observations is set."
},
"last_n_observations": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Return only the most recent N observations (max 100). Takes precedence over start_period/end_period. Default 10 if no range given."
}
},
"additionalProperties": false
}Get the euro area M3 monetary aggregate — outstanding amount at end of period, working-day and seasonally adjusted, in EUR. M3 is the broad money supply measure the ECB monitors as a reference value for monetary policy. Monthly series. Filter by last_n_observations or start_period/end_period. Data: ECB Statistical Data Warehouse (data-api.ecb.europa.eu), no auth required.
| Argument | Type | Description |
|---|---|---|
| end_period | string | End of date range: YYYY, YYYY-MM, or YYYY-MM-DD depending on series frequency. Ignored if last_n_observations is set. |
| start_period | string | Start of date range: YYYY, YYYY-MM, or YYYY-MM-DD depending on series frequency. Ignored if last_n_observations is set. |
| last_n_observations | integer | Return only the most recent N observations (max 100). Takes precedence over start_period/end_period. Default 10 if no range given. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"end_period": {
"type": "string",
"pattern": "^\\d{4}(-\\d{2}(-\\d{2})?)?$",
"description": "End of date range: YYYY, YYYY-MM, or YYYY-MM-DD depending on series frequency. Ignored if last_n_observations is set."
},
"start_period": {
"type": "string",
"pattern": "^\\d{4}(-\\d{2}(-\\d{2})?)?$",
"description": "Start of date range: YYYY, YYYY-MM, or YYYY-MM-DD depending on series frequency. Ignored if last_n_observations is set."
},
"last_n_observations": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Return only the most recent N observations (max 100). Takes precedence over start_period/end_period. Default 10 if no range given."
}
},
"additionalProperties": false
}Get the euro area AAA-rated government bond spot yield curve rate for a given maturity (1, 5, 10, or 30 years). Business-day series used as a euro area risk-free benchmark. Filter by tenor_years, and either last_n_observations or start_period/end_period. Data: ECB Statistical Data Warehouse (data-api.ecb.europa.eu), no auth required.
| Argument | Type | Description |
|---|---|---|
| end_period | string | End of date range: YYYY, YYYY-MM, or YYYY-MM-DD depending on series frequency. Ignored if last_n_observations is set. |
| tenor_years | string | Bond maturity in years for the spot rate: "1", "5", "10", or "30". Default "10". |
| start_period | string | Start of date range: YYYY, YYYY-MM, or YYYY-MM-DD depending on series frequency. Ignored if last_n_observations is set. |
| last_n_observations | integer | Return only the most recent N observations (max 100). Takes precedence over start_period/end_period. Default 10 if no range given. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"end_period": {
"type": "string",
"pattern": "^\\d{4}(-\\d{2}(-\\d{2})?)?$",
"description": "End of date range: YYYY, YYYY-MM, or YYYY-MM-DD depending on series frequency. Ignored if last_n_observations is set."
},
"tenor_years": {
"enum": [
"1",
"5",
"10",
"30"
],
"type": "string",
"description": "Bond maturity in years for the spot rate: \"1\", \"5\", \"10\", or \"30\". Default \"10\"."
},
"start_period": {
"type": "string",
"pattern": "^\\d{4}(-\\d{2}(-\\d{2})?)?$",
"description": "Start of date range: YYYY, YYYY-MM, or YYYY-MM-DD depending on series frequency. Ignored if last_n_observations is set."
},
"last_n_observations": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Return only the most recent N observations (max 100). Takes precedence over start_period/end_period. Default 10 if no range given."
}
},
"additionalProperties": false
}Get official European Central Bank key interest rates: the deposit facility rate (rate banks earn on overnight deposits with the Eurosystem), main refinancing rate (MRO), or marginal lending facility rate (overnight borrowing rate). Daily series. Filter by rate_type, and either last_n_observations or start_period/end_period. Data: ECB Statistical Data Warehouse (data-api.ecb.europa.eu), no auth required.
| Argument | Type | Description |
|---|---|---|
| rate_type | string | Which ECB key interest rate to fetch: main_refinancing (MRO rate), deposit_facility (rate banks earn on overnight deposits), marginal_lending (overnight borrowing rate). Default deposit_facility. |
| end_period | string | End of date range: YYYY, YYYY-MM, or YYYY-MM-DD depending on series frequency. Ignored if last_n_observations is set. |
| start_period | string | Start of date range: YYYY, YYYY-MM, or YYYY-MM-DD depending on series frequency. Ignored if last_n_observations is set. |
| last_n_observations | integer | Return only the most recent N observations (max 100). Takes precedence over start_period/end_period. Default 10 if no range given. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"rate_type": {
"enum": [
"main_refinancing",
"deposit_facility",
"marginal_lending"
],
"type": "string",
"description": "Which ECB key interest rate to fetch: main_refinancing (MRO rate), deposit_facility (rate banks earn on overnight deposits), marginal_lending (overnight borrowing rate). Default deposit_facility."
},
"end_period": {
"type": "string",
"pattern": "^\\d{4}(-\\d{2}(-\\d{2})?)?$",
"description": "End of date range: YYYY, YYYY-MM, or YYYY-MM-DD depending on series frequency. Ignored if last_n_observations is set."
},
"start_period": {
"type": "string",
"pattern": "^\\d{4}(-\\d{2}(-\\d{2})?)?$",
"description": "Start of date range: YYYY, YYYY-MM, or YYYY-MM-DD depending on series frequency. Ignored if last_n_observations is set."
},
"last_n_observations": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Return only the most recent N observations (max 100). Takes precedence over start_period/end_period. Default 10 if no range given."
}
},
"additionalProperties": false
}Get historical weekly COVID-19 case and death counts by country from ECDC (European Centre for Disease Prevention and Control) TESSy surveillance data. Filter by country name or ISO3 code, optionally by indicator (cases/deaths) and ISO week. Covers 2020-W01 through 2023-W47 only — ECDC discontinued routine COVID-19 reporting in December 2023, so this reflects the final frozen historical dataset, not live surveillance. Data: ECDC opendata, CC BY 4.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of records to return (default 100, max 500). |
| country* | string | Country name or ISO3 country code to filter by (e.g. "Austria" or "AUT"). Required — the upstream dataset has no server-side query, so this narrows the full historical dump. |
| indicator | string | Filter to only "cases" or only "deaths" rows. Omit to return both. |
| year_week | string | Filter to a single ISO week, format "YYYY-WW" (e.g. "2022-15"). Omit to return all weeks. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Maximum number of records to return (default 100, max 500)."
},
"country": {
"type": "string",
"maxLength": 60,
"minLength": 2,
"description": "Country name or ISO3 country code to filter by (e.g. \"Austria\" or \"AUT\"). Required — the upstream dataset has no server-side query, so this narrows the full historical dump."
},
"indicator": {
"enum": [
"cases",
"deaths"
],
"type": "string",
"description": "Filter to only \"cases\" or only \"deaths\" rows. Omit to return both."
},
"year_week": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}$",
"description": "Filter to a single ISO week, format \"YYYY-WW\" (e.g. \"2022-15\"). Omit to return all weeks."
}
},
"additionalProperties": false
}Get historical daily hospital/ICU occupancy and weekly new admission rates per 100k for COVID-19 by country from ECDC surveillance data. Filter by country name, optionally by one of four indicators (daily hospital occupancy, daily ICU occupancy, weekly hospital admissions per 100k, weekly ICU admissions per 100k). Covers 2020-W01 through 2023-W47 only — ECDC discontinued routine COVID-19 reporting in December 2023, so this reflects the final frozen historical dataset, not live surveillance. Data: ECDC opendata, CC BY 4.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of records to return (default 100, max 500). |
| country* | string | Country name to filter by (e.g. "Germany"). Required — the upstream dataset has no server-side query, so this narrows the full historical dump. |
| indicator | string | Filter to a single indicator series. Omit to return all four indicators. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Maximum number of records to return (default 100, max 500)."
},
"country": {
"type": "string",
"maxLength": 60,
"minLength": 2,
"description": "Country name to filter by (e.g. \"Germany\"). Required — the upstream dataset has no server-side query, so this narrows the full historical dump."
},
"indicator": {
"enum": [
"Daily hospital occupancy",
"Daily ICU occupancy",
"Weekly new hospital admissions per 100k",
"Weekly new ICU admissions per 100k"
],
"type": "string",
"description": "Filter to a single indicator series. Omit to return all four indicators."
}
},
"additionalProperties": false
}Get historical weekly COVID-19 testing volume and positivity rate by country from ECDC TESSy surveillance data. Filter by country name or ISO2 code, optionally by ISO week. Covers 2020-W01 through 2023-W47 only — ECDC discontinued routine COVID-19 reporting in December 2023, so this reflects the final frozen historical dataset, not live surveillance. Data: ECDC opendata, CC BY 4.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of records to return (default 100, max 500). |
| country* | string | Country name or ISO2 country code to filter by (e.g. "Austria" or "AT"). Required — the upstream dataset has no server-side query, so this narrows the full historical dump. |
| year_week | string | Filter to a single ISO week, format "YYYY-Www" (e.g. "2021-W48"). Omit to return all weeks. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Maximum number of records to return (default 100, max 500)."
},
"country": {
"type": "string",
"maxLength": 60,
"minLength": 2,
"description": "Country name or ISO2 country code to filter by (e.g. \"Austria\" or \"AT\"). Required — the upstream dataset has no server-side query, so this narrows the full historical dump."
},
"year_week": {
"type": "string",
"pattern": "^\\d{4}-W\\d{2}$",
"description": "Filter to a single ISO week, format \"YYYY-Www\" (e.g. \"2021-W48\"). Omit to return all weeks."
}
},
"additionalProperties": false
}Search facilities regulated under the Clean Air Act (CAA) by ZIP code or facility name. Returns facility name, address, coordinates, CAA permit types and status, quarters of noncompliance, inspection count, and High Priority Violation (HPV) flag. Ideal for air quality compliance monitoring, permit research, and environmental due diligence. Use zip_code for location search or facility_name with state for targeted search. Source: EPA ECHO Air program data — US Gov public domain, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of facilities to return (1–50). Default 10. |
| state | string | Two-letter US state code to narrow results (e.g. "TX", "OH"). Required when using facility_name without zip_code. |
| zip_code | string | US ZIP code to search within (e.g. "77002"). Recommended for precise results. Provide either zip_code or facility_name. |
| facility_name | string | Partial or full facility name to search for (e.g. "Exxon"). Use with state for best results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"default": 10,
"maximum": 50,
"minimum": 1,
"description": "Maximum number of facilities to return (1–50). Default 10."
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Two-letter US state code to narrow results (e.g. \"TX\", \"OH\"). Required when using facility_name without zip_code."
},
"zip_code": {
"type": "string",
"description": "US ZIP code to search within (e.g. \"77002\"). Recommended for precise results. Provide either zip_code or facility_name."
},
"facility_name": {
"type": "string",
"description": "Partial or full facility name to search for (e.g. \"Exxon\"). Use with state for best results."
}
},
"additionalProperties": false
}Retrieve detailed compliance profile for a specific EPA-regulated facility by Registry ID. Returns full address with county, coordinates, SIC/NAICS codes, HUC watershed code, federal facility status, facility creation/termination dates, and a complete list of environmental program interests (e.g. "CAA Stationary Source", "NPDES Permit"). Registry IDs are obtained from echo.compliance.facility_search results. Essential for due diligence, ESG screening, and permit verification. Source: EPA ECHO — US Gov public domain, no auth required.
| Argument | Type | Description |
|---|---|---|
| registry_id* | string | EPA Facility Registry System (FRS) Registry ID for the facility (e.g. "110000350226"). Obtained from echo.facility_search results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"registry_id"
],
"properties": {
"registry_id": {
"type": "string",
"description": "EPA Facility Registry System (FRS) Registry ID for the facility (e.g. \"110000350226\"). Obtained from echo.facility_search results."
}
},
"additionalProperties": false
}Search EPA-regulated facilities across all environmental programs by ZIP code or facility name. Returns facility name, address, coordinates, industry codes (SIC/NAICS), program flags (CAA, CWA, RCRA, SDWA, TRI, GHG), total penalties assessed, inspection count, and formal/informal action counts. Use zip_code for location-based discovery, or facility_name with state for targeted searches. Covers 1M+ regulated US facilities. Source: EPA ECHO (Enforcement and Compliance History Online) — US Gov public domain, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of facilities to return (1–50). Default 10. |
| state | string | Two-letter US state code to narrow results (e.g. "CA", "TX"). Required when using facility_name without zip_code. |
| zip_code | string | US ZIP code to search within (e.g. "94601"). Recommended for precise results. Provide either zip_code or facility_name. |
| active_only | boolean | Return only currently active regulated facilities. Default true. |
| facility_name | string | Partial or full facility name to search for (e.g. "Chevron"). Use with state for best results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"default": 10,
"maximum": 50,
"minimum": 1,
"description": "Maximum number of facilities to return (1–50). Default 10."
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Two-letter US state code to narrow results (e.g. \"CA\", \"TX\"). Required when using facility_name without zip_code."
},
"zip_code": {
"type": "string",
"description": "US ZIP code to search within (e.g. \"94601\"). Recommended for precise results. Provide either zip_code or facility_name."
},
"active_only": {
"type": "boolean",
"default": true,
"description": "Return only currently active regulated facilities. Default true."
},
"facility_name": {
"type": "string",
"description": "Partial or full facility name to search for (e.g. \"Chevron\"). Use with state for best results."
}
},
"additionalProperties": false
}Retrieve enforcement actions and violation history for a specific EPA-regulated facility. Returns enforcement activity type, action type, settlement date, federal and state penalties assessed, supplemental environmental project (SEP) amounts, and affected program codes (e.g. CAA, CWA, RCRA). Registry IDs are obtained from echo.compliance.facility_search results. Critical for environmental liability assessment, ESG due diligence, and compliance monitoring. Source: EPA ECHO — US Gov public domain, no auth required.
| Argument | Type | Description |
|---|---|---|
| registry_id* | string | EPA Facility Registry System (FRS) Registry ID to retrieve enforcement and violation history for (e.g. "110000350226"). Obtained from echo.facility_search results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"registry_id"
],
"properties": {
"registry_id": {
"type": "string",
"description": "EPA Facility Registry System (FRS) Registry ID to retrieve enforcement and violation history for (e.g. \"110000350226\"). Obtained from echo.facility_search results."
}
},
"additionalProperties": false
}Browse current Amazon deals — original price vs deal price, product title, ASIN, deal link. Paginated, 500+ active deals. 12 Amazon marketplaces (Canopy API)
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number (default 1) |
| domain | string | Amazon marketplace: US, UK, CA, DE, FR, IT, ES, AU, IN, MX, BR, JP (default US) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number (default 1)"
},
"domain": {
"type": "string",
"default": "US",
"description": "Amazon marketplace: US, UK, CA, DE, FR, IT, ES, AU, IN, MX, BR, JP (default US)"
}
},
"additionalProperties": false
}Get all third-party seller offers for an Amazon product — price, condition (new/used), seller name & rating, Buy Box winner flag, Fulfilled by Amazon, delivery estimate. Price comparison across sellers (Canopy API)
| Argument | Type | Description |
|---|---|---|
| asin* | string | Amazon ASIN product ID. Returns all third-party offers with Buy Box winner, seller ratings, delivery info |
| domain | string | Amazon marketplace: US, UK, CA, DE, FR, IT, ES, AU, IN, MX, BR, JP (default US) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"asin"
],
"properties": {
"asin": {
"type": "string",
"description": "Amazon ASIN product ID. Returns all third-party offers with Buy Box winner, seller ratings, delivery info"
},
"domain": {
"type": "string",
"default": "US",
"description": "Amazon marketplace: US, UK, CA, DE, FR, IT, ES, AU, IN, MX, BR, JP (default US)"
}
},
"additionalProperties": false
}Get full Amazon product details by ASIN — title, brand, price, rating, stock status, feature bullets, categories, seller name. Use ASINs from canopy.search. 12 Amazon marketplaces supported (Canopy API)
| Argument | Type | Description |
|---|---|---|
| asin* | string | Amazon ASIN product ID (e.g. "B0CRSNCJ6Y"). Get ASINs from canopy.search |
| domain | string | Amazon marketplace: US, UK, CA, DE, FR, IT, ES, AU, IN, MX, BR, JP (default US) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"asin"
],
"properties": {
"asin": {
"type": "string",
"description": "Amazon ASIN product ID (e.g. \"B0CRSNCJ6Y\"). Get ASINs from canopy.search"
},
"domain": {
"type": "string",
"default": "US",
"description": "Amazon marketplace: US, UK, CA, DE, FR, IT, ES, AU, IN, MX, BR, JP (default US)"
}
},
"additionalProperties": false
}Search Amazon products by keyword — filter by price range, sort by relevance/price/rating/reviews/newest. Returns title, ASIN, price, rating, Prime flag, image. 12 marketplaces: US, UK, CA, DE, FR, IT, ES, AU, IN, MX, BR, JP (Canopy API)
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination |
| sort | string | Sort order: relevance, price_asc, price_desc, rating, reviews, newest |
| query* | string | Search keywords (e.g. "wireless headphones", "raspberry pi 5") |
| domain | string | Amazon marketplace: US, UK, CA, DE, FR, IT, ES, AU, IN, MX, BR, JP (default US) |
| price_max | number | Maximum price filter (in marketplace currency) |
| price_min | number | Minimum price filter (in marketplace currency) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination"
},
"sort": {
"enum": [
"relevance",
"price_asc",
"price_desc",
"rating",
"reviews",
"newest"
],
"type": "string",
"description": "Sort order: relevance, price_asc, price_desc, rating, reviews, newest"
},
"query": {
"type": "string",
"description": "Search keywords (e.g. \"wireless headphones\", \"raspberry pi 5\")"
},
"domain": {
"type": "string",
"default": "US",
"description": "Amazon marketplace: US, UK, CA, DE, FR, IT, ES, AU, IN, MX, BR, JP (default US)"
},
"price_max": {
"type": "number",
"description": "Maximum price filter (in marketplace currency)"
},
"price_min": {
"type": "number",
"description": "Minimum price filter (in marketplace currency)"
}
},
"additionalProperties": false
}Search 2.4M+ preprints in physics, math, CS, biology, and more — full text, authors, categories, PDF links (arXiv)
| Argument | Type | Description |
|---|---|---|
| sort | string | Sort order for results. Default: "relevance". |
| limit | integer | Number of results to return (1-50). Default: 10. |
| query* | string | Search text for preprints (e.g. "transformer architecture", "quantum computing"). |
| author | string | Author name to filter by (e.g. "Vaswani", "Hinton"). |
| category | string | arXiv category filter (e.g. "cs.AI", "math.CO", "physics.hep-th", "q-bio.GN"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"sort": {
"enum": [
"relevance",
"lastUpdatedDate",
"submittedDate"
],
"type": "string",
"description": "Sort order for results. Default: \"relevance\"."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results to return (1-50). Default: 10."
},
"query": {
"type": "string",
"maxLength": 500,
"minLength": 1,
"description": "Search text for preprints (e.g. \"transformer architecture\", \"quantum computing\")."
},
"author": {
"type": "string",
"maxLength": 200,
"description": "Author name to filter by (e.g. \"Vaswani\", \"Hinton\")."
},
"category": {
"type": "string",
"maxLength": 20,
"description": "arXiv category filter (e.g. \"cs.AI\", \"math.CO\", \"physics.hep-th\", \"q-bio.GN\")."
}
},
"additionalProperties": false
}Get detailed data for a US college by UNITID — admissions rate, costs, student outcomes, earnings after graduation (College Scorecard)
| Argument | Type | Description |
|---|---|---|
| school_id* | integer | College Scorecard UNITID (e.g. 166027 for MIT). Get IDs from college_search. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"school_id"
],
"properties": {
"school_id": {
"type": "integer",
"description": "College Scorecard UNITID (e.g. 166027 for MIT). Get IDs from college_search.",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Search US colleges and universities — admissions, tuition, enrollment, earnings, completion rates (College Scorecard)
| Argument | Type | Description |
|---|---|---|
| name | string | School name to search for (e.g. "MIT", "Stanford", "Community College"). |
| limit | integer | Number of results to return (1-50). Default: 10. |
| state | string | US state abbreviation (e.g. "CA", "NY", "TX"). |
| program | string | Field of study filter (e.g. "Computer Science", "Nursing", "Business"). |
| degree_type | string | Filter by predominant degree type awarded. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"description": "School name to search for (e.g. \"MIT\", \"Stanford\", \"Community College\")."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results to return (1-50). Default: 10."
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "US state abbreviation (e.g. \"CA\", \"NY\", \"TX\")."
},
"program": {
"type": "string",
"maxLength": 200,
"description": "Field of study filter (e.g. \"Computer Science\", \"Nursing\", \"Business\")."
},
"degree_type": {
"enum": [
"associate",
"bachelor",
"graduate"
],
"type": "string",
"description": "Filter by predominant degree type awarded."
}
},
"additionalProperties": false
}Resolve a DOI to full publication metadata — title, authors, journal, citations, funding, license (CrossRef)
| Argument | Type | Description |
|---|---|---|
| doi* | string | DOI to resolve (e.g. "10.1038/nature12373", "10.1145/3292500.3330648"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"doi"
],
"properties": {
"doi": {
"type": "string",
"maxLength": 200,
"minLength": 3,
"description": "DOI to resolve (e.g. \"10.1038/nature12373\", \"10.1145/3292500.3330648\")."
}
},
"additionalProperties": false
}Get full details for an academic paper by OpenAlex ID or DOI — authors, citations, abstract, references, open access links (OpenAlex)
| Argument | Type | Description |
|---|---|---|
| id* | string | OpenAlex work ID (e.g. "W2741809807") or DOI (e.g. "10.1038/nature12373"). Get IDs from paper_search. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "OpenAlex work ID (e.g. \"W2741809807\") or DOI (e.g. \"10.1038/nature12373\"). Get IDs from paper_search."
}
},
"additionalProperties": false
}Search 250M+ academic papers across all disciplines — citations, authors, institutions, open access status (OpenAlex)
| Argument | Type | Description |
|---|---|---|
| sort | string | Sort order for results. Default: "relevance". |
| limit | integer | Number of results to return (1-50). Default: 10. |
| query* | string | Search text for academic papers (e.g. "machine learning", "CRISPR gene editing"). |
| author | string | Author name or ORCID to filter by (e.g. "Yoshua Bengio", "0000-0001-2345-6789"). |
| concept | string | OpenAlex concept ID filter (e.g. "C41008148" for Computer Science). Get IDs from OpenAlex concepts API. |
| year_to | integer | Filter papers published up to this year (inclusive). |
| year_from | integer | Filter papers published from this year (inclusive). |
| institution | string | Institution name or ROR ID to filter by (e.g. "MIT", "Stanford University"). |
| open_access_only | boolean | If true, only return open access papers. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"sort": {
"enum": [
"relevance",
"cited_by_count",
"publication_date"
],
"type": "string",
"description": "Sort order for results. Default: \"relevance\"."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results to return (1-50). Default: 10."
},
"query": {
"type": "string",
"maxLength": 500,
"minLength": 1,
"description": "Search text for academic papers (e.g. \"machine learning\", \"CRISPR gene editing\")."
},
"author": {
"type": "string",
"maxLength": 200,
"description": "Author name or ORCID to filter by (e.g. \"Yoshua Bengio\", \"0000-0001-2345-6789\")."
},
"concept": {
"type": "string",
"maxLength": 200,
"description": "OpenAlex concept ID filter (e.g. \"C41008148\" for Computer Science). Get IDs from OpenAlex concepts API."
},
"year_to": {
"type": "integer",
"maximum": 2100,
"minimum": 1800,
"description": "Filter papers published up to this year (inclusive)."
},
"year_from": {
"type": "integer",
"maximum": 2100,
"minimum": 1800,
"description": "Filter papers published from this year (inclusive)."
},
"institution": {
"type": "string",
"maxLength": 200,
"description": "Institution name or ROR ID to filter by (e.g. \"MIT\", \"Stanford University\")."
},
"open_access_only": {
"type": "boolean",
"description": "If true, only return open access papers."
}
},
"additionalProperties": false
}Search 36M+ biomedical and life science articles — clinical trials, reviews, meta-analyses with date and type filters (PubMed/NCBI)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of results to return (1-50). Default: 10. |
| query* | string | Search text for biomedical literature (e.g. "COVID-19 vaccine efficacy", "BRCA1 breast cancer"). |
| date_to | string | End date filter in YYYY/MM/DD format (e.g. "2024/12/31"). |
| date_from | string | Start date filter in YYYY/MM/DD format (e.g. "2023/01/01"). |
| publication_type | string | Filter by publication type. Default: "any". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results to return (1-50). Default: 10."
},
"query": {
"type": "string",
"maxLength": 500,
"minLength": 1,
"description": "Search text for biomedical literature (e.g. \"COVID-19 vaccine efficacy\", \"BRCA1 breast cancer\")."
},
"date_to": {
"type": "string",
"pattern": "^\\d{4}\\/\\d{2}\\/\\d{2}$",
"description": "End date filter in YYYY/MM/DD format (e.g. \"2024/12/31\")."
},
"date_from": {
"type": "string",
"pattern": "^\\d{4}\\/\\d{2}\\/\\d{2}$",
"description": "Start date filter in YYYY/MM/DD format (e.g. \"2023/01/01\")."
},
"publication_type": {
"enum": [
"review",
"clinical-trial",
"meta-analysis",
"any"
],
"type": "string",
"description": "Filter by publication type. Default: \"any\"."
}
},
"additionalProperties": false
}⚡ ACTION: Send transactional email — plain text or HTML body, multiple recipients, reply-to. Requires verified sender domain. 3,000 free emails/month (Resend)
| Argument | Type | Description |
|---|---|---|
| to* | any | Recipient email address(es) — single email or array of emails |
| from | string | Sender email (default: [email protected]). Must be a verified domain. |
| html | string | HTML email body (alternative to text) |
| text | string | Plain text email body |
| subject* | string | Email subject line |
| reply_to | string | Reply-to email address |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"to",
"subject"
],
"properties": {
"to": {
"anyOf": [
{
"type": "string",
"format": "email"
},
{
"type": "array",
"items": {
"type": "string",
"format": "email"
}
}
],
"description": "Recipient email address(es) — single email or array of emails"
},
"from": {
"type": "string",
"description": "Sender email (default: [email protected]). Must be a verified domain."
},
"html": {
"type": "string",
"description": "HTML email body (alternative to text)"
},
"text": {
"type": "string",
"description": "Plain text email body"
},
"subject": {
"type": "string",
"minLength": 1,
"description": "Email subject line"
},
"reply_to": {
"type": "string",
"format": "email",
"description": "Reply-to email address"
}
},
"additionalProperties": false
}Check delivery status of a sent email by ID — last event, timestamps (Resend)
| Argument | Type | Description |
|---|---|---|
| email_id* | string | Email ID returned from send_email (e.g. "d1c6e0a8-...") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"email_id"
],
"properties": {
"email_id": {
"type": "string",
"description": "Email ID returned from send_email (e.g. \"d1c6e0a8-...\")"
}
},
"additionalProperties": false
}Validate an email address — checks deliverability, detects disposable/spam trap/abuse/catch-all addresses, MX records, SMTP provider, domain age. 99.6% accuracy (ZeroBounce)
| Argument | Type | Description |
|---|---|---|
| email* | string | Email address to validate (e.g. "[email protected]") |
| ip_address | string | IP address of the email owner for additional geo/fraud scoring (optional) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"email"
],
"properties": {
"email": {
"type": "string",
"format": "email",
"description": "Email address to validate (e.g. \"[email protected]\")"
},
"ip_address": {
"type": "string",
"description": "IP address of the email owner for additional geo/fraud scoring (optional)"
}
},
"additionalProperties": false
}Verify an email address — SMTP deliverability check, DNS/MX validation, disposable email detection, catch-all server detection, free provider flag, role account flag (info@, admin@). Returns comprehensive verification result. Powered by WhoisXML API.
| Argument | Type | Description |
|---|---|---|
| email* | string | Email address to verify (e.g. [email protected], [email protected]) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"email"
],
"properties": {
"email": {
"type": "string",
"minLength": 3,
"description": "Email address to verify (e.g. [email protected], [email protected])"
}
},
"additionalProperties": false
}Get full detail for a single earthquake event from the EMSC real-time seismicity catalog by its event ID (unid), as returned by emsc.search_earthquakes. Optionally include all reported magnitude estimates and origin solutions, not just the preferred ones. Data: seismicportal.eu (EMSC), no auth required.
| Argument | Type | Description |
|---|---|---|
| eventid* | string | EMSC event unique ID / unid (e.g. 20260827_0000123), as returned by emsc.search_earthquakes. |
| includeallorigins | boolean | Include all reported origin solutions for the event, not just the preferred one (default false). |
| includeallmagnitudes | boolean | Include all reported magnitude estimates for the event, not just the preferred one (default false). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"eventid"
],
"properties": {
"eventid": {
"type": "string",
"minLength": 1,
"description": "EMSC event unique ID / unid (e.g. 20260827_0000123), as returned by emsc.search_earthquakes."
},
"includeallorigins": {
"type": "boolean",
"description": "Include all reported origin solutions for the event, not just the preferred one (default false)."
},
"includeallmagnitudes": {
"type": "boolean",
"description": "Include all reported magnitude estimates for the event, not just the preferred one (default false)."
}
},
"additionalProperties": false
}Search the European-Mediterranean Seismological Centre (EMSC) real-time seismicity catalog (EMSC-RTS) by time range, bounding box or point+radius, magnitude range, and depth range. A distinct regional network from USGS, often lower-latency for Euro-Mediterranean events, with per-event reporting-agency attribution. Returns event ID, time, magnitude, location, depth, region name, and reporting agency for each match. Data: seismicportal.eu (EMSC), no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of events to return, 1-200 (default 50). |
| endtime | string | End of the time window, ISO 8601 date or datetime (e.g. 2026-08-27T23:59:59). Omit for no upper bound. |
| latitude | number | Center latitude in decimal degrees for a point+radius search (use with longitude and maxradius). |
| maxdepth | number | Maximum hypocenter depth in kilometers. |
| mindepth | number | Minimum hypocenter depth in kilometers. |
| longitude | number | Center longitude in decimal degrees for a point+radius search (use with latitude and maxradius). |
| maxradius | number | Search radius in degrees around the latitude/longitude point (e.g. 5 for ~550km at the equator). |
| starttime | string | Start of the time window, ISO 8601 date or datetime (e.g. 2026-08-01 or 2026-08-01T00:00:00). Omit for no lower bound. |
| maxlatitude | number | Maximum latitude in decimal degrees for a bounding-box search (e.g. 45.0). |
| minlatitude | number | Minimum latitude in decimal degrees for a bounding-box search (e.g. 34.0). |
| maxlongitude | number | Maximum longitude in decimal degrees for a bounding-box search (e.g. 25.0). |
| maxmagnitude | number | Maximum earthquake magnitude to include (e.g. 7.0). |
| minlongitude | number | Minimum longitude in decimal degrees for a bounding-box search (e.g. 5.0). |
| minmagnitude | number | Minimum earthquake magnitude to include (e.g. 3.0). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Maximum number of events to return, 1-200 (default 50)."
},
"endtime": {
"type": "string",
"description": "End of the time window, ISO 8601 date or datetime (e.g. 2026-08-27T23:59:59). Omit for no upper bound."
},
"latitude": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Center latitude in decimal degrees for a point+radius search (use with longitude and maxradius)."
},
"maxdepth": {
"type": "number",
"description": "Maximum hypocenter depth in kilometers."
},
"mindepth": {
"type": "number",
"description": "Minimum hypocenter depth in kilometers."
},
"longitude": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Center longitude in decimal degrees for a point+radius search (use with latitude and maxradius)."
},
"maxradius": {
"type": "number",
"description": "Search radius in degrees around the latitude/longitude point (e.g. 5 for ~550km at the equator).",
"exclusiveMinimum": 0
},
"starttime": {
"type": "string",
"description": "Start of the time window, ISO 8601 date or datetime (e.g. 2026-08-01 or 2026-08-01T00:00:00). Omit for no lower bound."
},
"maxlatitude": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Maximum latitude in decimal degrees for a bounding-box search (e.g. 45.0)."
},
"minlatitude": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Minimum latitude in decimal degrees for a bounding-box search (e.g. 34.0)."
},
"maxlongitude": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Maximum longitude in decimal degrees for a bounding-box search (e.g. 25.0)."
},
"maxmagnitude": {
"type": "number",
"description": "Maximum earthquake magnitude to include (e.g. 7.0)."
},
"minlongitude": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Minimum longitude in decimal degrees for a bounding-box search (e.g. 5.0)."
},
"minmagnitude": {
"type": "number",
"description": "Minimum earthquake magnitude to include (e.g. 3.0)."
}
},
"additionalProperties": false
}List or search the 32 US communities covered by EPA EnviroAtlas block-group ecosystem-service data (e.g. "Des Moines, IA", "Chicago, IL"). Returns community code, name, and census block group count for each. Call this first to find valid community codes/names for the other EnviroAtlas tools. Data: enviroatlas.epa.gov (US EPA), no auth required.
| Argument | Type | Description |
|---|---|---|
| query | string | Filter the 32 EnviroAtlas pilot communities by name or state substring, case-insensitive (e.g. "TX" or "Portland"). Omit to list all of them. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"query": {
"type": "string",
"description": "Filter the 32 EnviroAtlas pilot communities by name or state substring, case-insensitive (e.g. \"TX\" or \"Portland\"). Omit to list all of them."
}
},
"additionalProperties": false
}Get EPA EnviroAtlas ecosystem-service and environmental-health metrics for the census block group containing a lat/lon point — tree cover, green space, impervious area, air pollutant removal, carbon storage/sequestration, flood risk, heat reduction, and park/water-view access. Only covers the 32 EPA pilot communities (see enviroatlas.communities); returns covered=false outside them. Data: enviroatlas.epa.gov (US EPA), no auth required.
| Argument | Type | Description |
|---|---|---|
| lat* | number | Latitude in decimal degrees (e.g. 41.5868 for Des Moines, IA). |
| lon* | number | Longitude in decimal degrees (e.g. -93.6091 for Des Moines, IA). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude in decimal degrees (e.g. 41.5868 for Des Moines, IA)."
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude in decimal degrees (e.g. -93.6091 for Des Moines, IA)."
}
},
"additionalProperties": false
}Get aggregate EPA EnviroAtlas ecosystem-service statistics across all census block groups in an EnviroAtlas pilot community — average tree cover/impervious/green space percent, total population, total carbon stored and sequestration value, and average flood-risk population percent. Data: enviroatlas.epa.gov (US EPA), no auth required.
| Argument | Type | Description |
|---|---|---|
| community* | string | EnviroAtlas pilot community code (e.g. "DMIA") or name (e.g. "Des Moines, IA"). Call enviroatlas.communities first to see all 32 covered communities. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"community"
],
"properties": {
"community": {
"type": "string",
"minLength": 1,
"description": "EnviroAtlas pilot community code (e.g. \"DMIA\") or name (e.g. \"Des Moines, IA\"). Call enviroatlas.communities first to see all 32 covered communities."
}
},
"additionalProperties": false
}Real-time air quality index (AQI US + CN), pollutant concentrations (PM2.5, PM10, O3, NO2, SO2, CO), dominant pollutant, temperature, humidity, wind speed for any city worldwide. 30,000+ monitoring stations across 10,000+ cities (IQAir AirVisual)
| Argument | Type | Description |
|---|---|---|
| city* | string | City name (e.g. "Los Angeles", "London", "Tokyo") |
| state* | string | State or province (e.g. "California", "England", "Tokyo") |
| country* | string | Country name (e.g. "USA", "UK", "Japan") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"city",
"state",
"country"
],
"properties": {
"city": {
"type": "string",
"minLength": 1,
"description": "City name (e.g. \"Los Angeles\", \"London\", \"Tokyo\")"
},
"state": {
"type": "string",
"minLength": 1,
"description": "State or province (e.g. \"California\", \"England\", \"Tokyo\")"
},
"country": {
"type": "string",
"minLength": 1,
"description": "Country name (e.g. \"USA\", \"UK\", \"Japan\")"
}
},
"additionalProperties": false
}Real-time air quality index (AQI) and weather data for the nearest monitoring station to given GPS coordinates. Returns nearest city, AQI (US + CN), dominant pollutant, PM2.5/PM10/O3 concentrations, temperature, humidity (IQAir AirVisual)
| Argument | Type | Description |
|---|---|---|
| lat* | number | Latitude (-90 to 90, e.g. 34.0522) |
| lon* | number | Longitude (-180 to 180, e.g. -118.2437) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude (-90 to 90, e.g. 34.0522)"
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude (-180 to 180, e.g. -118.2437)"
}
},
"additionalProperties": false
}List all available natural event categories in the NASA EONET system with their IDs, titles, and descriptions. Returns all 13 categories: drought, dustHaze, earthquakes, floods, landslides, manmade, seaLakeIce, severeStorms, snow, tempExtremes, volcanoes, waterColor, wildfires. Use category IDs as the "category" filter in eonet.events.list and as the "category_id" parameter in eonet.events.layers. No auth required.
| Argument | Type | Description |
|---|---|---|
| locale | string | Reserved for future use. Currently EONET returns English-only category names and descriptions. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"locale": {
"type": "string",
"description": "Reserved for future use. Currently EONET returns English-only category names and descriptions."
}
},
"additionalProperties": false
}Retrieve the full detail record for a specific NASA EONET natural disaster event by its EONET event ID (e.g. "EONET_20606"). Returns all geometry points (coordinates, magnitude, timestamps) for the entire event lifecycle, associated categories, and primary data source URLs. Useful for tracking the full track of a hurricane, the spread of a wildfire, or the progression of a flood. Obtain EONET IDs from the eonet.events.list tool.
| Argument | Type | Description |
|---|---|---|
| id* | string | EONET event ID (e.g. "EONET_20606"). Obtain from the eonet.events.list tool. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "EONET event ID (e.g. \"EONET_20606\"). Obtain from the eonet.events.list tool."
}
},
"additionalProperties": false
}Retrieve GIS web service layers available for a specific EONET event category. Returns WMTS/WMS layer configurations from NASA GIBS (Global Imagery Browse Services) that can be used to visualize satellite imagery relevant to the event type (e.g. fire radiative power for wildfires, aerosol optical depth for dust/haze, sea surface temperature for storms). Each layer includes service URL, tile matrix set, and image format for integration with mapping tools like Leaflet, OpenLayers, or QGIS. Pass a category ID from eonet.events.categories.
| Argument | Type | Description |
|---|---|---|
| category_id* | string | Category ID to retrieve GIS web service layers for. Available IDs: drought, dustHaze, earthquakes, floods, landslides, manmade, seaLakeIce, severeStorms, snow, tempExtremes, volcanoes, waterColor, wildfires. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"category_id"
],
"properties": {
"category_id": {
"type": "string",
"description": "Category ID to retrieve GIS web service layers for. Available IDs: drought, dustHaze, earthquakes, floods, landslides, manmade, seaLakeIce, severeStorms, snow, tempExtremes, volcanoes, waterColor, wildfires."
}
},
"additionalProperties": false
}Retrieve natural disaster and extreme weather events tracked by NASA Earth Observatory Natural Event Tracker (EONET). Returns events with geolocation, magnitude, data sources, and category. Supports filtering by status (open=ongoing, closed=resolved), event category (wildfires, severeStorms, volcanoes, earthquakes, floods, etc.), date range, data source, bounding box, and result count. Each event includes one or more geometry points with coordinates and timestamps. Ideal for real-time situational awareness, disaster monitoring, and geospatial analysis. Data sourced from GDACS, JTWC, USGS, IRWIN, FIRMS and 10+ other agencies. No auth required.
| Argument | Type | Description |
|---|---|---|
| end | string | End date for event filter in ISO 8601 format (YYYY-MM-DD). |
| bbox | string | Bounding box filter as comma-separated decimal degrees: "minLon,minLat,maxLon,maxLat" (e.g. "-180,-90,180,90" for global). Event must have at least one geometry point within the box. |
| days | integer | Return events from the last N days (1–9999). Overrides start/end when provided. |
| limit | integer | Maximum number of events to return (1–1000). Defaults to 10. |
| start | string | Start date for event filter in ISO 8601 format (YYYY-MM-DD). |
| source | string | Filter events by data source ID (e.g. "GDACS", "IRWIN", "JTWC", "PDC"). Multiple sources separated by commas. |
| status | string | Event status filter: "open" for ongoing events, "closed" for resolved events, "all" for both. Defaults to "open". |
| category | string | Filter by event category ID. Available categories: drought, dustHaze, earthquakes, floods, landslides, manmade, seaLakeIce, severeStorms, snow, tempExtremes, volcanoes, waterColor, wildfires. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"end": {
"type": "string",
"description": "End date for event filter in ISO 8601 format (YYYY-MM-DD)."
},
"bbox": {
"type": "string",
"description": "Bounding box filter as comma-separated decimal degrees: \"minLon,minLat,maxLon,maxLat\" (e.g. \"-180,-90,180,90\" for global). Event must have at least one geometry point within the box."
},
"days": {
"type": "integer",
"maximum": 9999,
"minimum": 1,
"description": "Return events from the last N days (1–9999). Overrides start/end when provided."
},
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Maximum number of events to return (1–1000). Defaults to 10."
},
"start": {
"type": "string",
"description": "Start date for event filter in ISO 8601 format (YYYY-MM-DD)."
},
"source": {
"type": "string",
"description": "Filter events by data source ID (e.g. \"GDACS\", \"IRWIN\", \"JTWC\", \"PDC\"). Multiple sources separated by commas."
},
"status": {
"enum": [
"open",
"closed",
"all"
],
"type": "string",
"description": "Event status filter: \"open\" for ongoing events, \"closed\" for resolved events, \"all\" for both. Defaults to \"open\"."
},
"category": {
"type": "string",
"description": "Filter by event category ID. Available categories: drought, dustHaze, earthquakes, floods, landslides, manmade, seaLakeIce, severeStorms, snow, tempExtremes, volcanoes, waterColor, wildfires."
}
},
"additionalProperties": false
}Search EPA Toxic Release Inventory (TRI) facilities by US state or ZIP code. Returns facility name, address, county, industry sector, and closed status. 600K+ regulated facilities. Source: EPA Envirofacts (US Gov open data).
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of results (1-50, default 10) |
| state* | string | US state code (e.g. CA, TX, NY, FL) |
| zip_code | string | ZIP code to filter (e.g. 90001). Overrides state filter if provided. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"state"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results (1-50, default 10)"
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "US state code (e.g. CA, TX, NY, FL)"
},
"zip_code": {
"type": "string",
"description": "ZIP code to filter (e.g. 90001). Overrides state filter if provided."
}
},
"additionalProperties": false
}Search public water systems by US state. Returns system name, PWSID, activity status, primacy agency, EPA region, population served, and service connections. Source: EPA Safe Drinking Water Act data.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of results (1-50, default 10) |
| state* | string | US state code (e.g. FL, CA, TX) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"state"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results (1-50, default 10)"
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "US state code (e.g. FL, CA, TX)"
}
},
"additionalProperties": false
}Annual summary air quality statistics (mean, percentiles, exceedances, completeness) per EPA monitor in a US county for a calendar year and pollutant(s). Source: US EPA AQS.
| Argument | Type | Description |
|---|---|---|
| state* | string | 2-digit state FIPS code (e.g. "06" California, "36" New York) |
| county* | string | 3-digit county FIPS code (e.g. "037" Los Angeles County; see epa-aqs.list_counties) |
| end_date* | string | End date (must be in the same calendar year as begin_date) as YYYYMMDD (e.g. "20240101") |
| max_rows | integer | Maximum number of rows to return (1-1000, default 200) |
| begin_date* | string | Begin date as YYYYMMDD (e.g. "20240101") |
| parameter_codes* | string | AQS parameter code(s), comma-separated, max 5 (e.g. "88101" PM2.5, "44201" ozone, "42101" CO; see epa-aqs.list_parameters) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"parameter_codes",
"begin_date",
"end_date",
"state",
"county"
],
"properties": {
"state": {
"type": "string",
"pattern": "^\\d{2}$",
"description": "2-digit state FIPS code (e.g. \"06\" California, \"36\" New York)"
},
"county": {
"type": "string",
"pattern": "^\\d{3}$",
"description": "3-digit county FIPS code (e.g. \"037\" Los Angeles County; see epa-aqs.list_counties)"
},
"end_date": {
"type": "string",
"pattern": "^\\d{8}$",
"description": "End date (must be in the same calendar year as begin_date) as YYYYMMDD (e.g. \"20240101\")"
},
"max_rows": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Maximum number of rows to return (1-1000, default 200)"
},
"begin_date": {
"type": "string",
"pattern": "^\\d{8}$",
"description": "Begin date as YYYYMMDD (e.g. \"20240101\")"
},
"parameter_codes": {
"type": "string",
"pattern": "^\\d{5}(,\\d{5}){0,4}$",
"description": "AQS parameter code(s), comma-separated, max 5 (e.g. \"88101\" PM2.5, \"44201\" ozone, \"42101\" CO; see epa-aqs.list_parameters)"
}
},
"additionalProperties": false
}Daily summary air quality measurements (e.g. PM2.5, ozone) from EPA monitors in a US county for a date range within one calendar year: arithmetic mean, max value, AQI, site. Source: US EPA AQS.
| Argument | Type | Description |
|---|---|---|
| state* | string | 2-digit state FIPS code (e.g. "06" California, "36" New York) |
| county* | string | 3-digit county FIPS code (e.g. "037" Los Angeles County; see epa-aqs.list_counties) |
| end_date* | string | End date (must be in the same calendar year as begin_date) as YYYYMMDD (e.g. "20240101") |
| max_rows | integer | Maximum number of rows to return (1-1000, default 200) |
| begin_date* | string | Begin date as YYYYMMDD (e.g. "20240101") |
| parameter_codes* | string | AQS parameter code(s), comma-separated, max 5 (e.g. "88101" PM2.5, "44201" ozone, "42101" CO; see epa-aqs.list_parameters) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"parameter_codes",
"begin_date",
"end_date",
"state",
"county"
],
"properties": {
"state": {
"type": "string",
"pattern": "^\\d{2}$",
"description": "2-digit state FIPS code (e.g. \"06\" California, \"36\" New York)"
},
"county": {
"type": "string",
"pattern": "^\\d{3}$",
"description": "3-digit county FIPS code (e.g. \"037\" Los Angeles County; see epa-aqs.list_counties)"
},
"end_date": {
"type": "string",
"pattern": "^\\d{8}$",
"description": "End date (must be in the same calendar year as begin_date) as YYYYMMDD (e.g. \"20240101\")"
},
"max_rows": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Maximum number of rows to return (1-1000, default 200)"
},
"begin_date": {
"type": "string",
"pattern": "^\\d{8}$",
"description": "Begin date as YYYYMMDD (e.g. \"20240101\")"
},
"parameter_codes": {
"type": "string",
"pattern": "^\\d{5}(,\\d{5}){0,4}$",
"description": "AQS parameter code(s), comma-separated, max 5 (e.g. \"88101\" PM2.5, \"44201\" ozone, \"42101\" CO; see epa-aqs.list_parameters)"
}
},
"additionalProperties": false
}List EPA air quality monitoring sites in a US county that measured given pollutant(s) in a date window: site number, location, coordinates, agency, monitoring objective. Source: US EPA AQS.
| Argument | Type | Description |
|---|---|---|
| state* | string | 2-digit state FIPS code (e.g. "06" California, "36" New York) |
| county* | string | 3-digit county FIPS code (e.g. "037" Los Angeles County; see epa-aqs.list_counties) |
| end_date* | string | End date (must be in the same calendar year as begin_date) as YYYYMMDD (e.g. "20240101") |
| max_rows | integer | Maximum number of rows to return (1-1000, default 200) |
| begin_date* | string | Begin date as YYYYMMDD (e.g. "20240101") |
| parameter_codes* | string | AQS parameter code(s), comma-separated, max 5 (e.g. "88101" PM2.5, "44201" ozone, "42101" CO; see epa-aqs.list_parameters) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"parameter_codes",
"begin_date",
"end_date",
"state",
"county"
],
"properties": {
"state": {
"type": "string",
"pattern": "^\\d{2}$",
"description": "2-digit state FIPS code (e.g. \"06\" California, \"36\" New York)"
},
"county": {
"type": "string",
"pattern": "^\\d{3}$",
"description": "3-digit county FIPS code (e.g. \"037\" Los Angeles County; see epa-aqs.list_counties)"
},
"end_date": {
"type": "string",
"pattern": "^\\d{8}$",
"description": "End date (must be in the same calendar year as begin_date) as YYYYMMDD (e.g. \"20240101\")"
},
"max_rows": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Maximum number of rows to return (1-1000, default 200)"
},
"begin_date": {
"type": "string",
"pattern": "^\\d{8}$",
"description": "Begin date as YYYYMMDD (e.g. \"20240101\")"
},
"parameter_codes": {
"type": "string",
"pattern": "^\\d{5}(,\\d{5}){0,4}$",
"description": "AQS parameter code(s), comma-separated, max 5 (e.g. \"88101\" PM2.5, \"44201\" ozone, \"42101\" CO; see epa-aqs.list_parameters)"
}
},
"additionalProperties": false
}List the counties of a US state with their FIPS codes as used by the EPA Air Quality System. Source: US EPA AQS.
| Argument | Type | Description |
|---|---|---|
| state* | string | 2-digit state FIPS code (e.g. "06" California, "36" New York) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"state"
],
"properties": {
"state": {
"type": "string",
"pattern": "^\\d{2}$",
"description": "2-digit state FIPS code (e.g. \"06\" California, \"36\" New York)"
}
},
"additionalProperties": false
}List EPA Air Quality System parameter codes (pollutants and measurements such as PM2.5 88101, ozone 44201) for a parameter class. Use the codes with the other epa-aqs tools. Source: US EPA AQS.
| Argument | Type | Description |
|---|---|---|
| parameter_class | string | Parameter class to list (default CRITERIA) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"parameter_class": {
"enum": [
"ALL",
"AQI POLLUTANTS",
"CRITERIA",
"FORECAST",
"HAPS",
"MET",
"NATTS",
"PAMS",
"SPECIATION"
],
"type": "string",
"description": "Parameter class to list (default CRITERIA)"
}
},
"additionalProperties": false
}Get metadata for one e-Stat Statistics Dashboard indicator code — name, unit, source survey, valid date range, and the cycle/regional-rank combinations it publishes (e.g. Month vs Calendar Year, Japan vs Prefecture). Call this BEFORE estat-japan-dashboard.get_data to confirm units and available cycles for the indicator. Data: dashboard.e-stat.go.jp (Japan Ministry of Internal Affairs and Communications), no auth required.
| Argument | Type | Description |
|---|---|---|
| lang | string | Response language: 'EN' (English, default) or 'JP' (Japanese). |
| indicator_code* | string | 20-digit e-Stat Dashboard indicator code to look up, e.g. '0201010000000010000' (total population). Returns the indicator name, unit, source survey, valid date range, and cycle codes per regional level — call this BEFORE estat-japan-dashboard.get_data to confirm units and available cycles. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"indicator_code"
],
"properties": {
"lang": {
"enum": [
"JP",
"EN"
],
"type": "string",
"default": "EN",
"description": "Response language: 'EN' (English, default) or 'JP' (Japanese)."
},
"indicator_code": {
"type": "string",
"description": "20-digit e-Stat Dashboard indicator code to look up, e.g. '0201010000000010000' (total population). Returns the indicator name, unit, source survey, valid date range, and cycle codes per regional level — call this BEFORE estat-japan-dashboard.get_data to confirm units and available cycles."
}
},
"additionalProperties": false
}Get metadata for one e-Stat Statistics Dashboard region code (name, level, valid date range), or omit region_code to fetch the full region catalog — Japan, its 47 prefectures and municipalities, plus world countries used for international-comparison indicators. Use this to discover region codes for estat-japan-dashboard.get_data. Data: dashboard.e-stat.go.jp, no auth required.
| Argument | Type | Description |
|---|---|---|
| lang | string | Response language: 'EN' (English, default) or 'JP' (Japanese). |
| region_code | string | Region code to look up, e.g. '13000' (Tokyo) or '00000' (Japan). Omit to fetch the full region catalog (Japan + prefectures + municipalities + world countries) so you can discover valid codes for estat-japan-dashboard.get_data. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"lang": {
"enum": [
"JP",
"EN"
],
"type": "string",
"default": "EN",
"description": "Response language: 'EN' (English, default) or 'JP' (Japanese)."
},
"region_code": {
"type": "string",
"description": "Region code to look up, e.g. '13000' (Tokyo) or '00000' (Japan). Omit to fetch the full region catalog (Japan + prefectures + municipalities + world countries) so you can discover valid codes for estat-japan-dashboard.get_data."
}
},
"additionalProperties": false
}Fetch time-series values for one or more e-Stat Statistics Dashboard indicator codes, optionally filtered by region and time range — population, labour, economy, trade, and other official Japanese government statistics (and comparable world figures for some indicators). Call estat-japan-dashboard.indicator_info first to confirm units and valid cycle for the indicator, and estat-japan-dashboard.region_info to confirm region codes. Example: total population (indicator_code='0201010000000010000'), Japan (region_code='00000'), 2020-2022 (time_from='2020CY00', time_to='2022CY00'). Data: dashboard.e-stat.go.jp, no auth required, Public Data License v1.0 (attribution required, commercial reuse permitted).
| Argument | Type | Description |
|---|---|---|
| lang | string | Response language: 'EN' (English, default) or 'JP' (Japanese). |
| cycle | string | Filter to one reporting cycle when an indicator publishes more than one, e.g. '1' (Month) or '3' (Calendar Year). See the cycle codes returned by estat-japan-dashboard.indicator_info for this indicator. |
| time_to | string | End of the time range, same notation as time_from, e.g. '2022CY00'. |
| time_from | string | Start of the time range, in the indicator's own cycle notation, e.g. '2020CY00' (calendar year 2020) or '202101' + '00' -> '20210100' (January 2021 for monthly indicators). Check the valid range and cycle in estat-japan-dashboard.indicator_info. |
| region_code | string | Region code to filter by. '00000' = Japan (national total, default upstream behaviour if omitted returns all regions the indicator has data for). 5-digit codes '01000'-'47000' are Japanese prefectures (JIS X 0401, e.g. '13000' = Tokyo). 3-digit codes (e.g. '840') are ISO 3166-1 numeric country codes for international comparison indicators. Discover codes via estat-japan-dashboard.region_info. |
| indicator_code* | string | 20-digit e-Stat Dashboard indicator code, e.g. '0201010000000010000' (total population). Comma-separate multiple codes to fetch several series in one call. Discover codes via estat-japan-dashboard.indicator_info or the public catalog at https://dashboard.e-stat.go.jp/. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"indicator_code"
],
"properties": {
"lang": {
"enum": [
"JP",
"EN"
],
"type": "string",
"default": "EN",
"description": "Response language: 'EN' (English, default) or 'JP' (Japanese)."
},
"cycle": {
"type": "string",
"description": "Filter to one reporting cycle when an indicator publishes more than one, e.g. '1' (Month) or '3' (Calendar Year). See the cycle codes returned by estat-japan-dashboard.indicator_info for this indicator."
},
"time_to": {
"type": "string",
"description": "End of the time range, same notation as time_from, e.g. '2022CY00'."
},
"time_from": {
"type": "string",
"description": "Start of the time range, in the indicator's own cycle notation, e.g. '2020CY00' (calendar year 2020) or '202101' + '00' -> '20210100' (January 2021 for monthly indicators). Check the valid range and cycle in estat-japan-dashboard.indicator_info."
},
"region_code": {
"type": "string",
"description": "Region code to filter by. '00000' = Japan (national total, default upstream behaviour if omitted returns all regions the indicator has data for). 5-digit codes '01000'-'47000' are Japanese prefectures (JIS X 0401, e.g. '13000' = Tokyo). 3-digit codes (e.g. '840') are ISO 3166-1 numeric country codes for international comparison indicators. Discover codes via estat-japan-dashboard.region_info."
},
"indicator_code": {
"type": "string",
"description": "20-digit e-Stat Dashboard indicator code, e.g. '0201010000000010000' (total population). Comma-separate multiple codes to fetch several series in one call. Discover codes via estat-japan-dashboard.indicator_info or the public catalog at https://dashboard.e-stat.go.jp/."
}
},
"additionalProperties": false
}Browse Statistics Estonia's (Statistikaamet) statistics database tree by path. Top-level databases: keskkond (environment), majandus (economy), rahvastik (population: migration, births/deaths, family), sotsiaalelu (social life: labour market, education, health), eri-valdkondade-statistika (multidomain statistics), rahvaloendus (population and housing census), Lepetatud_tabelid (discontinued datasets). Returns child nodes (subcategories, type=l) or table descriptors at leaf nodes (type=t). Use empty path '' to get the top-level databases. Navigate hierarchically until type=t nodes appear, then use estonia-statistics.table_metadata. Data: andmed.stat.ee (PXWeb API), no auth required.
| Argument | Type | Description |
|---|---|---|
| path | string | Hierarchical path through the Estonia statistics taxonomy. Empty '' gets the top-level databases: 'keskkond' (environment), 'majandus' (economy), 'rahvastik' (population), 'sotsiaalelu' (social life), 'eri-valdkondade-statistika' (multidomain statistics), 'rahvaloendus' (population and housing census), 'Lepetatud_tabelid' (discontinued datasets). Use estonia-statistics.catalog recursively to navigate until type=t (table leaf) nodes appear. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"path": {
"type": "string",
"default": "",
"description": "Hierarchical path through the Estonia statistics taxonomy. Empty '' gets the top-level databases: 'keskkond' (environment), 'majandus' (economy), 'rahvastik' (population), 'sotsiaalelu' (social life), 'eri-valdkondade-statistika' (multidomain statistics), 'rahvaloendus' (population and housing census), 'Lepetatud_tabelid' (discontinued datasets). Use estonia-statistics.catalog recursively to navigate until type=t (table leaf) nodes appear."
}
},
"additionalProperties": false
}Get metadata for a specific Estonia statistics table — title, dimensions (e.g. Aasta/Year, Näitaja/Indicator), valid value codes for each dimension, and latest update timestamp. Use this BEFORE estonia-statistics.table_query to discover accepted filter values. Example path: 'rahvastik/rahvastikunaitajad-ja-koosseis/demograafilised-pehinaitajad/RV030.PX' (births, deaths and natural increase). Data: andmed.stat.ee, no auth required.
| Argument | Type | Description |
|---|---|---|
| table_path* | string | Full path to a leaf table (type='t' from estonia-statistics.catalog), e.g. 'rahvastik/rahvastikunaitajad-ja-koosseis/demograafilised-pehinaitajad/RV030.PX' (births, deaths and natural increase). Returns title, dimension codes, and valid values to use in estonia-statistics.table_query. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"table_path"
],
"properties": {
"table_path": {
"type": "string",
"description": "Full path to a leaf table (type='t' from estonia-statistics.catalog), e.g. 'rahvastik/rahvastikunaitajad-ja-koosseis/demograafilised-pehinaitajad/RV030.PX' (births, deaths and natural increase). Returns title, dimension codes, and valid values to use in estonia-statistics.table_query."
}
},
"additionalProperties": false
}Run a statistical query against an Estonia statistics table — specify dimension filters to slice data by year and indicator. Returns JSON-stat2 format with labeled dimensions and numeric values. Call estonia-statistics.table_metadata first to discover valid dimension codes and value codes (often Estonian words, e.g. 'Aasta' for year). Example: births/deaths/natural increase (Näitaja='1','2','3'), most recent year (Aasta filter='top' values=['1']). Data: andmed.stat.ee, no auth required, CC BY-SA 4.0 (Statistics Estonia).
| Argument | Type | Description |
|---|---|---|
| query* | array | Array of dimension filters. Each filter selects which values to include for one dimension. Example: [{code:'Aasta',selection:{filter:'top',values:['3']}}, {code:'Näitaja',selection:{filter:'item',values:['1','2','3']}}]. Response is JSON-stat2 format with dimension labels and numeric values array. |
| table_path* | string | Full path to the leaf table to query — same as estonia-statistics.table_metadata table_path. Example: 'rahvastik/rahvastikunaitajad-ja-koosseis/demograafilised-pehinaitajad/RV030.PX'. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"table_path",
"query"
],
"properties": {
"query": {
"type": "array",
"items": {
"type": "object",
"required": [
"code",
"selection"
],
"properties": {
"code": {
"type": "string",
"description": "Dimension code from estonia-statistics.table_metadata variables[].code. Examples: 'Aasta' (year), 'Näitaja' (indicator). Dimension codes are frequently Estonian words with non-ASCII characters — copy them exactly as returned by table_metadata."
},
"selection": {
"type": "object",
"required": [
"filter",
"values"
],
"properties": {
"filter": {
"type": "string",
"description": "Filter type. Common values: 'item' (select by exact code), 'top' (select N most recent — use with time dimensions like 'Aasta'), 'all' (all values). Use the valueSet codes from metadata."
},
"values": {
"type": "array",
"items": {
"type": "string"
},
"description": "Array of value codes to select. Get valid codes from estonia-statistics.table_metadata variables[].values. For filter='item': list codes like ['1']. For filter='top': list count like ['3'] (3 most recent years). For filter='all': use ['*']."
}
},
"description": "Selection criteria for this dimension.",
"additionalProperties": false
}
},
"description": "Filter for one dimension (variable) in the table.",
"additionalProperties": false
},
"description": "Array of dimension filters. Each filter selects which values to include for one dimension. Example: [{code:'Aasta',selection:{filter:'top',values:['3']}}, {code:'Näitaja',selection:{filter:'item',values:['1','2','3']}}]. Response is JSON-stat2 format with dimension labels and numeric values array."
},
"table_path": {
"type": "string",
"description": "Full path to the leaf table to query — same as estonia-statistics.table_metadata table_path. Example: 'rahvastik/rahvastikunaitajad-ja-koosseis/demograafilised-pehinaitajad/RV030.PX'."
}
},
"additionalProperties": false
}List legislative texts adopted (voted into law) by the European Parliament plenary. Returns document identifiers, adoption dates, parliamentary term, parent procedure references, and Eurovoc subject thematic codes. Filter by parliamentary term (e.g. term 10 = 2024–2029 legislature). The most recent adopted texts appear first. Use the document ID (e.g. TA-10-2025-0181) to look up the full text on EUR-Lex (eurlex.legislation.detail tool). Supports pagination via limit (max 100) and offset. Data source: European Parliament Open Data API v2 — CC BY 4.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of adopted texts to return (1–100, default 20). |
| offset | integer | Number of results to skip for pagination (default 0). |
| parliamentary_term | integer | Filter by parliamentary term (1–10). Example: 10 for texts adopted in the 2024–2029 term. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of adopted texts to return (1–100, default 20)."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Number of results to skip for pagination (default 0)."
},
"parliamentary_term": {
"type": "integer",
"maximum": 10,
"minimum": 1,
"description": "Filter by parliamentary term (1–10). Example: 10 for texts adopted in the 2024–2029 term."
}
},
"additionalProperties": false
}List European Parliament legislative procedures (the full legislative tracks that produce EU law). Returns each procedure's unique EP reference (e.g. 1972/0003(COD)), procedure type code, and human-readable label. Filter by parliamentary term or procedure type: COD (ordinary legislative — co-decision with Council), CNS (consultation), BUD (budgetary), INI (own-initiative resolution), RSP (response resolution). Supports pagination via limit (max 100) and offset. Data source: European Parliament Open Data API v2 — CC BY 4.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of procedures to return (1–100, default 20). |
| offset | integer | Number of results to skip for pagination (default 0). |
| procedure_type | string | Filter by procedure type. COD=ordinary legislative, CNS=consultation, BUD=budgetary, INI=own-initiative, RSP=resolution. |
| parliamentary_term | integer | Filter by parliamentary term (1–10). Example: 10 for the 2024–2029 term procedures. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of procedures to return (1–100, default 20)."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Number of results to skip for pagination (default 0)."
},
"procedure_type": {
"enum": [
"COD",
"CNS",
"BUD",
"INI",
"RSP",
"REG",
"DEC",
"DIR"
],
"type": "string",
"description": "Filter by procedure type. COD=ordinary legislative, CNS=consultation, BUD=budgetary, INI=own-initiative, RSP=resolution."
},
"parliamentary_term": {
"type": "integer",
"maximum": 10,
"minimum": 1,
"description": "Filter by parliamentary term (1–10). Example: 10 for the 2024–2029 term procedures."
}
},
"additionalProperties": false
}Retrieve the full profile and complete parliamentary membership history of a specific MEP by their numeric CODICT identifier. Returns the MEP's name, date of birth, gender, and all committee, political group, intergroup, and delegation memberships with start/end dates and roles. Use the meps.list tool to look up MEP identifiers. Useful for understanding an MEP's committee responsibilities, political affiliations over time, and interparliamentary delegation work. Data source: European Parliament Open Data API v2 — CC BY 4.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| mep_id* | string | Numeric MEP identifier from the European Parliament CODICT system. Example: 197539 for Mikuláš Peksa. Obtain IDs via the meps.list tool. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"mep_id"
],
"properties": {
"mep_id": {
"type": "string",
"description": "Numeric MEP identifier from the European Parliament CODICT system. Example: 197539 for Mikuláš Peksa. Obtain IDs via the meps.list tool."
}
},
"additionalProperties": false
}List Members of the European Parliament (MEPs) currently serving in the active parliamentary term. Filter by country (ISO 3166-1 alpha-2 code), political group (PPE, S-D, RENEW, VERTS-ALE, ECR, THE-LEFT, ID, NI), or gender. Returns each MEP's numeric CODICT identifier, full name, family name, given name, country of representation, and political group abbreviation. Use the returned identifier with the meps.details tool to fetch the full membership history. Supports pagination via limit (max 100) and offset. Data source: European Parliament Open Data API v2 — CC BY 4.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of MEPs to return (1–100, default 50). |
| gender | string | Filter MEPs by gender (MALE or FEMALE). |
| offset | integer | Number of results to skip for pagination (default 0). |
| country | string | Filter by EU member state using ISO 3166-1 alpha-2 code. Example: DE (Germany), FR (France), PL (Poland). |
| political_group | string | Filter by EP political group abbreviation. PPE=centre-right, S-D=social-democrat, RENEW=liberal, VERTS-ALE=green, ECR=conservative, THE-LEFT=far-left, ID=far-right, NI=non-attached. |
| parliamentary_term | integer | Parliamentary term number (1–10). Omit for current term (10). Example: 10 for the 2024–2029 term. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of MEPs to return (1–100, default 50)."
},
"gender": {
"enum": [
"MALE",
"FEMALE"
],
"type": "string",
"description": "Filter MEPs by gender (MALE or FEMALE)."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Number of results to skip for pagination (default 0)."
},
"country": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Filter by EU member state using ISO 3166-1 alpha-2 code. Example: DE (Germany), FR (France), PL (Poland)."
},
"political_group": {
"enum": [
"PPE",
"NI",
"S-D",
"VERTS-ALE",
"ECR",
"RENEW",
"THE-LEFT",
"ID"
],
"type": "string",
"description": "Filter by EP political group abbreviation. PPE=centre-right, S-D=social-democrat, RENEW=liberal, VERTS-ALE=green, ECR=conservative, THE-LEFT=far-left, ID=far-right, NI=non-attached."
},
"parliamentary_term": {
"type": "integer",
"maximum": 10,
"minimum": 1,
"description": "Parliamentary term number (1–10). Omit for current term (10). Example: 10 for the 2024–2029 term."
}
},
"additionalProperties": false
}Browse EU legislative acts by document type (regulation, directive, or decision) from EUR-Lex Cellar. Returns acts with CELEX identifier, publication date, English title, in-force status, Cellar URI, and direct EUR-Lex URL, ordered by most recent date first. Regulations are directly applicable in all EU member states without national implementation; directives set binding objectives but require member state transposition; decisions are binding on specific addressees (states, companies, or individuals). Use from_year to restrict to acts published from that year onwards (e.g. 2020 for recent acts). Data source: EU Publications Office EUR-Lex Cellar — official EU law repository, no auth required, open access.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of results to return (1–20, default 10) |
| doc_type* | string | Type of EU legislative act: "regulation" (directly applicable in all EU member states), "directive" (binding on objectives, member states choose implementation means), "decision" (binding on specific addressees) |
| from_year | integer | Only return legislation from this year onwards (e.g. 2020). Omit to retrieve the most recent across all years. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"doc_type"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Maximum number of results to return (1–20, default 10)"
},
"doc_type": {
"enum": [
"regulation",
"directive",
"decision"
],
"type": "string",
"description": "Type of EU legislative act: \"regulation\" (directly applicable in all EU member states), \"directive\" (binding on objectives, member states choose implementation means), \"decision\" (binding on specific addressees)"
},
"from_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1950,
"description": "Only return legislation from this year onwards (e.g. 2020). Omit to retrieve the most recent across all years."
}
},
"additionalProperties": false
}Retrieve full metadata for a specific EU legal act identified by its CELEX number from EUR-Lex Cellar. Returns CELEX identifier, publication date, English title, in-force status, Cellar URI, and direct EUR-Lex URL. CELEX examples: "32024R1689" (EU AI Act), "32016R0679" (GDPR), "32023R1115" (EU Deforestation Regulation), "32022R2065" (Digital Services Act), "32020R0852" (EU Taxonomy Regulation). CELEX format: sector digit (3 = secondary EU law) + 4-digit year + type letter (R=Regulation, L=Directive, D=Decision) + sequential number. Returns found=false if the CELEX number does not exist in EUR-Lex Cellar. Data source: EU Publications Office EUR-Lex Cellar — official EU law repository, no auth required, open access.
| Argument | Type | Description |
|---|---|---|
| celex* | string | CELEX identifier of the EU legal act to retrieve (e.g. "32024R1689" for the EU AI Act, "32016R0679" for GDPR, "32023R1115" for EU Deforestation Regulation). Format: sector digit (3 = secondary legislation) + 4-digit year + type letter (R=Regulation, L=Directive, D=Decision) + sequential number. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"celex"
],
"properties": {
"celex": {
"type": "string",
"description": "CELEX identifier of the EU legal act to retrieve (e.g. \"32024R1689\" for the EU AI Act, \"32016R0679\" for GDPR, \"32023R1115\" for EU Deforestation Regulation). Format: sector digit (3 = secondary legislation) + 4-digit year + type letter (R=Regulation, L=Directive, D=Decision) + sequential number."
}
},
"additionalProperties": false
}Get the most recently published EU legislative acts from EUR-Lex Cellar. Returns acts ordered by publication date descending with CELEX identifier, date, English title (where available), in-force status, Cellar URI, and direct EUR-Lex URL. Covers all secondary EU legislation (regulations, directives, decisions) published within the specified number of days. Default look-back is 30 days; max 365 days. Data source: EU Publications Office EUR-Lex Cellar — official EU law repository, no auth required, open access.
| Argument | Type | Description |
|---|---|---|
| days | integer | Look back this many days for recently published EU legislation (1–365, default 30) |
| limit | integer | Maximum number of results to return (1–20, default 10) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"days": {
"type": "integer",
"maximum": 365,
"minimum": 1,
"description": "Look back this many days for recently published EU legislation (1–365, default 30)"
},
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Maximum number of results to return (1–20, default 10)"
}
},
"additionalProperties": false
}Search the official EUR-Lex Cellar SPARQL endpoint for EU legislative acts by keyword in English titles. Returns matching regulations, directives, and decisions with CELEX identifier, date, English title, in-force status, Cellar URI, and a direct EUR-Lex URL. Examples: keyword="artificial intelligence" returns the EU AI Act (32024R1689); keyword="GDPR" returns the General Data Protection Regulation (32016R0679). Results are ordered by most recent date first. Optionally restrict to acts published on or after from_date. CELEX format: 3 + 4-digit year + type letter (R=Regulation, L=Directive, D=Decision) + number. Data source: EU Publications Office EUR-Lex Cellar — official EU law repository, no auth required, open access.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of results to return (1–20, default 10) |
| keyword* | string | English keyword to search for in EU legislation titles (e.g. "artificial intelligence", "GDPR", "carbon border adjustment") |
| from_date | string | Restrict results to legislation published on or after this date in YYYY-MM-DD format (e.g. "2020-01-01"). Omit for all dates. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"keyword"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Maximum number of results to return (1–20, default 10)"
},
"keyword": {
"type": "string",
"description": "English keyword to search for in EU legislation titles (e.g. \"artificial intelligence\", \"GDPR\", \"carbon border adjustment\")"
},
"from_date": {
"type": "string",
"description": "Restrict results to legislation published on or after this date in YYYY-MM-DD format (e.g. \"2020-01-01\"). Omit for all dates."
}
},
"additionalProperties": false
}Retrieve full bibliographic details for a specific biomedical article from Europe PMC by its unique identifier. Provide a PubMed ID (PMID) for journal articles in MEDLINE, a PMC ID for full-text articles in PubMed Central, or other source-specific IDs. Returns complete metadata: title, authors, journal, publication year, abstract, keywords, MeSH terms, DOI, open-access flag, PMC full-text availability, citation count, publication types, and affiliation. Use this after a search to retrieve the full record for a specific paper.
| Argument | Type | Description |
|---|---|---|
| id* | string | Article identifier. For PubMed articles use the numeric PMID (e.g. "33000001"). For PMC full-text articles use the PMC ID without prefix (e.g. "7520369"). For other sources use the source-specific external ID. |
| src | string | Source database for the article. "MED" = PubMed/MEDLINE (default, covers most biomedical literature). "PMC" = PubMed Central full-text repository. "PPR" = preprints (bioRxiv, medRxiv). "PAT" = patents. "NBK" = NCBI Bookshelf. "ETH" = EthOS theses. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "Article identifier. For PubMed articles use the numeric PMID (e.g. \"33000001\"). For PMC full-text articles use the PMC ID without prefix (e.g. \"7520369\"). For other sources use the source-specific external ID."
},
"src": {
"enum": [
"MED",
"PMC",
"PPR",
"PAT",
"NBK",
"ETH",
"HIR",
"CTX"
],
"type": "string",
"description": "Source database for the article. \"MED\" = PubMed/MEDLINE (default, covers most biomedical literature). \"PMC\" = PubMed Central full-text repository. \"PPR\" = preprints (bioRxiv, medRxiv). \"PAT\" = patents. \"NBK\" = NCBI Bookshelf. \"ETH\" = EthOS theses."
}
},
"additionalProperties": false
}Retrieve a list of articles that cite a given biomedical publication in Europe PMC. Provide the article PMID (for PubMed/MEDLINE) or other source-specific ID. Returns the total citation count and bibliographic details for each citing article (title, authors, journal, year, PMID, DOI). Paginate through all citing articles with page_size and page parameters. Useful for forward citation tracking, identifying follow-up research, measuring impact of specific papers, and discovering related work published after the original article.
| Argument | Type | Description |
|---|---|---|
| id* | string | Numeric PMID (for MED/PubMed) or other source-specific ID of the article whose citing papers you want to retrieve (e.g. "30449648"). |
| src | string | Source database of the target article. "MED" = PubMed (default). "PMC" = PubMed Central full-text. Use the same src you used to find the article. |
| page | integer | Page number for pagination when there are many citing articles (default 1). |
| page_size | integer | Number of citing articles to return per page (1–1000, default 10). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "Numeric PMID (for MED/PubMed) or other source-specific ID of the article whose citing papers you want to retrieve (e.g. \"30449648\")."
},
"src": {
"enum": [
"MED",
"PMC",
"PPR",
"PAT",
"NBK",
"ETH",
"HIR",
"CTX"
],
"type": "string",
"description": "Source database of the target article. \"MED\" = PubMed (default). \"PMC\" = PubMed Central full-text. Use the same src you used to find the article."
},
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination when there are many citing articles (default 1)."
},
"page_size": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Number of citing articles to return per page (1–1000, default 10)."
}
},
"additionalProperties": false
}Retrieve the bibliography (reference list) of a biomedical article from Europe PMC. Provide the article PMID (for PubMed/MEDLINE) or other source-specific ID. Returns the total reference count and bibliographic details for each reference (title, authors, journal abbreviation, year, PMID, DOI where available). Paginate through all references with page_size and page parameters. Useful for backward citation tracking, understanding research foundations, identifying cited authors, and building citation networks.
| Argument | Type | Description |
|---|---|---|
| id* | string | Numeric PMID (for MED/PubMed) or other source-specific ID of the article whose bibliography you want to retrieve (e.g. "30449648"). |
| src | string | Source database of the target article. "MED" = PubMed (default). "PMC" = PubMed Central full-text. Use the same src you used to find the article. |
| page | integer | Page number for pagination when a paper has many references (default 1). |
| page_size | integer | Number of references to return per page (1–1000, default 10). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "Numeric PMID (for MED/PubMed) or other source-specific ID of the article whose bibliography you want to retrieve (e.g. \"30449648\")."
},
"src": {
"enum": [
"MED",
"PMC",
"PPR",
"PAT",
"NBK",
"ETH",
"HIR",
"CTX"
],
"type": "string",
"description": "Source database of the target article. \"MED\" = PubMed (default). \"PMC\" = PubMed Central full-text. Use the same src you used to find the article."
},
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination when a paper has many references (default 1)."
},
"page_size": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Number of references to return per page (1–1000, default 10)."
}
},
"additionalProperties": false
}Search the Europe PubMed Central (Europe PMC) database of 42M+ biomedical articles, preprints, books, and patents from PubMed/MEDLINE, PubMed Central, and bioRxiv/medRxiv. Supports rich query syntax: free-text terms, field-specific filters (TITLE:"breast cancer", AUTH:"Smith J", JOURNAL:"Nature", DISEASE:"diabetes", MH:"neoplasms" for MeSH, GRANT_AGENCY:"Wellcome Trust", OPEN_ACCESS:Y), and Boolean operators (AND, OR, NOT). Sort by relevance, date, or citation count. Returns article metadata including PMID, DOI, title, authors, journal, year, abstract (with result_type=core), open-access status, and citation count.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default 1). |
| sort | string | Sort order for results. "RELEVANCE" (default) ranks by relevance score. "DATE" returns newest first. "CITED" returns most-cited first. |
| query* | string | Europe PMC search query. Supports full-text search and field-specific syntax: TITLE:"breast cancer", AUTH:"Smith J", JOURNAL:"Nature", DISEASE:"diabetes", MH:"neoplasms" (MeSH), GRANT_AGENCY:"Wellcome Trust", OPEN_ACCESS:Y. Free-text queries search across title, abstract, and MeSH terms. |
| page_size | integer | Number of results to return per page (1–100, default 10). |
| result_type | string | Detail level of results. "lite" returns basic bibliographic fields (title, authors, journal, year, DOI, PMID). "core" adds abstract, keywords, MeSH terms, affiliation, and citation count. Default: "lite". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)."
},
"sort": {
"enum": [
"RELEVANCE",
"DATE",
"CITED"
],
"type": "string",
"description": "Sort order for results. \"RELEVANCE\" (default) ranks by relevance score. \"DATE\" returns newest first. \"CITED\" returns most-cited first."
},
"query": {
"type": "string",
"minLength": 1,
"description": "Europe PMC search query. Supports full-text search and field-specific syntax: TITLE:\"breast cancer\", AUTH:\"Smith J\", JOURNAL:\"Nature\", DISEASE:\"diabetes\", MH:\"neoplasms\" (MeSH), GRANT_AGENCY:\"Wellcome Trust\", OPEN_ACCESS:Y. Free-text queries search across title, abstract, and MeSH terms."
},
"page_size": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of results to return per page (1–100, default 10)."
},
"result_type": {
"enum": [
"lite",
"core"
],
"type": "string",
"description": "Detail level of results. \"lite\" returns basic bibliographic fields (title, authors, journal, year, DOI, PMID). \"core\" adds abstract, keywords, MeSH terms, affiliation, and citation count. Default: \"lite\"."
}
},
"additionalProperties": false
}Retrieve annual fertility and demographic indicators for EU/EEA countries from Eurostat's SDMX 2.1 API (dataset: demo_find). Includes total fertility rate, mean age of women at childbirth, mean age at first/second/third birth, median age at childbirth, and share of non-marital births. Country parameter accepts ISO 3166-1 alpha-2 codes (DE, FR, IT, ES, PL) or EU aggregates (EU27_2020, EA20). Data covers 2018–present; updated annually. Source: Eurostat, CC BY 4.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| country* | string | Eurostat geo code: ISO 3166-1 alpha-2 country (e.g. DE, FR, IT, ES, PL) or EU aggregate (EU27_2020, EA20) |
| indicator | string | Fertility indicator: TOTFERRT=total fertility rate (default), AGEMOTH=mean age at childbirth, AGEMOTH1=mean age at first birth, MEDAGEMOTH=median age at childbirth, NMARPCT=share of non-marital births (%) |
| since_year | integer | First year to include (integer, e.g. 2010). Defaults to 2010. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country"
],
"properties": {
"country": {
"type": "string",
"maxLength": 12,
"minLength": 2,
"description": "Eurostat geo code: ISO 3166-1 alpha-2 country (e.g. DE, FR, IT, ES, PL) or EU aggregate (EU27_2020, EA20)"
},
"indicator": {
"enum": [
"TOTFERRT",
"AGEMOTH",
"AGEMOTH1",
"MEDAGEMOTH",
"NMARPCT"
],
"type": "string",
"description": "Fertility indicator: TOTFERRT=total fertility rate (default), AGEMOTH=mean age at childbirth, AGEMOTH1=mean age at first birth, MEDAGEMOTH=median age at childbirth, NMARPCT=share of non-marital births (%)"
},
"since_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1960,
"description": "First year to include (integer, e.g. 2010). Defaults to 2010."
}
},
"additionalProperties": false
}Retrieve annual youth employment rate by educational attainment for EU/EEA countries from Eurostat (dataset: yth_empl_010, SDMX 2.1). Returns employment rate (% of age group) for youth aged 15–24 (default), 15–19, 15–29, 20–24, or 20–29, across all ISCED education levels combined. Country accepts ISO 3166-1 alpha-2 codes (DE, FR, ES, IT) or EU27_2020. Data covers 2005–present (with ~1 year lag). Useful for EU youth policy research, labour market analysis, and education-employment gap studies. Source: Eurostat LFS, CC BY 4.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| country* | string | Eurostat geo code: ISO 3166-1 alpha-2 country (e.g. DE, FR, ES) or EU aggregate (EU27_2020) |
| age_group | string | Youth age group: Y15-24=15 to 24 years (default), Y15-19=15 to 19 years, Y15-29=15 to 29 years, Y20-24=20 to 24 years, Y20-29=20 to 29 years |
| since_year | integer | First year to include (integer, e.g. 2010). Defaults to 2005. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country"
],
"properties": {
"country": {
"type": "string",
"maxLength": 12,
"minLength": 2,
"description": "Eurostat geo code: ISO 3166-1 alpha-2 country (e.g. DE, FR, ES) or EU aggregate (EU27_2020)"
},
"age_group": {
"enum": [
"Y15-24",
"Y15-19",
"Y15-29",
"Y20-24",
"Y20-29"
],
"type": "string",
"description": "Youth age group: Y15-24=15 to 24 years (default), Y15-19=15 to 19 years, Y15-29=15 to 29 years, Y20-24=20 to 24 years, Y20-29=20 to 29 years"
},
"since_year": {
"type": "integer",
"maximum": 2030,
"minimum": 2000,
"description": "First year to include (integer, e.g. 2010). Defaults to 2005."
}
},
"additionalProperties": false
}Retrieve annual renewable energy consumption data for EU/EEA countries from Eurostat (dataset: sdg_07_10, SDMX 2.1, SDG indicator 7.2.1). Reports primary energy consumption from renewable sources in Mtoe (million tonnes of oil equivalent), index (2005=100), or tonnes per capita. Covers solar, wind, hydro, geothermal, and biomass combined. Country accepts ISO 3166-1 alpha-2 codes (DE, SE, DK, AT) or EU27_2020. Data covers 2005–present. Useful for EU Green Deal and energy transition research. Source: Eurostat, CC BY 4.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| unit | string | Measurement unit: MTOE=million tonnes of oil equivalent (default), I05=index with 2005=100, TOE_HAB=tonnes of oil equivalent per inhabitant |
| country* | string | Eurostat geo code: ISO 3166-1 alpha-2 country (e.g. DE, SE, DK) or EU aggregate (EU27_2020) |
| since_year | integer | First year to include (integer, e.g. 2010). Defaults to 2005. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country"
],
"properties": {
"unit": {
"enum": [
"MTOE",
"I05",
"TOE_HAB"
],
"type": "string",
"description": "Measurement unit: MTOE=million tonnes of oil equivalent (default), I05=index with 2005=100, TOE_HAB=tonnes of oil equivalent per inhabitant"
},
"country": {
"type": "string",
"maxLength": 12,
"minLength": 2,
"description": "Eurostat geo code: ISO 3166-1 alpha-2 country (e.g. DE, SE, DK) or EU aggregate (EU27_2020)"
},
"since_year": {
"type": "integer",
"maximum": 2030,
"minimum": 2000,
"description": "First year to include (integer, e.g. 2010). Defaults to 2005."
}
},
"additionalProperties": false
}Retrieve annual greenhouse gas emission inventories for EU/EEA countries from Eurostat (dataset: env_air_gge, SDMX 2.1). Reports total national emissions (excl. LULUCF memo items) in million tonnes CO2-equivalent. Covers GHG (all greenhouse gases combined), CO2, CH4, N2O, HFC, PFC, and SF6. Country accepts ISO 3166-1 alpha-2 codes (DE, FR, PL) or EU27_2020 aggregate. Data covers 1985–present (with 1–2 year lag); updated annually. Source: Eurostat/EEA air emission accounts, CC BY 4.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| country* | string | Eurostat geo code: ISO 3166-1 alpha-2 country (e.g. DE, FR, PL) or EU aggregate (EU27_2020, EA20) |
| pollutant | string | Greenhouse gas or pollutant: GHG=all greenhouse gases in CO2-equivalent (default), CO2=carbon dioxide, CH4=methane, N2O=nitrous oxide, HFC=hydrofluorocarbons, PFC=perfluorocarbons, SF6=sulphur hexafluoride |
| since_year | integer | First year to include (integer, e.g. 2005). Defaults to 2000. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country"
],
"properties": {
"country": {
"type": "string",
"maxLength": 12,
"minLength": 2,
"description": "Eurostat geo code: ISO 3166-1 alpha-2 country (e.g. DE, FR, PL) or EU aggregate (EU27_2020, EA20)"
},
"pollutant": {
"enum": [
"GHG",
"CO2",
"CH4",
"N2O",
"HFC",
"PFC",
"SF6"
],
"type": "string",
"description": "Greenhouse gas or pollutant: GHG=all greenhouse gases in CO2-equivalent (default), CO2=carbon dioxide, CH4=methane, N2O=nitrous oxide, HFC=hydrofluorocarbons, PFC=perfluorocarbons, SF6=sulphur hexafluoride"
},
"since_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1985,
"description": "First year to include (integer, e.g. 2005). Defaults to 2000."
}
},
"additionalProperties": false
}Retrieve annual Gross Domestic Expenditure on R&D (GERD) for EU/EEA countries from Eurostat (dataset: rd_e_gerdtot, SDMX 2.1). Covers total and sectoral breakdowns: business enterprise (BES), government (GOV), higher education (HES), and private non-profit (PNP). Unit can be % of GDP (PC_GDP), million EUR (MIO_EUR), or million national currency (MIO_NAC). Country accepts ISO 3166-1 alpha-2 codes (DE, SE, FI) or EU27_2020. Useful for innovation policy research and EU 3%-of-GDP R&D target monitoring. Source: Eurostat, CC BY 4.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| unit | string | Measurement unit: PC_GDP=percentage of GDP (default), MIO_EUR=million euros, MIO_NAC=million national currency |
| sector | string | Performing sector: TOTAL=all sectors combined (default), BES=business enterprise sector, GOV=government sector, HES=higher education sector, PNP=private non-profit sector |
| country* | string | Eurostat geo code: ISO 3166-1 alpha-2 country (e.g. DE, FR, SE) or EU aggregate (EU27_2020) |
| since_year | integer | First year to include (integer, e.g. 2005). Defaults to 2005. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country"
],
"properties": {
"unit": {
"enum": [
"PC_GDP",
"MIO_EUR",
"MIO_NAC"
],
"type": "string",
"description": "Measurement unit: PC_GDP=percentage of GDP (default), MIO_EUR=million euros, MIO_NAC=million national currency"
},
"sector": {
"enum": [
"TOTAL",
"BES",
"GOV",
"HES",
"PNP"
],
"type": "string",
"description": "Performing sector: TOTAL=all sectors combined (default), BES=business enterprise sector, GOV=government sector, HES=higher education sector, PNP=private non-profit sector"
},
"country": {
"type": "string",
"maxLength": 12,
"minLength": 2,
"description": "Eurostat geo code: ISO 3166-1 alpha-2 country (e.g. DE, FR, SE) or EU aggregate (EU27_2020)"
},
"since_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1980,
"description": "First year to include (integer, e.g. 2005). Defaults to 2005."
}
},
"additionalProperties": false
}Get full details for a specific EV charging station by ID — address, GPS coordinates, all connectors with type/power/status, network operator, usage cost, verification date, number of charging points. Use station ID from search or nearby results (Open Charge Map)
| Argument | Type | Description |
|---|---|---|
| id* | integer | Open Charge Map station ID — get from search or nearby results |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"description": "Open Charge Map station ID — get from search or nearby results"
}
},
"additionalProperties": false
}Find the nearest EV charging stations to GPS coordinates within a radius (default 5km). Returns stations sorted by distance with connector types, power levels, and availability status. Filter by minimum power kW and connector type for DC fast charging (Open Charge Map)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum results (1-50, default 10) |
| radius | number | Search radius in KM (default 5) |
| latitude* | number | GPS latitude of your location (e.g. 40.7128) |
| longitude* | number | GPS longitude of your location (e.g. -74.0060) |
| min_power_kw | number | Minimum charger power in kW (e.g. 50 for DC fast charging) |
| connection_type_id | integer | Filter by connector type (25=Type 2, 33=CCS, 2=CHAdeMO) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum results (1-50, default 10)"
},
"radius": {
"type": "number",
"description": "Search radius in KM (default 5)"
},
"latitude": {
"type": "number",
"description": "GPS latitude of your location (e.g. 40.7128)"
},
"longitude": {
"type": "number",
"description": "GPS longitude of your location (e.g. -74.0060)"
},
"min_power_kw": {
"type": "number",
"description": "Minimum charger power in kW (e.g. 50 for DC fast charging)"
},
"connection_type_id": {
"type": "integer",
"description": "Filter by connector type (25=Type 2, 33=CCS, 2=CHAdeMO)"
}
},
"additionalProperties": false
}Search 300K+ EV charging stations worldwide by location, country, operator, connector type, and power level. Returns station address, GPS coordinates, connectors (Type 2, CCS, CHAdeMO), power kW, operator, status. Filter by min power for fast charging. Largest open EV charging database (Open Charge Map)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum results to return (1-100, default 20) |
| distance | number | Search radius in distance_unit (default KM) |
| latitude | number | Latitude for location-based search (e.g. 51.5074) |
| longitude | number | Longitude for location-based search (e.g. -0.1278) |
| operator_id | integer | Filter by charging network operator ID |
| country_code | string | ISO 2-letter country code to filter by (e.g. "US", "GB", "DE") |
| min_power_kw | number | Minimum charger power in kW (e.g. 50 for fast charging) |
| distance_unit | string | Distance unit: KM or Miles (default KM) |
| status_type_id | integer | Filter by status (50=Operational, 100=Not Operational) |
| connection_type_id | integer | Filter by connector type (e.g. 25=Type 2, 33=CCS, 2=CHAdeMO) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum results to return (1-100, default 20)"
},
"distance": {
"type": "number",
"description": "Search radius in distance_unit (default KM)"
},
"latitude": {
"type": "number",
"description": "Latitude for location-based search (e.g. 51.5074)"
},
"longitude": {
"type": "number",
"description": "Longitude for location-based search (e.g. -0.1278)"
},
"operator_id": {
"type": "integer",
"description": "Filter by charging network operator ID"
},
"country_code": {
"type": "string",
"description": "ISO 2-letter country code to filter by (e.g. \"US\", \"GB\", \"DE\")"
},
"min_power_kw": {
"type": "number",
"description": "Minimum charger power in kW (e.g. 50 for fast charging)"
},
"distance_unit": {
"enum": [
"KM",
"Miles"
],
"type": "string",
"description": "Distance unit: KM or Miles (default KM)"
},
"status_type_id": {
"type": "integer",
"description": "Filter by status (50=Operational, 100=Not Operational)"
},
"connection_type_id": {
"type": "integer",
"description": "Filter by connector type (e.g. 25=Type 2, 33=CCS, 2=CHAdeMO)"
}
},
"additionalProperties": false
}Get the finishing results for a specific Formula 1 race: final classified positions, driver name, constructor, grid position, laps completed, finish status (Finished/DNF/DSQ/+N Laps), points scored, finish time, and fastest lap time and rank. Defaults to the most recently completed race (round=last) of the current season. Specify season + round to fetch any race back to 1950. Data source: Jolpica F1 (Ergast-compatible API) — free, unlimited, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of results to return (1–100, default 30). |
| round | string | number | Race round number within the season (1-based), or 'last' for the most recent completed race. Omit for last race. |
| offset | integer | Pagination offset — number of results to skip (default 0). |
| season | string | number | Season year (e.g. 2026, 2024, 2023). Omit for the current season. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of results to return (1–100, default 30)."
},
"round": {
"type": [
"string",
"number"
],
"description": "Race round number within the season (1-based), or 'last' for the most recent completed race. Omit for last race."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset — number of results to skip (default 0)."
},
"season": {
"type": [
"string",
"number"
],
"description": "Season year (e.g. 2026, 2024, 2023). Omit for the current season."
}
},
"additionalProperties": false
}Get the Formula 1 race calendar for any season from 1950 to the current year. Returns each Grand Prix with round number, race name, circuit, location, race date/time (UTC), qualifying date/time, and sprint date when applicable. Omit the season parameter to get the current season schedule. Data source: Jolpica F1 (Ergast-compatible API) — free, unlimited, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of results to return (1–100, default 30). |
| offset | integer | Pagination offset — number of results to skip (default 0). |
| season | string | number | Season year (e.g. 2026, 2024, 2023). Omit for the current season. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of results to return (1–100, default 30)."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset — number of results to skip (default 0)."
},
"season": {
"type": [
"string",
"number"
],
"description": "Season year (e.g. 2026, 2024, 2023). Omit for the current season."
}
},
"additionalProperties": false
}Get Formula 1 World Constructors Championship standings for any season. Returns each team (constructor) ranked by points, with nationality, total wins, and championship points as of the latest completed round. Omit the season parameter to get current live standings. Historical seasons available back to 1958 (first constructor championship). Data source: Jolpica F1 (Ergast-compatible API) — free, unlimited, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of results to return (1–100, default 30). |
| offset | integer | Pagination offset — number of results to skip (default 0). |
| season | string | number | Season year (e.g. 2026, 2024, 2023). Omit for the current season. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of results to return (1–100, default 30)."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset — number of results to skip (default 0)."
},
"season": {
"type": [
"string",
"number"
],
"description": "Season year (e.g. 2026, 2024, 2023). Omit for the current season."
}
},
"additionalProperties": false
}Get Formula 1 World Drivers Championship standings for any season. Returns each driver ranked by points, with their constructor, nationality, wins count, and total championship points as of the latest completed round. Omit the season parameter to get current live standings. Historical seasons available back to 1950. Data source: Jolpica F1 (Ergast-compatible API) — free, unlimited, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of results to return (1–100, default 30). |
| offset | integer | Pagination offset — number of results to skip (default 0). |
| season | string | number | Season year (e.g. 2026, 2024, 2023). Omit for the current season. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of results to return (1–100, default 30)."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset — number of results to skip (default 0)."
},
"season": {
"type": [
"string",
"number"
],
"description": "Season year (e.g. 2026, 2024, 2023). Omit for the current season."
}
},
"additionalProperties": false
}Retrieve prevalence of moderate or severe food insecurity (%) for a country based on the Food Insecurity Experience Scale (FIES). Data from FAO FAOSTAT — UN SDG Indicator 2.1.2. Covers ~140 countries with FIES survey data. Accepts ISO alpha-2 (e.g. "ET"), alpha-3, or ISO numeric country codes.
| Argument | Type | Description |
|---|---|---|
| end_year | integer | End year for the time series (default: latest available) |
| start_year | integer | Start year for the time series (default: 2015, earliest available: 1961) |
| country_code* | string | Country code: ISO 3166-1 alpha-2 (e.g. "IN", "US", "ET"), alpha-3 (e.g. "IND"), or ISO numeric (e.g. "356") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country_code"
],
"properties": {
"end_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1961,
"description": "End year for the time series (default: latest available)"
},
"start_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1961,
"description": "Start year for the time series (default: 2015, earliest available: 1961)"
},
"country_code": {
"type": "string",
"maxLength": 3,
"minLength": 2,
"description": "Country code: ISO 3166-1 alpha-2 (e.g. \"IN\", \"US\", \"ET\"), alpha-3 (e.g. \"IND\"), or ISO numeric (e.g. \"356\")"
}
},
"additionalProperties": false
}Retrieve the global food loss index and food loss percentage by food group (cereals, fruits & vegetables, meat, roots & tubers, pulses) for world regions. Data from FAO FAOSTAT — UN SDG Indicator 12.3.1. An index above 100 means more loss than the 2014-2016 baseline. Optionally filter by a specific year.
| Argument | Type | Description |
|---|---|---|
| year | integer | Specific year to filter food loss data (e.g. 2022). Omit for full available range. |
| end_year | integer | End year for the time series (default: latest available) |
| start_year | integer | Start year for the time series (default: 2015, earliest available: 1961) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"year": {
"type": "integer",
"maximum": 2030,
"minimum": 2000,
"description": "Specific year to filter food loss data (e.g. 2022). Omit for full available range."
},
"end_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1961,
"description": "End year for the time series (default: latest available)"
},
"start_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1961,
"description": "Start year for the time series (default: 2015, earliest available: 1961)"
}
},
"additionalProperties": false
}Retrieve prevalence of undernourishment (% of population) and count of undernourished people (millions) for any country over time. Data from FAO FAOSTAT — UN SDG Indicator 2.1.1. Covers 190+ countries, annual data since 2001. Accepts ISO alpha-2 (e.g. "IN"), alpha-3 (e.g. "IND"), or ISO numeric (e.g. "356") country codes.
| Argument | Type | Description |
|---|---|---|
| end_year | integer | End year for the time series (default: latest available) |
| start_year | integer | Start year for the time series (default: 2015, earliest available: 1961) |
| country_code* | string | Country code: ISO 3166-1 alpha-2 (e.g. "IN", "US", "ET"), alpha-3 (e.g. "IND"), or ISO numeric (e.g. "356") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country_code"
],
"properties": {
"end_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1961,
"description": "End year for the time series (default: latest available)"
},
"start_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1961,
"description": "Start year for the time series (default: 2015, earliest available: 1961)"
},
"country_code": {
"type": "string",
"maxLength": 3,
"minLength": 2,
"description": "Country code: ISO 3166-1 alpha-2 (e.g. \"IN\", \"US\", \"ET\"), alpha-3 (e.g. \"IND\"), or ISO numeric (e.g. \"356\")"
}
},
"additionalProperties": false
}Retrieve forest area as a percentage of total land area and in hectares for any country. Data from FAO FAOSTAT — UN SDG Indicator 15.1.1. Covers 200+ countries, annual data. Accepts ISO alpha-2 (e.g. "BR"), alpha-3 (e.g. "BRA"), or ISO numeric country codes.
| Argument | Type | Description |
|---|---|---|
| end_year | integer | End year for the time series (default: latest available) |
| start_year | integer | Start year for the time series (default: 2015, earliest available: 1961) |
| country_code* | string | Country code: ISO 3166-1 alpha-2 (e.g. "IN", "US", "ET"), alpha-3 (e.g. "IND"), or ISO numeric (e.g. "356") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country_code"
],
"properties": {
"end_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1961,
"description": "End year for the time series (default: latest available)"
},
"start_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1961,
"description": "Start year for the time series (default: 2015, earliest available: 1961)"
},
"country_code": {
"type": "string",
"maxLength": 3,
"minLength": 2,
"description": "Country code: ISO 3166-1 alpha-2 (e.g. \"IN\", \"US\", \"ET\"), alpha-3 (e.g. \"IND\"), or ISO numeric (e.g. \"356\")"
}
},
"additionalProperties": false
}Retrieve freshwater withdrawal as a percentage of available freshwater resources for a country. High values (>40%) indicate severe water stress. Data from FAO FAOSTAT — UN SDG Indicator 6.4.2. Covers 211 countries. Accepts ISO alpha-2 (e.g. "IN"), alpha-3, or ISO numeric country codes.
| Argument | Type | Description |
|---|---|---|
| end_year | integer | End year for the time series (default: latest available) |
| start_year | integer | Start year for the time series (default: 2015, earliest available: 1961) |
| country_code* | string | Country code: ISO 3166-1 alpha-2 (e.g. "IN", "US", "ET"), alpha-3 (e.g. "IND"), or ISO numeric (e.g. "356") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country_code"
],
"properties": {
"end_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1961,
"description": "End year for the time series (default: latest available)"
},
"start_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1961,
"description": "Start year for the time series (default: 2015, earliest available: 1961)"
},
"country_code": {
"type": "string",
"maxLength": 3,
"minLength": 2,
"description": "Country code: ISO 3166-1 alpha-2 (e.g. \"IN\", \"US\", \"ET\"), alpha-3 (e.g. \"IND\"), or ISO numeric (e.g. \"356\")"
}
},
"additionalProperties": false
}Retrieve national year-over-year annual crime totals from FBI UCR data, aggregated from monthly reporting. Returns total offense counts, average rate per 100,000 population, total clearances, and clearance rate percentage for each calendar year. Supports date ranges spanning multiple decades (data available from 1979). Ideal for long-term trend analysis: "Has the US murder rate declined since the 1990s?" or "What are 10-year property crime trends?". Source: FBI UCR / CDE, US Gov public domain, no auth required.
| Argument | Type | Description |
|---|---|---|
| to_year | integer | End year for annual trend data inclusive (e.g. 2022). Defaults to last full year. |
| from_year | integer | Start year for annual trend data (e.g. 2010). Data available from 1979. |
| offense_type* | string | FBI UCR offense category. violent-crime (murder+rape+robbery+assault), property-crime (burglary+larceny+auto+arson), or individual offense type |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"offense_type"
],
"properties": {
"to_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1979,
"description": "End year for annual trend data inclusive (e.g. 2022). Defaults to last full year."
},
"from_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1979,
"description": "Start year for annual trend data (e.g. 2010). Data available from 1979."
},
"offense_type": {
"enum": [
"violent-crime",
"property-crime",
"homicide",
"rape",
"robbery",
"aggravated-assault",
"burglary",
"larceny",
"motor-vehicle-theft",
"arson"
],
"type": "string",
"description": "FBI UCR offense category. violent-crime (murder+rape+robbery+assault), property-crime (burglary+larceny+auto+arson), or individual offense type"
}
},
"additionalProperties": false
}Retrieve monthly national Uniform Crime Reporting (UCR) crime statistics from the FBI Crime Data Explorer. Returns raw offense counts, rates per 100,000 population, and clearance counts by month for the requested offense type and date range. Offense types include violent-crime, property-crime, homicide, rape, robbery, aggravated-assault, burglary, larceny, motor-vehicle-theft, and arson. Data covers the full US participating law-enforcement agencies (95%+ population coverage). Source: FBI UCR / CDE, US Gov public domain, api.data.gov, no auth required.
| Argument | Type | Description |
|---|---|---|
| to_month | string | End month in MM-YYYY format (e.g. 12-2022). Defaults to last full year. |
| from_month | string | Start month in MM-YYYY format (e.g. 01-2019). Data available from 01-1979. |
| offense_type* | string | FBI UCR offense category. violent-crime (murder+rape+robbery+assault), property-crime (burglary+larceny+auto+arson), or individual offense type |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"offense_type"
],
"properties": {
"to_month": {
"type": "string",
"pattern": "^\\d{2}-\\d{4}$",
"description": "End month in MM-YYYY format (e.g. 12-2022). Defaults to last full year."
},
"from_month": {
"type": "string",
"pattern": "^\\d{2}-\\d{4}$",
"description": "Start month in MM-YYYY format (e.g. 01-2019). Data available from 01-1979."
},
"offense_type": {
"enum": [
"violent-crime",
"property-crime",
"homicide",
"rape",
"robbery",
"aggravated-assault",
"burglary",
"larceny",
"motor-vehicle-theft",
"arson"
],
"type": "string",
"description": "FBI UCR offense category. violent-crime (murder+rape+robbery+assault), property-crime (burglary+larceny+auto+arson), or individual offense type"
}
},
"additionalProperties": false
}Retrieve state-level annual crime totals from FBI UCR data with national comparison, aggregated from monthly reporting. Returns year-by-year offense counts, rates, clearances, and clearance rates for both the specified state and the national average. Perfect for tracking state crime trends over time and comparing against the national picture. Supports 50 states + DC (2-letter code) and multi-decade date ranges back to 1979. Source: FBI UCR / CDE, US Gov public domain, no auth required.
| Argument | Type | Description |
|---|---|---|
| state* | string | Two-letter US state abbreviation (e.g. CA, TX, NY, FL). All 50 states + DC supported. |
| to_year | integer | End year for annual trend data inclusive (e.g. 2022). Defaults to last full year. |
| from_year | integer | Start year for annual trend data (e.g. 2010). Data available from 1979. |
| offense_type* | string | FBI UCR offense category. violent-crime (murder+rape+robbery+assault), property-crime (burglary+larceny+auto+arson), or individual offense type |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"state",
"offense_type"
],
"properties": {
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Two-letter US state abbreviation (e.g. CA, TX, NY, FL). All 50 states + DC supported."
},
"to_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1979,
"description": "End year for annual trend data inclusive (e.g. 2022). Defaults to last full year."
},
"from_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1979,
"description": "Start year for annual trend data (e.g. 2010). Data available from 1979."
},
"offense_type": {
"enum": [
"violent-crime",
"property-crime",
"homicide",
"rape",
"robbery",
"aggravated-assault",
"burglary",
"larceny",
"motor-vehicle-theft",
"arson"
],
"type": "string",
"description": "FBI UCR offense category. violent-crime (murder+rape+robbery+assault), property-crime (burglary+larceny+auto+arson), or individual offense type"
}
},
"additionalProperties": false
}Retrieve monthly state-level UCR crime statistics from the FBI Crime Data Explorer, including a side-by-side national comparison. Returns offense counts, rates per 100,000 people, and clearance counts for both the requested state and the national average. Supports all 50 US states and DC (use 2-letter abbreviation, e.g. CA, TX, NY). Same 10 offense types as the national endpoint. Ideal for comparing a state's crime rate against the national benchmark. Source: FBI UCR / CDE, US Gov public domain, no auth required.
| Argument | Type | Description |
|---|---|---|
| state* | string | Two-letter US state abbreviation (e.g. CA, TX, NY, FL). All 50 states + DC supported. |
| to_month | string | End month in MM-YYYY format (e.g. 12-2022). Defaults to last full year. |
| from_month | string | Start month in MM-YYYY format (e.g. 01-2019). Data available from 01-1979. |
| offense_type* | string | FBI UCR offense category. violent-crime (murder+rape+robbery+assault), property-crime (burglary+larceny+auto+arson), or individual offense type |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"state",
"offense_type"
],
"properties": {
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Two-letter US state abbreviation (e.g. CA, TX, NY, FL). All 50 states + DC supported."
},
"to_month": {
"type": "string",
"pattern": "^\\d{2}-\\d{4}$",
"description": "End month in MM-YYYY format (e.g. 12-2022). Defaults to last full year."
},
"from_month": {
"type": "string",
"pattern": "^\\d{2}-\\d{4}$",
"description": "Start month in MM-YYYY format (e.g. 01-2019). Data available from 01-1979."
},
"offense_type": {
"enum": [
"violent-crime",
"property-crime",
"homicide",
"rape",
"robbery",
"aggravated-assault",
"burglary",
"larceny",
"motor-vehicle-theft",
"arson"
],
"type": "string",
"description": "FBI UCR offense category. violent-crime (murder+rape+robbery+assault), property-crime (burglary+larceny+auto+arson), or individual offense type"
}
},
"additionalProperties": false
}Browse FBI wanted posters by category: Ten Most Wanted Fugitives, Most Wanted Fraudsters, kidnappings, missing persons, seeking-information cases, Endangered Child Alert Program, or law-enforcement-assistance requests. Returns the same subject detail as fbiwanted.persons.search (api.fbi.gov)
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default 1). |
| category* | string | Poster category: "ten" (Ten Most Wanted Fugitives), "fraudster" (Most Wanted Fraudsters), "kidnapping", "missing" (missing persons), "information" (seeking information), "ecap" (Endangered Child Alert Program), "law-enforcement-assistance", or "default" (general wanted). |
| page_size | integer | Results per page (default 20, max 50). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"category"
],
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)."
},
"category": {
"enum": [
"ten",
"fraudster",
"kidnapping",
"missing",
"information",
"ecap",
"law-enforcement-assistance",
"default"
],
"type": "string",
"description": "Poster category: \"ten\" (Ten Most Wanted Fugitives), \"fraudster\" (Most Wanted Fraudsters), \"kidnapping\", \"missing\" (missing persons), \"information\" (seeking information), \"ecap\" (Endangered Child Alert Program), \"law-enforcement-assistance\", or \"default\" (general wanted)."
},
"page_size": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Results per page (default 20, max 50)."
}
},
"additionalProperties": false
}Get the most recently published FBI wanted posters, newest first, optionally restricted to one FBI field office. Useful for monitoring newly added subjects (api.fbi.gov, public US Government data)
| Argument | Type | Description |
|---|---|---|
| page_size | integer | Number of most recently published entries to return (default 20, max 50). |
| field_office | string | Restrict to a specific FBI field office slug (e.g. "seattle", "miami", "losangeles"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page_size": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of most recently published entries to return (default 20, max 50)."
},
"field_office": {
"type": "string",
"description": "Restrict to a specific FBI field office slug (e.g. \"seattle\", \"miami\", \"losangeles\")."
}
},
"additionalProperties": false
}Search the FBI Wanted API for wanted persons, fugitives, and missing/victim listings. Filter by name, FBI field office, sex, race, or person classification. Returns title, charges, physical description, reward, field offices, and photos for each match (api.fbi.gov, public US Government data)
| Argument | Type | Description |
|---|---|---|
| sex | string | Filter by sex (lowercase values only). |
| page | integer | Page number for pagination (default 1). |
| race | string | Filter by race, lowercase (e.g. "white", "black", "hispanic", "asian", "native"). |
| title | string | Filter by name/title, partial case-insensitive match (e.g. "smith"). |
| page_size | integer | Results per page (default 20, max 50). |
| field_office | string | Filter by FBI field office slug handling the case (e.g. "seattle", "miami", "losangeles"). |
| person_classification | string | Filter by classification, e.g. "Main" (the wanted subject) or "Victim". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"sex": {
"enum": [
"male",
"female"
],
"type": "string",
"description": "Filter by sex (lowercase values only)."
},
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)."
},
"race": {
"type": "string",
"description": "Filter by race, lowercase (e.g. \"white\", \"black\", \"hispanic\", \"asian\", \"native\")."
},
"title": {
"type": "string",
"description": "Filter by name/title, partial case-insensitive match (e.g. \"smith\")."
},
"page_size": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Results per page (default 20, max 50)."
},
"field_office": {
"type": "string",
"description": "Filter by FBI field office slug handling the case (e.g. \"seattle\", \"miami\", \"losangeles\")."
},
"person_classification": {
"type": "string",
"description": "Filter by classification, e.g. \"Main\" (the wanted subject) or \"Victim\"."
}
},
"additionalProperties": false
}Look up the US Census Block FIPS code, county FIPS, and state for any US latitude/longitude coordinate using the FCC Census Block API. Returns the 15-digit Block FIPS (state + county + tract + block), bounding box, county name, and state code. Useful for determining which regulatory jurisdiction, broadband program, or census reporting area a location falls within. No API key required.
| Argument | Type | Description |
|---|---|---|
| latitude* | number | Latitude of the location (e.g. 38.9072). |
| longitude* | number | Longitude of the location (e.g. -77.0369). |
| census_year | string | Census year for block boundaries: "2000", "2010", or "2020" (default current). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude"
],
"properties": {
"latitude": {
"type": "number",
"description": "Latitude of the location (e.g. 38.9072)."
},
"longitude": {
"type": "number",
"description": "Longitude of the location (e.g. -77.0369)."
},
"census_year": {
"enum": [
"2000",
"2010",
"2020"
],
"type": "string",
"description": "Census year for block boundaries: \"2000\", \"2010\", or \"2020\" (default current)."
}
},
"additionalProperties": false
}Get full details of a specific FCC proceeding by docket number from ECFS. Returns the description, bureau, type (Rulemaking vs Docket), open/closed status, filing count, and all key dates (created, NPRM, public notice). Use after fcc.regulatory.search_proceedings to get full details of a specific docket.
| Argument | Type | Description |
|---|---|---|
| docket* | string | FCC docket number to look up (e.g. "17-108" for Restoring Internet Freedom, "22-461" for broadband rules). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"docket"
],
"properties": {
"docket": {
"type": "string",
"description": "FCC docket number to look up (e.g. \"17-108\" for Restoring Internet Freedom, \"22-461\" for broadband rules)."
}
},
"additionalProperties": false
}Search FCC regulatory filings, public comments, and orders within ECFS proceedings. Returns filer names, law firms, submission types, document links, and dates. Use to find public comments on FCC rules, industry petitions, and official orders. Filter by docket number (e.g. "17-108" for Restoring Internet Freedom, "22-461" for broadband) or browse recent filings.
| Argument | Type | Description |
|---|---|---|
| sort | string | Sort field and direction (e.g. "date_received,DESC" or "date_disseminated,ASC"). Default: newest received first. |
| limit | integer | Number of filings to return (default 10, max 25). |
| docket | string | FCC docket/proceeding number to filter filings by (e.g. "17-108", "22-461", "21-93"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"sort": {
"type": "string",
"description": "Sort field and direction (e.g. \"date_received,DESC\" or \"date_disseminated,ASC\"). Default: newest received first."
},
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Number of filings to return (default 10, max 25)."
},
"docket": {
"type": "string",
"description": "FCC docket/proceeding number to filter filings by (e.g. \"17-108\", \"22-461\", \"21-93\")."
}
},
"additionalProperties": false
}Search FCC regulatory proceedings and rulemaking dockets from the Electronic Comment Filing System (ECFS). Returns docket numbers, descriptions, bureaus, filing counts, and dates. Use to research telecom regulatory actions on topics like net neutrality, spectrum allocation, broadband deployment, and consumer protection. Filter by bureau (WC, MB, WTB, OET) or keyword.
| Argument | Type | Description |
|---|---|---|
| q | string | Free-text search query across proceeding descriptions (e.g. "net neutrality", "broadband", "spectrum"). |
| sort | string | Sort field and direction (e.g. "date_proceeding_created,DESC" or "total_filing_count,DESC"). Default: newest first. |
| limit | integer | Number of proceedings to return (default 10, max 25). |
| bureau | string | FCC bureau code to filter by (e.g. "WC" Wireline, "MB" Media, "WTB" Wireless, "OET" Engineering). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"q": {
"type": "string",
"description": "Free-text search query across proceeding descriptions (e.g. \"net neutrality\", \"broadband\", \"spectrum\")."
},
"sort": {
"type": "string",
"description": "Sort field and direction (e.g. \"date_proceeding_created,DESC\" or \"total_filing_count,DESC\"). Default: newest first."
},
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Number of proceedings to return (default 10, max 25)."
},
"bureau": {
"type": "string",
"description": "FCC bureau code to filter by (e.g. \"WC\" Wireline, \"MB\" Media, \"WTB\" Wireless, \"OET\" Engineering)."
}
},
"additionalProperties": false
}Search the FDA National Drug Code Directory — 137,000+ marketed US drug products. Returns product NDC, generic/brand name, labeler (manufacturer), active ingredients and strengths, dosage form, route of administration, marketing category, pharm class, and DEA schedule. Filter using Lucene syntax: generic_name:"ibuprofen" or product_ndc:"0069-2587". Useful for drug identification, manufacturer lookup, and dosage-form/ingredient research by NDC code or name. Source: FDA NDC Directory, US public domain.
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of records to skip for pagination (default 0). |
| limit | integer | Number of records to return (1–99, default 10). |
| search | string | OpenFDA search expression using Lucene syntax. Single field: brand_name:"tylenol" or classification:"Class I". Combined: generic_name:"ibuprofen"+AND+dosage_form:"TABLET". Omit to return recent records sorted by date. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"skip": {
"type": "integer",
"minimum": 0,
"description": "Number of records to skip for pagination (default 0)."
},
"limit": {
"type": "integer",
"maximum": 99,
"minimum": 1,
"description": "Number of records to return (1–99, default 10)."
},
"search": {
"type": "string",
"description": "OpenFDA search expression using Lucene syntax. Single field: brand_name:\"tylenol\" or classification:\"Class I\". Combined: generic_name:\"ibuprofen\"+AND+dosage_form:\"TABLET\". Omit to return recent records sorted by date."
}
},
"additionalProperties": false
}Search FDA drug recall enforcement records — 17,000+ drug recall actions. Returns recall classification (Class I=serious/Class II/Class III), status (Ongoing/Terminated/Completed), reason for recall, recalling firm, product description, distribution pattern, and recall initiation date. Filter using Lucene syntax: recalling_firm:"Pfizer" or classification:"Class I". Distinct from device recalls (openfda_devices.recalls) and food recalls (health.food_enforcement) — this covers drug products only. Source: FDA drug enforcement database, US public domain.
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of records to skip for pagination (default 0). |
| limit | integer | Number of records to return (1–99, default 10). |
| search | string | OpenFDA search expression using Lucene syntax. Single field: brand_name:"tylenol" or classification:"Class I". Combined: generic_name:"ibuprofen"+AND+dosage_form:"TABLET". Omit to return recent records sorted by date. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"skip": {
"type": "integer",
"minimum": 0,
"description": "Number of records to skip for pagination (default 0)."
},
"limit": {
"type": "integer",
"maximum": 99,
"minimum": 1,
"description": "Number of records to return (1–99, default 10)."
},
"search": {
"type": "string",
"description": "OpenFDA search expression using Lucene syntax. Single field: brand_name:\"tylenol\" or classification:\"Class I\". Combined: generic_name:\"ibuprofen\"+AND+dosage_form:\"TABLET\". Omit to return recent records sorted by date."
}
},
"additionalProperties": false
}Search the FDA CAERS database of consumer-reported adverse events for foods and dietary supplements. Returns reported reactions, outcomes (hospitalization, death, etc.), implicated product names and industry, and consumer demographics (age, gender). Filter using Lucene syntax: products.industry_name:"Vit/Min/Prot/Unconv Diet(Human/Animal)" or reactions:"NAUSEA". Distinct from food recall enforcement (health.food_enforcement) — this covers consumer-reported illness/injury, not manufacturer recalls. Source: FDA CAERS database, US public domain.
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of records to skip for pagination (default 0). |
| limit | integer | Number of records to return (1–99, default 10). |
| search | string | OpenFDA search expression using Lucene syntax. Single field: brand_name:"tylenol" or classification:"Class I". Combined: generic_name:"ibuprofen"+AND+dosage_form:"TABLET". Omit to return recent records sorted by date. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"skip": {
"type": "integer",
"minimum": 0,
"description": "Number of records to skip for pagination (default 0)."
},
"limit": {
"type": "integer",
"maximum": 99,
"minimum": 1,
"description": "Number of records to return (1–99, default 10)."
},
"search": {
"type": "string",
"description": "OpenFDA search expression using Lucene syntax. Single field: brand_name:\"tylenol\" or classification:\"Class I\". Combined: generic_name:\"ibuprofen\"+AND+dosage_form:\"TABLET\". Omit to return recent records sorted by date."
}
},
"additionalProperties": false
}Get full regulatory profile for an FDIC-insured bank by certificate number. Returns address, charter class, regulator, assets, deposits, branches, established date, insurance date, and coordinates.
| Argument | Type | Description |
|---|---|---|
| cert* | integer | FDIC certificate number uniquely identifying the institution (obtain via fdic.search) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"cert"
],
"properties": {
"cert": {
"type": "integer",
"description": "FDIC certificate number uniquely identifying the institution (obtain via fdic.search)"
}
},
"additionalProperties": false
}Query the FDIC failed bank list. Returns 4,100+ historical bank failures with failure date, assets at closure, acquiring institution, and estimated loss to the Deposit Insurance Fund. Covers all failures since 1934.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of results to return, max 50 (default 10) |
| state | string | Two-letter US state code filter (e.g. "CA", "NY", "TX") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results to return, max 50 (default 10)"
},
"state": {
"type": "string",
"description": "Two-letter US state code filter (e.g. \"CA\", \"NY\", \"TX\")"
}
},
"additionalProperties": false
}Retrieve quarterly Call Report financial data for an FDIC-insured institution. Returns total assets, deposits, equity, net income, ROA, ROE, net interest margin, and efficiency ratio.
| Argument | Type | Description |
|---|---|---|
| cert* | integer | FDIC certificate number for the institution |
| limit | integer | Number of quarterly periods to return, max 20 (default 4) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"cert"
],
"properties": {
"cert": {
"type": "integer",
"description": "FDIC certificate number for the institution"
},
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of quarterly periods to return, max 20 (default 4)"
}
},
"additionalProperties": false
}Search 4,300+ FDIC-insured US financial institutions by name, city, state, or charter type. Returns bank name, FDIC certificate number, total assets, deposits, and location. Official US Government data.
| Argument | Type | Description |
|---|---|---|
| city | string | City name filter (e.g. "New York", "San Francisco") |
| name | string | Partial or full institution name to search (e.g. "Chase", "Wells Fargo") |
| limit | integer | Number of results to return, max 50 (default 10) |
| state | string | US state name filter (e.g. "California", "New York") |
| active | boolean | Filter by active status. Default true (only active institutions) |
| charter_class | string | Charter type: N=national, SM=state member, NM=state nonmember, SB=savings bank, OI=OCC-supervised |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"city": {
"type": "string",
"description": "City name filter (e.g. \"New York\", \"San Francisco\")"
},
"name": {
"type": "string",
"description": "Partial or full institution name to search (e.g. \"Chase\", \"Wells Fargo\")"
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results to return, max 50 (default 10)"
},
"state": {
"type": "string",
"description": "US state name filter (e.g. \"California\", \"New York\")"
},
"active": {
"type": "boolean",
"description": "Filter by active status. Default true (only active institutions)"
},
"charter_class": {
"enum": [
"N",
"SM",
"NM",
"SB",
"OI"
],
"type": "string",
"description": "Charter type: N=national, SM=state member, NM=state nonmember, SB=savings bank, OI=OCC-supervised"
}
},
"additionalProperties": false
}Search or list US federal government agencies tracked by the Federal Register (name, short name, slug, parent agency). Use the returned slug to filter federalregister.search by agency. Data: federalregister.gov (GPO/NARA), no auth required.
| Argument | Type | Description |
|---|---|---|
| max | integer | Maximum number of agencies to return (1-50, default 20). |
| query | string | Filter agencies by name substring, case-insensitive (e.g. "environmental"). Omit to list top agencies. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"max": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of agencies to return (1-50, default 20)."
},
"query": {
"type": "string",
"description": "Filter agencies by name substring, case-insensitive (e.g. \"environmental\"). Omit to list top agencies."
}
},
"additionalProperties": false
}Get full detail for a single Federal Register document by its document number — abstract, action, agencies, CFR references, docket IDs, effective date, comment deadline, citation, and links to HTML/PDF/XML full text. Data: federalregister.gov (GPO/NARA), no auth required.
| Argument | Type | Description |
|---|---|---|
| document_number* | string | Federal Register document number, e.g. "2026-17477". Obtained from federalregister.search results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"document_number"
],
"properties": {
"document_number": {
"type": "string",
"minLength": 1,
"description": "Federal Register document number, e.g. \"2026-17477\". Obtained from federalregister.search results."
}
},
"additionalProperties": false
}Get documents currently on public inspection at the Federal Register — filed but not yet officially published, available ahead of their scheduled publication date. Optionally filter by agency name. Data: federalregister.gov (GPO/NARA), no auth required.
| Argument | Type | Description |
|---|---|---|
| max | integer | Maximum number of documents to return (1-100, default 20). |
| agency | string | Filter by agency name substring, case-insensitive (e.g. "postal"). Omit to return all currently filed documents. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"max": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of documents to return (1-100, default 20)."
},
"agency": {
"type": "string",
"description": "Filter by agency name substring, case-insensitive (e.g. \"postal\"). Omit to return all currently filed documents."
}
},
"additionalProperties": false
}Search official US Federal Register documents (final rules, proposed rules, notices, presidential documents) by full-text term, agency, document type, and publication date range. Returns document number, title, abstract, type, agencies, and links. Data: federalregister.gov (GPO/NARA), no auth required.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default 1). |
| term | string | Full-text search term (e.g. "climate", "artificial intelligence"). |
| type | string | Document type: RULE (final rule), PRORULE (proposed rule), NOTICE, or PRESDOCU (presidential document). |
| order | string | Result ordering (default "newest"). |
| per_page | integer | Results per page, 1-100 (default 20). |
| agency_slug | string | Restrict results to one agency, by its slug (e.g. "environmental-protection-agency"). Look up slugs with federalregister.agencies. |
| publication_date_gte | string | Only documents published on/after this date, format YYYY-MM-DD. |
| publication_date_lte | string | Only documents published on/before this date, format YYYY-MM-DD. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)."
},
"term": {
"type": "string",
"description": "Full-text search term (e.g. \"climate\", \"artificial intelligence\")."
},
"type": {
"enum": [
"RULE",
"PRORULE",
"NOTICE",
"PRESDOCU"
],
"type": "string",
"description": "Document type: RULE (final rule), PRORULE (proposed rule), NOTICE, or PRESDOCU (presidential document)."
},
"order": {
"enum": [
"relevance",
"newest",
"oldest",
"executive_order_number"
],
"type": "string",
"description": "Result ordering (default \"newest\")."
},
"per_page": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Results per page, 1-100 (default 20)."
},
"agency_slug": {
"type": "string",
"description": "Restrict results to one agency, by its slug (e.g. \"environmental-protection-agency\"). Look up slugs with federalregister.agencies."
},
"publication_date_gte": {
"type": "string",
"description": "Only documents published on/after this date, format YYYY-MM-DD."
},
"publication_date_lte": {
"type": "string",
"description": "Only documents published on/before this date, format YYYY-MM-DD."
}
},
"additionalProperties": false
}Query federal disaster housing assistance data by state and disaster number. Returns registration counts, average damage, total inspected, approved amounts by county. Useful for disaster recovery analysis and aid distribution research. Source: OpenFEMA.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of results (1-50, default 10) |
| state* | string | US state code (e.g. TX, FL, CA) |
| disaster_number | integer | FEMA disaster number to filter (e.g. 4673) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"state"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results (1-50, default 10)"
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "US state code (e.g. TX, FL, CA)"
},
"disaster_number": {
"type": "integer",
"description": "FEMA disaster number to filter (e.g. 4673)"
}
},
"additionalProperties": false
}Search US federal disaster declarations from 1953 to present. Filter by state, incident type (Fire, Flood, Hurricane, Tornado, Earthquake), and year. Returns disaster number, title, dates, designated programs (IA, PA, HM). Source: OpenFEMA (US Gov open data).
| Argument | Type | Description |
|---|---|---|
| year | integer | Filter by declaration year (1953-2026) |
| limit | integer | Number of results (1-50, default 10) |
| state | string | US state code (e.g. CA, TX, FL). Omit for all states. |
| incident_type | string | Disaster type to filter (e.g. Fire, Flood, Hurricane) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"year": {
"type": "integer",
"maximum": 2026,
"minimum": 1953,
"description": "Filter by declaration year (1953-2026)"
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results (1-50, default 10)"
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "US state code (e.g. CA, TX, FL). Omit for all states."
},
"incident_type": {
"enum": [
"Fire",
"Flood",
"Hurricane",
"Tornado",
"Earthquake",
"Severe Storm(s)",
"Snow",
"Drought",
"Typhoon",
"Biological",
"Other"
],
"type": "string",
"description": "Disaster type to filter (e.g. Fire, Flood, Hurricane)"
}
},
"additionalProperties": false
}Retrieve National Flood Insurance Program (NFIP) claims by state and year. Returns flood zone, building/contents payments, insurance coverage amounts, cause of damage. Essential for flood risk assessment and insurance analysis. Source: OpenFEMA.
| Argument | Type | Description |
|---|---|---|
| year | integer | Year of loss to filter (e.g. 2024) |
| limit | integer | Number of results (1-50, default 10) |
| state* | string | US state code (e.g. FL, TX, LA) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"state"
],
"properties": {
"year": {
"type": "integer",
"maximum": 2026,
"minimum": 1970,
"description": "Year of loss to filter (e.g. 2024)"
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results (1-50, default 10)"
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "US state code (e.g. FL, TX, LA)"
}
},
"additionalProperties": false
}Filter financial instruments by exchange code, market sector (Equity/Corp/Govt/Index/Curncy/Comdty), or security type (Common Stock/ETP/REIT/ADR). Browse instrument universe by structured criteria. Bloomberg OpenFIGI.
| Argument | Type | Description |
|---|---|---|
| exchange_code | string | Exchange code (e.g. US, LN, HK, JP) |
| market_sector | string | Market sector (e.g. Equity, Corp, Govt, Index, Curncy, Comdty) |
| security_type | string | Security type (e.g. "Common Stock", "ETP", "REIT", "ADR") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"exchange_code": {
"type": "string",
"description": "Exchange code (e.g. US, LN, HK, JP)"
},
"market_sector": {
"type": "string",
"description": "Market sector (e.g. Equity, Corp, Govt, Index, Curncy, Comdty)"
},
"security_type": {
"type": "string",
"description": "Security type (e.g. \"Common Stock\", \"ETP\", \"REIT\", \"ADR\")"
}
},
"additionalProperties": false
}Resolve financial instrument identifiers — ISIN, CUSIP, SEDOL, or ticker symbol to Bloomberg FIGI (ISO 18774). Returns FIGI, composite FIGI, security name, type, and exchange. 300M+ instruments across 45K+ exchanges. Use ID_ISIN, ID_CUSIP, ID_SEDOL, or TICKER as id_type.
| Argument | Type | Description |
|---|---|---|
| id_type* | string | Identifier type: ID_ISIN, ID_CUSIP, ID_SEDOL, TICKER, ID_BB_GLOBAL |
| id_value* | string | Identifier value (e.g. US0378331005 for ISIN, AAPL for ticker, BBG000B9XRY4 for FIGI) |
| exchange_code | string | Exchange code to narrow results (e.g. US, LN, JP). Optional. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id_type",
"id_value"
],
"properties": {
"id_type": {
"enum": [
"ID_ISIN",
"ID_CUSIP",
"ID_SEDOL",
"ID_BB_GLOBAL",
"TICKER",
"ID_WERTPAPIER",
"ID_COMMON"
],
"type": "string",
"description": "Identifier type: ID_ISIN, ID_CUSIP, ID_SEDOL, TICKER, ID_BB_GLOBAL"
},
"id_value": {
"type": "string",
"minLength": 1,
"description": "Identifier value (e.g. US0378331005 for ISIN, AAPL for ticker, BBG000B9XRY4 for FIGI)"
},
"exchange_code": {
"type": "string",
"description": "Exchange code to narrow results (e.g. US, LN, JP). Optional."
}
},
"additionalProperties": false
}Search 300M+ financial instruments by company name or ticker keyword. Filter by exchange and security type. Returns Bloomberg FIGI, ticker, name, market sector. Covers equities, ETPs, bonds, derivatives globally.
| Argument | Type | Description |
|---|---|---|
| query* | string | Search query — company name or ticker (e.g. "Tesla", "Apple Inc", "MSFT") |
| exchange_code | string | Filter by exchange code (e.g. US, LN, JP) |
| security_type | string | Filter by security type (e.g. "Common Stock", "ETP", "REIT") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"minLength": 1,
"description": "Search query — company name or ticker (e.g. \"Tesla\", \"Apple Inc\", \"MSFT\")"
},
"exchange_code": {
"type": "string",
"description": "Filter by exchange code (e.g. US, LN, JP)"
},
"security_type": {
"type": "string",
"description": "Filter by security type (e.g. \"Common Stock\", \"ETP\", \"REIT\")"
}
},
"additionalProperties": false
}Get full metadata for a Figshare research article by its article_id (from figshare.search): description, citation, authors with ORCID IDs, tags, subject categories, license, version, publish/modified dates, and downloadable files with direct download URLs, sizes, and MIME types. Data: Figshare.com, CC-licensed research outputs, no auth required.
| Argument | Type | Description |
|---|---|---|
| article_id* | integer | Figshare article ID (e.g. 33350571) — obtained from figshare.search results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"article_id"
],
"properties": {
"article_id": {
"type": "integer",
"minimum": 1,
"description": "Figshare article ID (e.g. 33350571) — obtained from figshare.search results."
}
},
"additionalProperties": false
}Search Figshare's open research repository for datasets, figures, papers, preprints, media, and other research outputs, e.g. "soil moisture" or "gene expression". Filter by free-text query, exact DOI, or research output type (dataset, figure, journal_contribution, preprint, thesis, software, etc.), sorted by publication date. Returns each article's id (for use with figshare.article_details), title, DOI, item type, publish date, and URL. Data: Figshare.com, CC-licensed research outputs, no auth required.
| Argument | Type | Description |
|---|---|---|
| doi | string | Filter by exact DOI (e.g. "10.6084/m9.figshare.33350571.v1"). |
| page | integer | Page number for pagination (default 1). |
| query | string | Free-text search across title, description, and author (e.g. "soil moisture", "gene expression"). |
| item_type | string | Filter by research output type: figure, media, dataset, poster, journal_contribution, presentation, thesis, software, online_resource, preprint, book, or conference_contribution. |
| page_size | integer | Results per page (default 10, max 50). |
| order_direction | string | Sort direction by published date (default "desc" — newest first). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"doi": {
"type": "string",
"description": "Filter by exact DOI (e.g. \"10.6084/m9.figshare.33350571.v1\")."
},
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)."
},
"query": {
"type": "string",
"description": "Free-text search across title, description, and author (e.g. \"soil moisture\", \"gene expression\")."
},
"item_type": {
"enum": [
"figure",
"media",
"dataset",
"poster",
"journal_contribution",
"presentation",
"thesis",
"software",
"online_resource",
"preprint",
"book",
"conference_contribution"
],
"type": "string",
"description": "Filter by research output type: figure, media, dataset, poster, journal_contribution, presentation, thesis, software, online_resource, preprint, book, or conference_contribution."
},
"page_size": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Results per page (default 10, max 50)."
},
"order_direction": {
"enum": [
"asc",
"desc"
],
"type": "string",
"description": "Sort direction by published date (default \"desc\" — newest first)."
}
},
"additionalProperties": false
}Browse or search Figshare's subject taxonomy (2000+ categories, e.g. "Ecohydrology", "Agricultural biotechnology") used to classify research articles. Optionally filter by a free-text title query. Returns category id, title, parent_id, and taxonomy path — useful for understanding how Figshare organizes research by subject area. Data: Figshare.com, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max categories to return (default 50, max 200). |
| query | string | Optional free-text filter on category/subject title (e.g. "ecology", "biotechnology"). Omit to browse the full taxonomy. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Max categories to return (default 50, max 200)."
},
"query": {
"type": "string",
"description": "Optional free-text filter on category/subject title (e.g. \"ecology\", \"biotechnology\"). Omit to browse the full taxonomy."
}
},
"additionalProperties": false
}Validate an IBAN number and get associated bank data — BIC/SWIFT code, bank name, city (OpenIBAN)
| Argument | Type | Description |
|---|---|---|
| iban* | string | IBAN to validate (e.g. "DE89370400440532013000"). Spaces are stripped automatically. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"iban"
],
"properties": {
"iban": {
"type": "string",
"maxLength": 34,
"minLength": 15,
"description": "IBAN to validate (e.g. \"DE89370400440532013000\"). Spaces are stripped automatically."
}
},
"additionalProperties": false
}Brazilian CDI daily rate (series 12) — last N observations from BCB SGS. ODbL
| Argument | Type | Description |
|---|---|---|
| last_n | integer | Number of most recent observations to return (default 30, max 500). For daily series this is days; for monthly (IPCA) it is months. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"last_n": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Number of most recent observations to return (default 30, max 500). For daily series this is days; for monthly (IPCA) it is months."
}
},
"additionalProperties": false
}Brazilian Real / Euro daily exchange rate (series 21619) — last N observations from BCB SGS. ODbL
| Argument | Type | Description |
|---|---|---|
| last_n | integer | Number of most recent observations to return (default 30, max 500). For daily series this is days; for monthly (IPCA) it is months. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"last_n": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Number of most recent observations to return (default 30, max 500). For daily series this is days; for monthly (IPCA) it is months."
}
},
"additionalProperties": false
}Brazilian IPCA monthly inflation rate (series 433) — last N observations from BCB SGS. ODbL
| Argument | Type | Description |
|---|---|---|
| last_n | integer | Number of most recent observations to return (default 30, max 500). For daily series this is days; for monthly (IPCA) it is months. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"last_n": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Number of most recent observations to return (default 30, max 500). For daily series this is days; for monthly (IPCA) it is months."
}
},
"additionalProperties": false
}Brazilian SELIC daily interest rate (series 11) — last N observations from BCB SGS. ODbL
| Argument | Type | Description |
|---|---|---|
| last_n | integer | Number of most recent observations to return (default 30, max 500). For daily series this is days; for monthly (IPCA) it is months. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"last_n": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Number of most recent observations to return (default 30, max 500). For daily series this is days; for monthly (IPCA) it is months."
}
},
"additionalProperties": false
}COPOM-set SELIC target rate (series 4389) — Brazilian central bank policy decisions. BCB SGS ODbL
| Argument | Type | Description |
|---|---|---|
| last_n | integer | Number of most recent observations to return (default 30, max 500). For daily series this is days; for monthly (IPCA) it is months. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"last_n": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Number of most recent observations to return (default 30, max 500). For daily series this is days; for monthly (IPCA) it is months."
}
},
"additionalProperties": false
}Brazilian Real / US Dollar daily exchange rate (series 1) — last N observations from BCB SGS. ODbL
| Argument | Type | Description |
|---|---|---|
| last_n | integer | Number of most recent observations to return (default 30, max 500). For daily series this is days; for monthly (IPCA) it is months. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"last_n": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Number of most recent observations to return (default 30, max 500). For daily series this is days; for monthly (IPCA) it is months."
}
},
"additionalProperties": false
}Get official European Central Bank reference exchange rates for ~33 fiat currencies (Frankfurter/ECB)
| Argument | Type | Description |
|---|---|---|
| base* | string | Base currency code, uppercase (e.g. "USD", "EUR"). ~33 ECB currencies. |
| date | string | Historical date in YYYY-MM-DD format. Omit for latest ECB rates. |
| currencies | array | Filter to specific target currencies (e.g. ["EUR","GBP"]). Omit for all ECB currencies. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"base"
],
"properties": {
"base": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "Base currency code, uppercase (e.g. \"USD\", \"EUR\"). ~33 ECB currencies."
},
"date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Historical date in YYYY-MM-DD format. Omit for latest ECB rates."
},
"currencies": {
"type": "array",
"items": {
"type": "string",
"description": "Currency code (e.g. \"EUR\", \"GBP\", \"JPY\")"
},
"maxItems": 33,
"description": "Filter to specific target currencies (e.g. [\"EUR\",\"GBP\"]). Omit for all ECB currencies."
}
},
"additionalProperties": false
}Get currency exchange rates for 200+ fiat and crypto currencies with optional historical dates (fawazahmed0 CDN)
| Argument | Type | Description |
|---|---|---|
| base* | string | Base currency code (e.g. "usd", "eur", "btc"). Lowercase. 200+ currencies supported. |
| date | string | Historical date in YYYY-MM-DD format. Omit for latest rates. |
| currencies | array | Filter to specific target currencies (e.g. ["eur","gbp"]). Omit for all. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"base"
],
"properties": {
"base": {
"type": "string",
"maxLength": 10,
"minLength": 2,
"description": "Base currency code (e.g. \"usd\", \"eur\", \"btc\"). Lowercase. 200+ currencies supported."
},
"date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Historical date in YYYY-MM-DD format. Omit for latest rates."
},
"currencies": {
"type": "array",
"items": {
"type": "string",
"description": "Currency code (e.g. \"eur\", \"gbp\", \"jpy\")"
},
"maxItems": 50,
"description": "Filter to specific target currencies (e.g. [\"eur\",\"gbp\"]). Omit for all."
}
},
"additionalProperties": false
}XBRL financial facts for a US public company — revenue, net income, assets, liabilities, equity, EPS, cash, operating income. Returns last 5 reporting periods per metric with form type and date. Structured data from 10-K/10-Q filings (SEC EDGAR)
| Argument | Type | Description |
|---|---|---|
| cik* | string | SEC CIK number (e.g. "320193" for Apple). Returns XBRL financial facts: revenue, net income, assets, liabilities |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"cik"
],
"properties": {
"cik": {
"type": "string",
"minLength": 1,
"description": "SEC CIK number (e.g. \"320193\" for Apple). Returns XBRL financial facts: revenue, net income, assets, liabilities"
}
},
"additionalProperties": false
}Search US public companies and SEC filings by name, ticker, or keyword. Returns company name, CIK number, form type, filing date. Covers all companies registered with the US Securities and Exchange Commission (SEC EDGAR)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max results to return (default 10, max 50) |
| query* | string | Company name, ticker, or keyword to search (e.g. "Apple Inc", "TSLA", "artificial intelligence") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Max results to return (default 10, max 50)"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Company name, ticker, or keyword to search (e.g. \"Apple Inc\", \"TSLA\", \"artificial intelligence\")"
}
},
"additionalProperties": false
}List recent SEC filings for a company by CIK number — 10-K (annual), 10-Q (quarterly), 8-K (events), proxy statements. Returns form type, filing date, document URL, description. Up to 1000 filings per company (SEC EDGAR)
| Argument | Type | Description |
|---|---|---|
| cik* | string | SEC CIK number (e.g. "320193" for Apple, "789019" for Microsoft). Find via company_search |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"cik"
],
"properties": {
"cik": {
"type": "string",
"minLength": 1,
"description": "SEC CIK number (e.g. \"320193\" for Apple, \"789019\" for Microsoft). Find via company_search"
}
},
"additionalProperties": false
}Complete history of any XBRL financial concept (Revenues, NetIncomeLoss, Assets, EPS) for a company across all SEC filings. Returns up to 20 most recent values with period dates, form type, fiscal year. Free alternative to Bloomberg for historical financials.
| Argument | Type | Description |
|---|---|---|
| cik* | string | SEC CIK number (e.g. "320193" for Apple, "789019" for Microsoft) |
| tag* | string | XBRL concept tag (e.g. Revenues, NetIncomeLoss, Assets, EarningsPerShareBasic) |
| taxonomy | string | XBRL taxonomy (default: us-gaap). Other: ifrs-full, dei, srt |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"cik",
"tag"
],
"properties": {
"cik": {
"type": "string",
"minLength": 1,
"description": "SEC CIK number (e.g. \"320193\" for Apple, \"789019\" for Microsoft)"
},
"tag": {
"type": "string",
"minLength": 1,
"description": "XBRL concept tag (e.g. Revenues, NetIncomeLoss, Assets, EarningsPerShareBasic)"
},
"taxonomy": {
"type": "string",
"description": "XBRL taxonomy (default: us-gaap). Other: ifrs-full, dei, srt"
}
},
"additionalProperties": false
}Compare a financial metric across ALL SEC-reporting companies for a period. Query Revenues for CY2023 → 2,649 companies with values. Top: Walmart $648B, UnitedHealth $371B. Free alternative to Bloomberg/FactSet. Period format: CY2023 (annual), CY2023Q4I (quarterly).
| Argument | Type | Description |
|---|---|---|
| tag* | string | XBRL concept tag (e.g. Revenues, NetIncomeLoss, Assets, TotalDebt) |
| unit | string | Unit of measure (default: USD). Other: USD/shares for EPS, shares for share counts |
| period* | string | Reporting period: CY2023 (annual), CY2023Q4I (quarterly instant), CY2023Q3 (quarterly duration) |
| taxonomy | string | XBRL taxonomy (default: us-gaap) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"tag",
"period"
],
"properties": {
"tag": {
"type": "string",
"minLength": 1,
"description": "XBRL concept tag (e.g. Revenues, NetIncomeLoss, Assets, TotalDebt)"
},
"unit": {
"type": "string",
"description": "Unit of measure (default: USD). Other: USD/shares for EPS, shares for share counts"
},
"period": {
"type": "string",
"minLength": 1,
"description": "Reporting period: CY2023 (annual), CY2023Q4I (quarterly instant), CY2023Q3 (quarterly duration)"
},
"taxonomy": {
"type": "string",
"description": "XBRL taxonomy (default: us-gaap)"
}
},
"additionalProperties": false
}Retail electricity sales/price/revenue by US state and sector (residential, commercial, industrial). Frequency monthly/quarterly/annual. EIA public domain, 5K req/hr
| Argument | Type | Description |
|---|---|---|
| end | string | Latest period in same format as `start`. |
| start | string | Earliest period (e.g. "2020-01" monthly, "2020" annual). |
| state | string | Optional 2-letter US state code (e.g. "CA", "TX", "NY"). If omitted, returns national + all states. |
| length | integer | Number of recent observations to return (default 24, max 500). |
| frequency | string | Time frequency (default "monthly"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"end": {
"type": "string",
"description": "Latest period in same format as `start`."
},
"start": {
"type": "string",
"description": "Earliest period (e.g. \"2020-01\" monthly, \"2020\" annual)."
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Optional 2-letter US state code (e.g. \"CA\", \"TX\", \"NY\"). If omitted, returns national + all states."
},
"length": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Number of recent observations to return (default 24, max 500)."
},
"frequency": {
"enum": [
"monthly",
"quarterly",
"annual"
],
"type": "string",
"description": "Time frequency (default \"monthly\")."
}
},
"additionalProperties": false
}Natural gas residential/commercial/industrial prices by US state. EIA public domain
| Argument | Type | Description |
|---|---|---|
| end | string | Latest period. |
| start | string | Earliest period. |
| state | string | Optional 2-letter US state code. |
| length | integer | Number of recent observations (default 24, max 500). |
| frequency | string | Time frequency (default "monthly"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"end": {
"type": "string",
"description": "Latest period."
},
"start": {
"type": "string",
"description": "Earliest period."
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Optional 2-letter US state code."
},
"length": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Number of recent observations (default 24, max 500)."
},
"frequency": {
"enum": [
"monthly",
"annual"
],
"type": "string",
"description": "Time frequency (default \"monthly\")."
}
},
"additionalProperties": false
}Spot prices for crude oil and petroleum products: WTI (EPCWTI), Brent (EPCBRENT), Diesel (EPD2D), Regular Gas (EPMRR). Daily/weekly/monthly/annual. EIA public domain
| Argument | Type | Description |
|---|---|---|
| end | string | Latest period. |
| start | string | Earliest period (ISO date or YYYY-MM-DD). |
| length | integer | Number of recent observations (default 24, max 500). |
| product | string | Petroleum product code — e.g. "EPCBRENT" (Brent), "EPCWTI" (WTI), "EPD2D" (No. 2 Diesel), "EPMRR" (Regular Gas). |
| frequency | string | Time frequency (default "daily" for spot prices). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"end": {
"type": "string",
"description": "Latest period."
},
"start": {
"type": "string",
"description": "Earliest period (ISO date or YYYY-MM-DD)."
},
"length": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Number of recent observations (default 24, max 500)."
},
"product": {
"type": "string",
"description": "Petroleum product code — e.g. \"EPCBRENT\" (Brent), \"EPCWTI\" (WTI), \"EPD2D\" (No. 2 Diesel), \"EPMRR\" (Regular Gas)."
},
"frequency": {
"enum": [
"daily",
"weekly",
"monthly",
"annual"
],
"type": "string",
"description": "Time frequency (default \"daily\" for spot prices)."
}
},
"additionalProperties": false
}Direct fetch of any EIA total-energy time-series by series ID (e.g. RNGWHHD = Henry Hub spot, ELETPUS = US electricity total). EIA public domain
| Argument | Type | Description |
|---|---|---|
| length | integer | Number of recent observations (default 24, max 500). |
| frequency | string | Time frequency (default "monthly"). |
| series_id* | string | EIA series ID for the total-energy dataset (e.g. "RNGWHHD" Henry Hub spot, "ELETPUS" total US electricity, "TETCBUS" total energy consumption). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"series_id"
],
"properties": {
"length": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Number of recent observations (default 24, max 500)."
},
"frequency": {
"enum": [
"monthly",
"annual"
],
"type": "string",
"description": "Time frequency (default \"monthly\")."
},
"series_id": {
"type": "string",
"minLength": 1,
"description": "EIA series ID for the total-energy dataset (e.g. \"RNGWHHD\" Henry Hub spot, \"ELETPUS\" total US electricity, \"TETCBUS\" total energy consumption)."
}
},
"additionalProperties": false
}Annual real GDP growth rate (chain-linked volumes, % change vs previous year) for one EU country. Eurostat dataset tec00115, CC BY 4.0
| Argument | Type | Description |
|---|---|---|
| since | string | Earliest period to return — format depends on series frequency: "2020" (annual), "2024-01" (monthly), "2024Q1" (quarterly). |
| until | string | Latest period to return — same format as `since`. |
| country | string | Eurostat geo code — 2-letter country (DE, FR, IT, ES, UK, PL, ...) or aggregate ("EU27_2020", "EA20"). One country per call. Default: "EU27_2020". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"since": {
"type": "string",
"description": "Earliest period to return — format depends on series frequency: \"2020\" (annual), \"2024-01\" (monthly), \"2024Q1\" (quarterly)."
},
"until": {
"type": "string",
"description": "Latest period to return — same format as `since`."
},
"country": {
"type": "string",
"description": "Eurostat geo code — 2-letter country (DE, FR, IT, ES, UK, PL, ...) or aggregate (\"EU27_2020\", \"EA20\"). One country per call. Default: \"EU27_2020\"."
}
},
"additionalProperties": false
}Monthly HICP annual rate of change (overall index) for one EU country. Eurostat dataset prc_hicp_manr, CC BY 4.0
| Argument | Type | Description |
|---|---|---|
| since | string | Earliest period to return — format depends on series frequency: "2020" (annual), "2024-01" (monthly), "2024Q1" (quarterly). |
| until | string | Latest period to return — same format as `since`. |
| country | string | Eurostat geo code — 2-letter country (DE, FR, IT, ES, UK, PL, ...) or aggregate ("EU27_2020", "EA20"). One country per call. Default: "EU27_2020". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"since": {
"type": "string",
"description": "Earliest period to return — format depends on series frequency: \"2020\" (annual), \"2024-01\" (monthly), \"2024Q1\" (quarterly)."
},
"until": {
"type": "string",
"description": "Latest period to return — same format as `since`."
},
"country": {
"type": "string",
"description": "Eurostat geo code — 2-letter country (DE, FR, IT, ES, UK, PL, ...) or aggregate (\"EU27_2020\", \"EA20\"). One country per call. Default: \"EU27_2020\"."
}
},
"additionalProperties": false
}Annual population on 1 January for one EU country. Eurostat dataset demo_gind, CC BY 4.0
| Argument | Type | Description |
|---|---|---|
| since | string | Earliest period to return — format depends on series frequency: "2020" (annual), "2024-01" (monthly), "2024Q1" (quarterly). |
| until | string | Latest period to return — same format as `since`. |
| country | string | Eurostat geo code — 2-letter country (DE, FR, IT, ES, UK, PL, ...) or aggregate ("EU27_2020", "EA20"). One country per call. Default: "EU27_2020". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"since": {
"type": "string",
"description": "Earliest period to return — format depends on series frequency: \"2020\" (annual), \"2024-01\" (monthly), \"2024Q1\" (quarterly)."
},
"until": {
"type": "string",
"description": "Latest period to return — same format as `since`."
},
"country": {
"type": "string",
"description": "Eurostat geo code — 2-letter country (DE, FR, IT, ES, UK, PL, ...) or aggregate (\"EU27_2020\", \"EA20\"). One country per call. Default: \"EU27_2020\"."
}
},
"additionalProperties": false
}Monthly unemployment rate (% of active population, seasonally adjusted, total population) for one EU country (geo code) or aggregate (EU27_2020, EA20). Eurostat dataset une_rt_m, CC BY 4.0
| Argument | Type | Description |
|---|---|---|
| since | string | Earliest period to return — format depends on series frequency: "2020" (annual), "2024-01" (monthly), "2024Q1" (quarterly). |
| until | string | Latest period to return — same format as `since`. |
| country | string | Eurostat geo code — 2-letter country (DE, FR, IT, ES, UK, PL, ...) or aggregate ("EU27_2020", "EA20"). One country per call. Default: "EU27_2020". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"since": {
"type": "string",
"description": "Earliest period to return — format depends on series frequency: \"2020\" (annual), \"2024-01\" (monthly), \"2024Q1\" (quarterly)."
},
"until": {
"type": "string",
"description": "Latest period to return — same format as `since`."
},
"country": {
"type": "string",
"description": "Eurostat geo code — 2-letter country (DE, FR, IT, ES, UK, PL, ...) or aggregate (\"EU27_2020\", \"EA20\"). One country per call. Default: \"EU27_2020\"."
}
},
"additionalProperties": false
}Get global development indicators from World Bank — GDP, population, inflation, trade, poverty for 200+ countries
| Argument | Type | Description |
|---|---|---|
| per_page | integer | Results per page (default 50, max 1000). |
| date_range | string | Year or year range (e.g. "2023" or "2010:2023"). Omit for all available years. |
| country_code* | string | ISO 3166 country code (e.g. "US", "DE", "CHN") or "all" for all countries. |
| indicator_id* | string | World Bank indicator ID (e.g. "NY.GDP.MKTP.CD" for GDP, "SP.POP.TOTL" for population, "FP.CPI.TOTL.ZG" for inflation). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country_code",
"indicator_id"
],
"properties": {
"per_page": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Results per page (default 50, max 1000)."
},
"date_range": {
"type": "string",
"description": "Year or year range (e.g. \"2023\" or \"2010:2023\"). Omit for all available years."
},
"country_code": {
"type": "string",
"maxLength": 3,
"minLength": 2,
"description": "ISO 3166 country code (e.g. \"US\", \"DE\", \"CHN\") or \"all\" for all countries."
},
"indicator_id": {
"type": "string",
"maxLength": 100,
"minLength": 1,
"description": "World Bank indicator ID (e.g. \"NY.GDP.MKTP.CD\" for GDP, \"SP.POP.TOTL\" for population, \"FP.CPI.TOTL.ZG\" for inflation)."
}
},
"additionalProperties": false
}Get US economic data from 816K+ FRED series — GDP, CPI, unemployment, interest rates, money supply (Federal Reserve)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of observations to return (default 100000). |
| series_id* | string | FRED series ID (e.g. "GDP", "CPIAUCSL", "UNRATE", "DFF", "T10Y2Y"). Browse at fred.stlouisfed.org. |
| sort_order | string | Sort order by observation date. Default "asc". |
| observation_end | string | End date for observations in YYYY-MM-DD format. |
| observation_start | string | Start date for observations in YYYY-MM-DD format. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"series_id"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100000,
"minimum": 1,
"description": "Maximum number of observations to return (default 100000)."
},
"series_id": {
"type": "string",
"maxLength": 50,
"minLength": 1,
"description": "FRED series ID (e.g. \"GDP\", \"CPIAUCSL\", \"UNRATE\", \"DFF\", \"T10Y2Y\"). Browse at fred.stlouisfed.org."
},
"sort_order": {
"enum": [
"asc",
"desc"
],
"type": "string",
"description": "Sort order by observation date. Default \"asc\"."
},
"observation_end": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "End date for observations in YYYY-MM-DD format."
},
"observation_start": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Start date for observations in YYYY-MM-DD format."
}
},
"additionalProperties": false
}Get US Treasury fiscal data — interest rates on federal debt, national debt, debt outstanding, gold reserves, exchange rates
| Argument | Type | Description |
|---|---|---|
| sort | string | Sort field with direction prefix (e.g. "-record_date" for newest first). Default: "-record_date". |
| filter | string | Filter expression (e.g. "record_date:gte:2024-01-01,security_desc:eq:Treasury Bills"). See Treasury API docs. |
| endpoint* | string | Treasury dataset endpoint: avg_interest_rates (interest rates on federal debt), debt_to_penny (daily national debt), debt_outstanding (debt by security type), top_federal (top federal spending), gold_reserve (US gold reserves), exchange_rates_report (Treasury exchange rates). |
| page_size | integer | Number of records per page (default 100, max 10000). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"endpoint"
],
"properties": {
"sort": {
"type": "string",
"description": "Sort field with direction prefix (e.g. \"-record_date\" for newest first). Default: \"-record_date\"."
},
"filter": {
"type": "string",
"description": "Filter expression (e.g. \"record_date:gte:2024-01-01,security_desc:eq:Treasury Bills\"). See Treasury API docs."
},
"endpoint": {
"enum": [
"avg_interest_rates",
"debt_to_penny",
"debt_outstanding",
"top_federal",
"gold_reserve",
"exchange_rates_report"
],
"type": "string",
"description": "Treasury dataset endpoint: avg_interest_rates (interest rates on federal debt), debt_to_penny (daily national debt), debt_outstanding (debt by security type), top_federal (top federal spending), gold_reserve (US gold reserves), exchange_rates_report (Treasury exchange rates)."
},
"page_size": {
"type": "integer",
"maximum": 10000,
"minimum": 1,
"description": "Number of records per page (default 100, max 10000)."
}
},
"additionalProperties": false
}Lookup food product by barcode (EAN/UPC) — name, brand, nutrition (calories, fat, carbs, protein per 100g), Nutri-Score, NOVA group, ingredients. 3M+ products (Open Food Facts)
| Argument | Type | Description |
|---|---|---|
| barcode* | string | Product barcode (EAN-13, UPC-A, etc.) e.g. "3017620422003" for Nutella |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"barcode"
],
"properties": {
"barcode": {
"type": "string",
"maxLength": 13,
"minLength": 8,
"description": "Product barcode (EAN-13, UPC-A, etc.) e.g. \"3017620422003\" for Nutella"
}
},
"additionalProperties": false
}Search food products by name — returns matching products with brand, barcode, Nutri-Score, image. 3M+ products worldwide (Open Food Facts)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Results count (default 10, max 50) |
| query* | string | Product name to search (e.g. "nutella", "coca cola", "organic milk") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Results count (default 10, max 50)"
},
"query": {
"type": "string",
"minLength": 2,
"description": "Product name to search (e.g. \"nutella\", \"coca cola\", \"organic milk\")"
}
},
"additionalProperties": false
}Retrieve ECB reference exchange rates for a specific historical date from Frankfurter.dev. Coverage starts from 1999-01-04 (Euro launch). If the requested date falls on a weekend or ECB holiday, the preceding business day is returned. Supports optional base currency, target currency filter, and amount scaling. Returns 33 major currencies: AUD, BRL, CAD, CHF, CNY, CZK, DKK, GBP, HKD, HUF, IDR, ILS, INR, ISK, JPY, KRW, MXN, MYR, NOK, NZD, PHP, PLN, RON, SEK, SGD, THB, TRY, USD, ZAR and more. No auth required; public domain ECB data.
| Argument | Type | Description |
|---|---|---|
| base | string | Base currency ISO 4217 code (default: EUR). Supported: AUD,BRL,CAD,CHF,CNY,CZK,DKK,EUR,GBP,HKD,HUF,IDR,ILS,INR,ISK,JPY,KRW,MXN,MYR,NOK,NZD,PHP,PLN,RON,SEK,SGD,THB,TRY,USD,ZAR |
| date* | string | Historical date in YYYY-MM-DD format. ECB data available from 1999-01-04. Weekends/holidays return the preceding business day. |
| amount | number | Amount to convert (default: 1.0). |
| symbols | string | Comma-separated target currency codes (e.g. USD,GBP). Omit for all 33 currencies. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"date"
],
"properties": {
"base": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "Base currency ISO 4217 code (default: EUR). Supported: AUD,BRL,CAD,CHF,CNY,CZK,DKK,EUR,GBP,HKD,HUF,IDR,ILS,INR,ISK,JPY,KRW,MXN,MYR,NOK,NZD,PHP,PLN,RON,SEK,SGD,THB,TRY,USD,ZAR"
},
"date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Historical date in YYYY-MM-DD format. ECB data available from 1999-01-04. Weekends/holidays return the preceding business day."
},
"amount": {
"type": "number",
"description": "Amount to convert (default: 1.0).",
"exclusiveMinimum": 0
},
"symbols": {
"type": "string",
"description": "Comma-separated target currency codes (e.g. USD,GBP). Omit for all 33 currencies."
}
},
"additionalProperties": false
}Get the latest European Central Bank (ECB) reference exchange rates from Frankfurter.dev (api.frankfurter.dev/v1). Returns rates for 33 major currencies relative to a base currency (default EUR). Rates are updated each business day at ~16:00 CET by the ECB. Supports an optional base currency, target currency filter, and amount scaling for instant conversion. No auth required; public domain ECB data. Ideal for FX dashboards, invoicing, and multi-currency apps.
| Argument | Type | Description |
|---|---|---|
| base | string | Base currency ISO 4217 code to convert from (default: EUR). Supported: AUD,BRL,CAD,CHF,CNY,CZK,DKK,EUR,GBP,HKD,HUF,IDR,ILS,INR,ISK,JPY,KRW,MXN,MYR,NOK,NZD,PHP,PLN,RON,SEK,SGD,THB,TRY,USD,ZAR |
| amount | number | Amount to convert (default: 1.0). Returns rates scaled to this amount. |
| symbols | string | Comma-separated target currency codes to return (e.g. USD,GBP,JPY). Omit for all 33 currencies. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"base": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "Base currency ISO 4217 code to convert from (default: EUR). Supported: AUD,BRL,CAD,CHF,CNY,CZK,DKK,EUR,GBP,HKD,HUF,IDR,ILS,INR,ISK,JPY,KRW,MXN,MYR,NOK,NZD,PHP,PLN,RON,SEK,SGD,THB,TRY,USD,ZAR"
},
"amount": {
"type": "number",
"description": "Amount to convert (default: 1.0). Returns rates scaled to this amount.",
"exclusiveMinimum": 0
},
"symbols": {
"type": "string",
"description": "Comma-separated target currency codes to return (e.g. USD,GBP,JPY). Omit for all 33 currencies."
}
},
"additionalProperties": false
}Returns all 33 currencies supported by the Frankfurter.dev ECB exchange rate API with their full English names. Use this to discover valid currency codes before calling frankfurter.currency.latest, frankfurter.currency.historical, or frankfurter.currency.series. No parameters required. No auth; public domain ECB data.
| Argument | Type | Description |
|---|---|---|
| locale | string | Reserved for future use. The API returns currency names in English regardless. Pass any value. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"locale": {
"type": "string",
"description": "Reserved for future use. The API returns currency names in English regardless. Pass any value."
}
},
"additionalProperties": false
}Fetch a time series of ECB exchange rates between two dates from Frankfurter.dev. Returns a date-keyed map of rates covering every business day in the range. Coverage starts from 1999-01-04. Omit end_date to get rates through the latest available date. Narrow results to specific currencies with the symbols parameter to reduce response size. Use for trend analysis, backtesting, historical P&L calculations, and charting FX movements. No auth required; public domain ECB data.
| Argument | Type | Description |
|---|---|---|
| base | string | Base currency ISO 4217 code (default: EUR). Supported: AUD,BRL,CAD,CHF,CNY,CZK,DKK,EUR,GBP,HKD,HUF,IDR,ILS,INR,ISK,JPY,KRW,MXN,MYR,NOK,NZD,PHP,PLN,RON,SEK,SGD,THB,TRY,USD,ZAR |
| amount | number | Amount to convert (default: 1.0). |
| symbols | string | Comma-separated target currency codes (e.g. USD,GBP,JPY). Omit for all 33 currencies. Use specific symbols to reduce response size. |
| end_date | string | End date of the time series in YYYY-MM-DD format. Defaults to the latest available date. |
| start_date* | string | Start date of the time series in YYYY-MM-DD format. ECB data available from 1999-01-04. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"start_date"
],
"properties": {
"base": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "Base currency ISO 4217 code (default: EUR). Supported: AUD,BRL,CAD,CHF,CNY,CZK,DKK,EUR,GBP,HKD,HUF,IDR,ILS,INR,ISK,JPY,KRW,MXN,MYR,NOK,NZD,PHP,PLN,RON,SEK,SGD,THB,TRY,USD,ZAR"
},
"amount": {
"type": "number",
"description": "Amount to convert (default: 1.0).",
"exclusiveMinimum": 0
},
"symbols": {
"type": "string",
"description": "Comma-separated target currency codes (e.g. USD,GBP,JPY). Omit for all 33 currencies. Use specific symbols to reduce response size."
},
"end_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "End date of the time series in YYYY-MM-DD format. Defaults to the latest available date."
},
"start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Start date of the time series in YYYY-MM-DD format. ECB data available from 1999-01-04."
}
},
"additionalProperties": false
}Get full details for a single free-to-play game by ID: status, full description, minimum system requirements, and screenshots. Data: FreeToGame API (freetogame.com/api), no auth required.
| Argument | Type | Description |
|---|---|---|
| id* | integer | FreeToGame game ID (e.g. 540 for Overwatch) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"description": "FreeToGame game ID (e.g. 540 for Overwatch)",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Filter free-to-play games by a single gameplay/genre tag (e.g. mmorpg, pvp, anime, battle-royale), combined with optional platform and sort order filters. Distinct from game_list category filtering — same tag vocabulary but a dedicated advanced-filter endpoint. Data: FreeToGame API (freetogame.com/api), no auth required.
| Argument | Type | Description |
|---|---|---|
| tag* | string | Genre/gameplay tag to filter by (e.g. mmorpg, pvp, anime, battle-royale) |
| sort_by | string | Sort order for results (default relevance) |
| platform | string | Platform filter: pc (Windows client), browser (web games), or all (default all) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"tag"
],
"properties": {
"tag": {
"enum": [
"mmorpg",
"shooter",
"strategy",
"moba",
"racing",
"sports",
"social",
"sandbox",
"open-world",
"survival",
"pvp",
"pve",
"pixel",
"voxel",
"zombie",
"turn-based",
"first-person",
"third-person",
"top-down",
"tank",
"space",
"sailing",
"side-scroller",
"superhero",
"permadeath",
"card",
"battle-royale",
"mmo",
"mmofps",
"mmotps",
"3d",
"2d",
"anime",
"fantasy",
"sci-fi",
"fighting",
"action-rpg",
"action",
"military",
"martial-arts",
"flight",
"low-spec",
"tower-defense",
"horror",
"mmorts"
],
"type": "string",
"description": "Genre/gameplay tag to filter by (e.g. mmorpg, pvp, anime, battle-royale)"
},
"sort_by": {
"enum": [
"release-date",
"popularity",
"alphabetical",
"relevance"
],
"type": "string",
"description": "Sort order for results (default relevance)"
},
"platform": {
"enum": [
"pc",
"browser",
"all"
],
"type": "string",
"description": "Platform filter: pc (Windows client), browser (web games), or all (default all)"
}
},
"additionalProperties": false
}Browse the free-to-play PC and browser game catalog. Filter by platform (pc, browser, all), category/genre (mmorpg, shooter, battle-royale, etc.), and sort order (release-date, popularity, alphabetical, relevance). Returns title, genre, platform, publisher, developer, release date, and profile URL for each game. Data: FreeToGame API (freetogame.com/api), no auth required.
| Argument | Type | Description |
|---|---|---|
| sort_by | string | Sort order for results (default relevance) |
| category | string | Genre/category filter (e.g. mmorpg, shooter, battle-royale) |
| platform | string | Platform filter: pc (Windows client), browser (web games), or all (default all) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"sort_by": {
"enum": [
"release-date",
"popularity",
"alphabetical",
"relevance"
],
"type": "string",
"description": "Sort order for results (default relevance)"
},
"category": {
"enum": [
"mmorpg",
"shooter",
"strategy",
"moba",
"racing",
"sports",
"social",
"sandbox",
"open-world",
"survival",
"pvp",
"pve",
"pixel",
"voxel",
"zombie",
"turn-based",
"first-person",
"third-person",
"top-down",
"tank",
"space",
"sailing",
"side-scroller",
"superhero",
"permadeath",
"card",
"battle-royale",
"mmo",
"mmofps",
"mmotps",
"3d",
"2d",
"anime",
"fantasy",
"sci-fi",
"fighting",
"action-rpg",
"action",
"military",
"martial-arts",
"flight",
"low-spec",
"tower-defense",
"horror",
"mmorts"
],
"type": "string",
"description": "Genre/category filter (e.g. mmorpg, shooter, battle-royale)"
},
"platform": {
"enum": [
"pc",
"browser",
"all"
],
"type": "string",
"description": "Platform filter: pc (Windows client), browser (web games), or all (default all)"
}
},
"additionalProperties": false
}Get total occurrence count for a species, optionally filtered by country. Useful for range size estimation, data density assessment, and conservation status analysis. Source: GBIF.
| Argument | Type | Description |
|---|---|---|
| country | string | ISO country code to filter count (e.g. US, BR) |
| taxon_key* | integer | GBIF taxon key to count occurrences for |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"taxon_key"
],
"properties": {
"country": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO country code to filter count (e.g. US, BR)"
},
"taxon_key": {
"type": "integer",
"description": "GBIF taxon key to count occurrences for"
}
},
"additionalProperties": false
}Search 2.5B+ species occurrence records by taxon, country, and year. Returns observation coordinates, date, collector institution, basis of record (specimen/observation). Filter by ISO country code. Source: GBIF (2000+ institutions, 100+ countries).
| Argument | Type | Description |
|---|---|---|
| year | integer | Filter by observation year (e.g. 2024) |
| limit | integer | Number of results (1-50, default 10) |
| country | string | ISO 3166-1 alpha-2 country code (e.g. US, GB, BR, AU) |
| taxon_key* | integer | GBIF taxon key for the species to search occurrences |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"taxon_key"
],
"properties": {
"year": {
"type": "integer",
"maximum": 2026,
"minimum": 1700,
"description": "Filter by observation year (e.g. 2024)"
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results (1-50, default 10)"
},
"country": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO 3166-1 alpha-2 country code (e.g. US, GB, BR, AU)"
},
"taxon_key": {
"type": "integer",
"description": "GBIF taxon key for the species to search occurrences"
}
},
"additionalProperties": false
}Get full taxonomic profile for a species by GBIF taxon key. Returns classification hierarchy, vernacular (common) names, synonyms, number of descendants, and accepted name. Source: GBIF backbone taxonomy.
| Argument | Type | Description |
|---|---|---|
| taxon_key* | integer | GBIF taxon key (numeric ID from species search results) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"taxon_key"
],
"properties": {
"taxon_key": {
"type": "integer",
"description": "GBIF taxon key (numeric ID from species search results)"
}
},
"additionalProperties": false
}Search 9M+ species in the GBIF backbone taxonomy by common or scientific name. Returns taxon key, scientific name, kingdom/phylum/class/order/family/genus, and taxonomic status. Filter by rank (SPECIES, GENUS, FAMILY). Source: Global Biodiversity Information Facility (CC0).
| Argument | Type | Description |
|---|---|---|
| rank | string | Taxonomic rank filter (default: SPECIES). Use SPECIES to avoid virus/subspecies matches. |
| limit | integer | Number of results (1-20, default 5) |
| query* | string | Species name to search — common name (e.g. "polar bear") or scientific name (e.g. "Ursus maritimus") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"rank": {
"enum": [
"KINGDOM",
"PHYLUM",
"CLASS",
"ORDER",
"FAMILY",
"GENUS",
"SPECIES"
],
"type": "string",
"description": "Taxonomic rank filter (default: SPECIES). Use SPECIES to avoid virus/subspecies matches."
},
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of results (1-20, default 5)"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Species name to search — common name (e.g. \"polar bear\") or scientific name (e.g. \"Ursus maritimus\")"
}
},
"additionalProperties": false
}Get current and recent global disaster alerts from the UN GDACS system. Returns earthquakes, tropical cyclones, floods, volcanoes, droughts, and tsunamis with color-coded severity (Green/Orange/Red), affected country, coordinates, and population impact estimates.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of events to return, max 50 (default 10) |
| event_type | string | Filter by disaster type: EQ=earthquake, TC=tropical cyclone, FL=flood, VO=volcano, DR=drought, TS=tsunami |
| alert_level | string | Minimum alert level filter: Green (low), Orange (medium), Red (high impact) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of events to return, max 50 (default 10)"
},
"event_type": {
"enum": [
"EQ",
"TC",
"FL",
"VO",
"DR",
"TS"
],
"type": "string",
"description": "Filter by disaster type: EQ=earthquake, TC=tropical cyclone, FL=flood, VO=volcano, DR=drought, TS=tsunami"
},
"alert_level": {
"enum": [
"Green",
"Orange",
"Red"
],
"type": "string",
"description": "Minimum alert level filter: Green (low), Orange (medium), Red (high impact)"
}
},
"additionalProperties": false
}Get detailed information for a specific GDACS disaster event by ID. Returns event name, alert level with justification, affected population at each severity level, coordinates, geometry for mapping, source agency, and situation report links.
| Argument | Type | Description |
|---|---|---|
| event_id* | integer | GDACS event ID (obtain via gdacs.alerts) |
| event_type* | string | Event type code: EQ=earthquake, TC=tropical cyclone, FL=flood, VO=volcano, DR=drought, TS=tsunami |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"event_id",
"event_type"
],
"properties": {
"event_id": {
"type": "integer",
"description": "GDACS event ID (obtain via gdacs.alerts)"
},
"event_type": {
"enum": [
"EQ",
"TC",
"FL",
"VO",
"DR",
"TS"
],
"type": "string",
"description": "Event type code: EQ=earthquake, TC=tropical cyclone, FL=flood, VO=volcano, DR=drought, TS=tsunami"
}
},
"additionalProperties": false
}Query the GDACS historical disaster archive from 2000 onwards. Filter by date range, event type, country, and alert level. Returns past earthquakes, cyclones, floods, and volcanoes for disaster frequency analysis and regional risk assessment.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of events to return, max 50 (default 10) |
| country | string | ISO 3166-1 alpha-3 country code (e.g. "JPN", "PHL", "USA", "IDN") |
| date_to* | string | End date in YYYY-MM-DD format (e.g. "2024-12-31") |
| date_from* | string | Start date in YYYY-MM-DD format (e.g. "2024-01-01") |
| event_type | string | Filter by disaster type |
| alert_level | string | Minimum alert level filter |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"date_from",
"date_to"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of events to return, max 50 (default 10)"
},
"country": {
"type": "string",
"description": "ISO 3166-1 alpha-3 country code (e.g. \"JPN\", \"PHL\", \"USA\", \"IDN\")"
},
"date_to": {
"type": "string",
"description": "End date in YYYY-MM-DD format (e.g. \"2024-12-31\")"
},
"date_from": {
"type": "string",
"description": "Start date in YYYY-MM-DD format (e.g. \"2024-01-01\")"
},
"event_type": {
"enum": [
"EQ",
"TC",
"FL",
"VO",
"DR",
"TS"
],
"type": "string",
"description": "Filter by disaster type"
},
"alert_level": {
"enum": [
"Green",
"Orange",
"Red"
],
"type": "string",
"description": "Minimum alert level filter"
}
},
"additionalProperties": false
}Get the seafloor depth or land elevation at a single latitude/longitude point from the GEBCO global bathymetric grid (General Bathymetric Chart of the Oceans, IHO/IOC Seabed 2030 project). Returns elevation in meters relative to sea level — negative for ocean depth, positive for land height, e.g. -5943 near the Mariana Trench or 2947 in the Himalayan foothills. Optionally query "sub_ice_topo" to get bedrock topography beneath Antarctic/Greenland ice sheets instead of the ice surface. Data: GEBCO WMS, public domain, no auth required.
| Argument | Type | Description |
|---|---|---|
| lat* | number | Latitude in decimal degrees (e.g. 51.4769 for Greenwich). |
| lon* | number | Longitude in decimal degrees (e.g. -0.0005 for Greenwich). |
| surface | string | Which GEBCO grid to query: "standard" (default) returns surface elevation, including the top of ice sheets where present; "sub_ice_topo" returns bedrock topography beneath Antarctic/Greenland ice sheets instead. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude in decimal degrees (e.g. 51.4769 for Greenwich)."
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude in decimal degrees (e.g. -0.0005 for Greenwich)."
},
"surface": {
"enum": [
"standard",
"sub_ice_topo"
],
"type": "string",
"description": "Which GEBCO grid to query: \"standard\" (default) returns surface elevation, including the top of ice sheets where present; \"sub_ice_topo\" returns bedrock topography beneath Antarctic/Greenland ice sheets instead."
}
},
"additionalProperties": false
}Get seafloor depth or land elevation for up to 15 latitude/longitude points in one call from the GEBCO global bathymetric grid — useful for building a depth/elevation profile along a route or transect (e.g. a shipping lane or hiking trail). Returns elevation in meters relative to sea level for each point, in the same order as the input. Optionally query "sub_ice_topo" to get bedrock topography beneath ice sheets instead of the ice surface. Data: GEBCO WMS, public domain, no auth required.
| Argument | Type | Description |
|---|---|---|
| points* | array | Between 2 and 15 {lat, lon} points to query, e.g. a route or transect across the seafloor. |
| surface | string | Which GEBCO grid to query: "standard" (default) returns surface elevation, including the top of ice sheets where present; "sub_ice_topo" returns bedrock topography beneath Antarctic/Greenland ice sheets instead. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"points"
],
"properties": {
"points": {
"type": "array",
"items": {
"type": "object",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude in decimal degrees."
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude in decimal degrees."
}
},
"additionalProperties": false
},
"maxItems": 15,
"minItems": 2,
"description": "Between 2 and 15 {lat, lon} points to query, e.g. a route or transect across the seafloor."
},
"surface": {
"enum": [
"standard",
"sub_ice_topo"
],
"type": "string",
"description": "Which GEBCO grid to query: \"standard\" (default) returns surface elevation, including the top of ice sheets where present; \"sub_ice_topo\" returns bedrock topography beneath Antarctic/Greenland ice sheets instead."
}
},
"additionalProperties": false
}Get autocomplete suggestions as you type an address or place name — for real-time search UX (Geoapify/OSM)
| Argument | Type | Description |
|---|---|---|
| lang | string | Result language code (e.g. "en", "de", "ru"). Default: English. |
| text* | string | Partial address or place name to autocomplete (e.g. "1600 Penn", "Berlin Bran"). |
| type | string | Filter by result type: city, street, amenity, or country. |
| limit | integer | Maximum number of suggestions (default 5, max 5). |
| country_code | string | ISO 3166-1 alpha-2 country code to filter results (e.g. "US", "DE"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"text"
],
"properties": {
"lang": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Result language code (e.g. \"en\", \"de\", \"ru\"). Default: English."
},
"text": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Partial address or place name to autocomplete (e.g. \"1600 Penn\", \"Berlin Bran\")."
},
"type": {
"enum": [
"city",
"street",
"amenity",
"country"
],
"type": "string",
"description": "Filter by result type: city, street, amenity, or country."
},
"limit": {
"type": "integer",
"maximum": 5,
"minimum": 1,
"description": "Maximum number of suggestions (default 5, max 5)."
},
"country_code": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO 3166-1 alpha-2 country code to filter results (e.g. \"US\", \"DE\")."
}
},
"additionalProperties": false
}Convert an address, place name, or landmark to geographic coordinates (lat/lon) with structured address data (Geoapify/OSM)
| Argument | Type | Description |
|---|---|---|
| lang | string | Result language code (e.g. "en", "de", "ru"). Default: English. |
| text* | string | Address, place name, or landmark to geocode (e.g. "1600 Pennsylvania Ave, Washington DC", "Eiffel Tower"). |
| type | string | Filter by result type: city, street, amenity, or country. |
| limit | integer | Maximum number of results to return (default 1, max 5). |
| country_code | string | ISO 3166-1 alpha-2 country code to filter results (e.g. "US", "DE", "FR"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"text"
],
"properties": {
"lang": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Result language code (e.g. \"en\", \"de\", \"ru\"). Default: English."
},
"text": {
"type": "string",
"maxLength": 500,
"minLength": 1,
"description": "Address, place name, or landmark to geocode (e.g. \"1600 Pennsylvania Ave, Washington DC\", \"Eiffel Tower\")."
},
"type": {
"enum": [
"city",
"street",
"amenity",
"country"
],
"type": "string",
"description": "Filter by result type: city, street, amenity, or country."
},
"limit": {
"type": "integer",
"maximum": 5,
"minimum": 1,
"description": "Maximum number of results to return (default 1, max 5)."
},
"country_code": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO 3166-1 alpha-2 country code to filter results (e.g. \"US\", \"DE\", \"FR\")."
}
},
"additionalProperties": false
}Convert geographic coordinates (lat/lon) to a structured address — street, city, country, postal code (Geoapify/OSM)
| Argument | Type | Description |
|---|---|---|
| lat* | number | Latitude of the point to reverse geocode. |
| lon* | number | Longitude of the point to reverse geocode. |
| lang | string | Result language code (e.g. "en", "de", "ru"). Default: English. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude of the point to reverse geocode."
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude of the point to reverse geocode."
},
"lang": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Result language code (e.g. \"en\", \"de\", \"ru\"). Default: English."
}
},
"additionalProperties": false
}Geolocate an IP address (IPv4/IPv6) to country, city, coordinates, and network info (Geoapify)
| Argument | Type | Description |
|---|---|---|
| ip* | string | IPv4 or IPv6 address to geolocate (e.g. "8.8.8.8", "2001:4860:4860::8888"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"ip"
],
"properties": {
"ip": {
"type": "string",
"maxLength": 45,
"minLength": 7,
"description": "IPv4 or IPv6 address to geolocate (e.g. \"8.8.8.8\", \"2001:4860:4860::8888\")."
}
},
"additionalProperties": false
}Get reachability area (isochrone) — polygon showing how far you can travel from a point in a given time or distance (Geoapify/OSM)
| Argument | Type | Description |
|---|---|---|
| lat* | number | Center point latitude (e.g. 52.5200) |
| lon* | number | Center point longitude (e.g. 13.4050) |
| mode | string | Travel mode: drive, walk, or bicycle. Default: drive. |
| time | integer | Reachability time in seconds (default 900 = 15 min, max 7200 = 2h). Mutually exclusive with distance. |
| distance | integer | Reachability distance in meters (max 100km). Mutually exclusive with time. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Center point latitude (e.g. 52.5200)"
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Center point longitude (e.g. 13.4050)"
},
"mode": {
"enum": [
"drive",
"walk",
"bicycle"
],
"type": "string",
"description": "Travel mode: drive, walk, or bicycle. Default: drive."
},
"time": {
"type": "integer",
"maximum": 7200,
"minimum": 60,
"description": "Reachability time in seconds (default 900 = 15 min, max 7200 = 2h). Mutually exclusive with distance."
},
"distance": {
"type": "integer",
"maximum": 100000,
"minimum": 100,
"description": "Reachability distance in meters (max 100km). Mutually exclusive with time."
}
},
"additionalProperties": false
}Get turn-by-turn driving, walking, cycling, or transit directions between two points with distance and time (Geoapify/OSM)
| Argument | Type | Description |
|---|---|---|
| lang | string | Turn-by-turn instruction language (e.g. "en", "de"). Default: English. |
| mode | string | Travel mode: drive, walk, bicycle, or transit. Default: drive. |
| units | string | Distance units: metric (km) or imperial (miles). Default: metric. |
| dest_lat* | number | Destination latitude (e.g. 48.8566) |
| dest_lon* | number | Destination longitude (e.g. 2.3522) |
| origin_lat* | number | Start point latitude (e.g. 40.7128) |
| origin_lon* | number | Start point longitude (e.g. -74.0060) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"origin_lat",
"origin_lon",
"dest_lat",
"dest_lon"
],
"properties": {
"lang": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Turn-by-turn instruction language (e.g. \"en\", \"de\"). Default: English."
},
"mode": {
"enum": [
"drive",
"walk",
"bicycle",
"transit"
],
"type": "string",
"description": "Travel mode: drive, walk, bicycle, or transit. Default: drive."
},
"units": {
"enum": [
"metric",
"imperial"
],
"type": "string",
"description": "Distance units: metric (km) or imperial (miles). Default: metric."
},
"dest_lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Destination latitude (e.g. 48.8566)"
},
"dest_lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Destination longitude (e.g. 2.3522)"
},
"origin_lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Start point latitude (e.g. 40.7128)"
},
"origin_lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Start point longitude (e.g. -74.0060)"
}
},
"additionalProperties": false
}Search points of interest (restaurants, pharmacies, hotels, attractions) near a location by category and radius (Geoapify/OSM)
| Argument | Type | Description |
|---|---|---|
| lat* | number | Center latitude for the search area. |
| lon* | number | Center longitude for the search area. |
| lang | string | Result language code (e.g. "en", "de", "ru"). Default: English. |
| limit | integer | Maximum number of results (default 20, max 50). |
| radius | integer | Search radius in meters (default 1000, max 50000). |
| categories* | string | POI category filter (e.g. "catering.restaurant", "healthcare.pharmacy", "tourism.attraction", "accommodation.hotel"). Multiple categories separated by comma. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"categories",
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Center latitude for the search area."
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Center longitude for the search area."
},
"lang": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Result language code (e.g. \"en\", \"de\", \"ru\"). Default: English."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of results (default 20, max 50)."
},
"radius": {
"type": "integer",
"maximum": 50000,
"minimum": 100,
"description": "Search radius in meters (default 1000, max 50000)."
},
"categories": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "POI category filter (e.g. \"catering.restaurant\", \"healthcare.pharmacy\", \"tourism.attraction\", \"accommodation.hotel\"). Multiple categories separated by comma."
}
},
"additionalProperties": false
}Check which administrative levels (ADM0 through ADM5) exist for a given country, with the local admin name and unit count at each available level (e.g. Kenya has ADM0-ADM2 only; France has ADM0-ADM4). Call this before geoboundaries.boundary.detail to avoid requesting a level that does not exist for that country. Data: geoBoundaries (William & Mary geoLab), no auth required.
| Argument | Type | Description |
|---|---|---|
| country* | string | ISO 3166-1 alpha-3 country code, uppercase (e.g. "USA", "KEN", "FRA"). ISO2 codes and country names are not accepted by the upstream API. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country"
],
"properties": {
"country": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO 3166-1 alpha-3 country code, uppercase (e.g. \"USA\", \"KEN\", \"FRA\"). ISO2 codes and country names are not accepted by the upstream API."
}
},
"additionalProperties": false
}Get metadata for one country's administrative boundary at a given level: official name, admin unit count, area/perimeter stats, source, license, and download URLs for the full GeoJSON, simplified GeoJSON, TopoJSON, and a preview PNG. Levels: ADM0 (country outline), ADM1 (state/province), ADM2 (county/district), ADM3-ADM5 (finer, country-dependent). Geometry is NOT embedded in the response (files can exceed 10MB) — fetch the returned URL directly for the shapes. Data: geoBoundaries (William & Mary geoLab), no auth required.
| Argument | Type | Description |
|---|---|---|
| country* | string | ISO 3166-1 alpha-3 country code, uppercase (e.g. "USA", "KEN", "FRA"). ISO2 codes and country names are not accepted by the upstream API. |
| adm_level | string | Administrative boundary level: "ADM0" (country outline), "ADM1" (state/province/region), "ADM2" (county/district), "ADM3"-"ADM5" (finer subdivisions, only available for some countries). Defaults to "ADM0". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country"
],
"properties": {
"country": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO 3166-1 alpha-3 country code, uppercase (e.g. \"USA\", \"KEN\", \"FRA\"). ISO2 codes and country names are not accepted by the upstream API."
},
"adm_level": {
"enum": [
"ADM0",
"ADM1",
"ADM2",
"ADM3",
"ADM4",
"ADM5"
],
"type": "string",
"description": "Administrative boundary level: \"ADM0\" (country outline), \"ADM1\" (state/province/region), \"ADM2\" (county/district), \"ADM3\"-\"ADM5\" (finer subdivisions, only available for some countries). Defaults to \"ADM0\"."
}
},
"additionalProperties": false
}List every country's administrative boundary metadata at one level (ADM0 country outline by default, or ADM1-ADM5 for finer subdivisions where available): ISO3 code, name, admin unit count, continent/region, and geometry download URLs. Useful for discovering coverage before requesting a single country with geoboundaries.boundary.detail. Data: geoBoundaries (William & Mary geoLab), no auth required.
| Argument | Type | Description |
|---|---|---|
| adm_level | string | Administrative boundary level: "ADM0" (country outline), "ADM1" (state/province/region), "ADM2" (county/district), "ADM3"-"ADM5" (finer subdivisions, only available for some countries). Defaults to "ADM0". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"adm_level": {
"enum": [
"ADM0",
"ADM1",
"ADM2",
"ADM3",
"ADM4",
"ADM5"
],
"type": "string",
"description": "Administrative boundary level: \"ADM0\" (country outline), \"ADM1\" (state/province/region), \"ADM2\" (county/district), \"ADM3\"-\"ADM5\" (finer subdivisions, only available for some countries). Defaults to \"ADM0\"."
}
},
"additionalProperties": false
}Search documented eruptions for an Alaska volcano by volcano_id (from geodiva.volcano_list), a specific eruption_id, or a start/end date range (years or ISO dates, including negative/BCE years for prehistoric eruptions). Returns eruption name, narrative description, and start/end date fields. Data: geodiva.avo.alaska.edu, no auth required, US Government public domain.
| Argument | Type | Description |
|---|---|---|
| edate_end | string | Eruption end-date range upper bound — must be paired with edate_start |
| sdate_end | string | Eruption start-date range upper bound — must be paired with sdate_start, e.g. "2020-12-31" |
| volcano_id | string | GeoDIVA volcano ID to list eruptions for, e.g. "ak52" (from geodiva.volcano_list) |
| edate_start | string | Eruption end-date range lower bound — must be paired with edate_end |
| eruption_id | integer | Specific eruption record ID to retrieve, e.g. 4111 |
| sdate_start | string | Eruption start-date range lower bound — must be paired with sdate_end, e.g. "2000-01-01" |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"edate_end": {
"type": "string",
"pattern": "^-?\\d{1,4}(-\\d{2}(-\\d{2}(T\\d{2}:\\d{2}:\\d{2})?)?)?$",
"description": "Eruption end-date range upper bound — must be paired with edate_start"
},
"sdate_end": {
"type": "string",
"pattern": "^-?\\d{1,4}(-\\d{2}(-\\d{2}(T\\d{2}:\\d{2}:\\d{2})?)?)?$",
"description": "Eruption start-date range upper bound — must be paired with sdate_start, e.g. \"2020-12-31\""
},
"volcano_id": {
"type": "string",
"description": "GeoDIVA volcano ID to list eruptions for, e.g. \"ak52\" (from geodiva.volcano_list)"
},
"edate_start": {
"type": "string",
"pattern": "^-?\\d{1,4}(-\\d{2}(-\\d{2}(T\\d{2}:\\d{2}:\\d{2})?)?)?$",
"description": "Eruption end-date range lower bound — must be paired with edate_end"
},
"eruption_id": {
"type": "integer",
"description": "Specific eruption record ID to retrieve, e.g. 4111",
"exclusiveMinimum": 0
},
"sdate_start": {
"type": "string",
"pattern": "^-?\\d{1,4}(-\\d{2}(-\\d{2}(T\\d{2}:\\d{2}:\\d{2})?)?)?$",
"description": "Eruption start-date range lower bound — must be paired with sdate_end, e.g. \"2000-01-01\""
}
},
"additionalProperties": false
}Get full detail for a single Alaska volcano — geology, composition, age, threat rating, and a narrative description — looked up by volcano ID (e.g. "ak52"), VNUM, or name. Data: geodiva.avo.alaska.edu, no auth required, US Government public domain.
| Argument | Type | Description |
|---|---|---|
| id* | string | Volcano ID (e.g. "ak52"), VNUM (e.g. "311240"), or volcano name (e.g. "Cleveland") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "Volcano ID (e.g. \"ak52\"), VNUM (e.g. \"311240\"), or volcano name (e.g. \"Cleveland\")"
}
},
"additionalProperties": false
}Browse Alaska's 356 volcanoes from the AVO GeoDIVA database, optionally filtered by NVEWS threat level, geologic age class, monitored-network status, or a name substring. Returns volcano ID, VNUM, name, type, composition, and threat rating for each match. Data: geodiva.avo.alaska.edu, no auth required, US Government public domain.
| Argument | Type | Description |
|---|---|---|
| age_class | string | Filter by geologic age class — Historical/Holocene/Pleistocene, or Susp* (suspected) variants (client-side filter) |
| threat_level | string | Filter by NVEWS eruption-hazard threat rating (client-side filter) |
| name_contains | string | Case-insensitive substring match against volcano name or official name, e.g. "cleveland" |
| monitored_only | boolean | If true, only return volcanoes actively monitored by AVO seismic/infrasound networks |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"age_class": {
"enum": [
"Historical",
"Holocene",
"Pleistocene",
"SuspHist",
"SuspHolo",
"SuspPleist"
],
"type": "string",
"description": "Filter by geologic age class — Historical/Holocene/Pleistocene, or Susp* (suspected) variants (client-side filter)"
},
"threat_level": {
"enum": [
"Very Low Threat",
"Low Threat",
"Moderate Threat",
"High Threat",
"Very High Threat"
],
"type": "string",
"description": "Filter by NVEWS eruption-hazard threat rating (client-side filter)"
},
"name_contains": {
"type": "string",
"description": "Case-insensitive substring match against volcano name or official name, e.g. \"cleveland\""
},
"monitored_only": {
"type": "boolean",
"description": "If true, only return volcanoes actively monitored by AVO seismic/infrasound networks"
}
},
"additionalProperties": false
}Get structured metadata for any country or all countries from the GeoNames database. Returns country code (ISO-3166 alpha-2/alpha-3/numeric), capital, continent, official languages, population, area in km², currency code, postal code format/regex, geoname_id, and a bounding box (north/south/east/west lat-lng). Omit country to retrieve all 250 countries in a single response. Supports localized country names via lang parameter. CC BY 4.0 open data, no upstream cost.
| Argument | Type | Description |
|---|---|---|
| country | string | ISO-3166 2-letter country code (e.g. "US", "DE", "JP"). Omit to retrieve all countries. |
| language | string | ISO 639-1 language code for localized country names (e.g. "en", "fr", "es") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"country": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO-3166 2-letter country code (e.g. \"US\", \"DE\", \"JP\"). Omit to retrieve all countries."
},
"language": {
"type": "string",
"description": "ISO 639-1 language code for localized country names (e.g. \"en\", \"fr\", \"es\")"
}
},
"additionalProperties": false
}Search the GeoNames geographical database for places, populated areas, mountains, rivers, and 12M+ geographical features worldwide. Filter by country (ISO-3166 2-letter code), feature class (A=administrative, P=populated place, T=mountain, H=water body, S=building/spot), and feature code (e.g. PPLC=capital, MT=mountain, STM=stream). Results include geoname_id, lat/lng, country, admin1/admin2, population, and Wikipedia link. Order by relevance (default), population, elevation, or Wikipedia linkage. Supports multilingual name lookup via lang parameter. CC BY 4.0 open data, no upstream cost.
| Argument | Type | Description |
|---|---|---|
| q | string | Full-text search query across place names, alternate names, and feature codes (e.g. "Paris", "Mont Blanc") |
| name | string | Search by exact or partial official place name (more precise than q; e.g. "New York") |
| country | string | Filter results to this ISO-3166 2-letter country code (e.g. "US", "FR", "DE") |
| language | string | ISO 639-1 language code for localized names in the response (e.g. "en", "fr", "de") |
| max_rows | integer | Maximum number of results to return (default 10, max 1000) |
| order_by | string | Sort order: "relevance" (default, best name match), "population" (largest first), "elevation" (highest first), "wikipedia" (most linked) |
| start_row | integer | Zero-based offset for pagination (default 0) |
| feature_code | string | GeoNames feature code for fine-grained filtering (e.g. "PPLC"=capital, "MT"=mountain, "STM"=stream) |
| feature_class | string | GeoNames feature class: A=administrative, H=hydrographic, L=parks/area, P=populated place, R=road, S=spot/building, T=mountain/hill, U=undersea, V=vegetation |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"q": {
"type": "string",
"description": "Full-text search query across place names, alternate names, and feature codes (e.g. \"Paris\", \"Mont Blanc\")"
},
"name": {
"type": "string",
"description": "Search by exact or partial official place name (more precise than q; e.g. \"New York\")"
},
"country": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Filter results to this ISO-3166 2-letter country code (e.g. \"US\", \"FR\", \"DE\")"
},
"language": {
"type": "string",
"description": "ISO 639-1 language code for localized names in the response (e.g. \"en\", \"fr\", \"de\")"
},
"max_rows": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Maximum number of results to return (default 10, max 1000)"
},
"order_by": {
"enum": [
"relevance",
"population",
"elevation",
"wikipedia"
],
"type": "string",
"description": "Sort order: \"relevance\" (default, best name match), \"population\" (largest first), \"elevation\" (highest first), \"wikipedia\" (most linked)"
},
"start_row": {
"type": "integer",
"minimum": 0,
"description": "Zero-based offset for pagination (default 0)"
},
"feature_code": {
"type": "string",
"description": "GeoNames feature code for fine-grained filtering (e.g. \"PPLC\"=capital, \"MT\"=mountain, \"STM\"=stream)"
},
"feature_class": {
"enum": [
"A",
"H",
"L",
"P",
"R",
"S",
"T",
"U",
"V"
],
"type": "string",
"description": "GeoNames feature class: A=administrative, H=hydrographic, L=parks/area, P=populated place, R=road, S=spot/building, T=mountain/hill, U=undersea, V=vegetation"
}
},
"additionalProperties": false
}Look up the timezone for any coordinates on Earth using the GeoNames database. Returns IANA timezone ID (e.g. "America/New_York", "Europe/London"), GMT offset, DST offset, raw (winter) offset, current local time, today's sunrise and sunset times (local), and the country at those coordinates. Useful for scheduling tasks across time zones, converting UTC timestamps, or annotating location data with timezone context. CC BY 4.0 open data, no upstream cost.
| Argument | Type | Description |
|---|---|---|
| language | string | ISO 639-1 language code for the country name in the response (e.g. "en", "de") |
| latitude* | number | Latitude of the location to look up (-90 to 90, e.g. 40.7128 for New York City) |
| longitude* | number | Longitude of the location to look up (-180 to 180, e.g. -74.0060 for New York City) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude"
],
"properties": {
"language": {
"type": "string",
"description": "ISO 639-1 language code for the country name in the response (e.g. \"en\", \"de\")"
},
"latitude": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude of the location to look up (-90 to 90, e.g. 40.7128 for New York City)"
},
"longitude": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude of the location to look up (-180 to 180, e.g. -74.0060 for New York City)"
}
},
"additionalProperties": false
}Look up postal / ZIP codes and their place names across 100+ countries using the GeoNames database. Search by postal code (e.g. "10001" for NYC, "SW1A 1AA" for London, "75001" for Paris) or by place name. Returns matching postal codes with lat/lng, admin area names, and ISO-3166-2 subdivision codes. Use the country filter (ISO-3166 2-letter) to narrow results. Covers US, UK, Germany, France, Australia, Canada, Japan, India, Brazil, and 90+ more. CC BY 4.0 open data, no upstream cost.
| Argument | Type | Description |
|---|---|---|
| country | string | ISO-3166 2-letter country code to restrict the postal code search (e.g. "US", "GB", "DE") |
| max_rows | integer | Maximum number of results to return (default 10, max 1000) |
| place_name | string | Place or city name to search postal codes for (e.g. "Berlin", "Sydney"). Use with country for best results. |
| postal_code | string | Postal / ZIP code to look up (e.g. "10001" for New York, "SW1A 1AA" for London) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"country": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO-3166 2-letter country code to restrict the postal code search (e.g. \"US\", \"GB\", \"DE\")"
},
"max_rows": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Maximum number of results to return (default 10, max 1000)"
},
"place_name": {
"type": "string",
"description": "Place or city name to search postal codes for (e.g. \"Berlin\", \"Sydney\"). Use with country for best results."
},
"postal_code": {
"type": "string",
"description": "Postal / ZIP code to look up (e.g. \"10001\" for New York, \"SW1A 1AA\" for London)"
}
},
"additionalProperties": false
}Get full detail for a single New Zealand earthquake by its GeoNet publicID (e.g. "2014p715167") — origin time, depth, magnitude, locality, MMI shaking, and quality (best/preliminary/automatic/deleted). Data: GeoNet (api.geonet.org.nz), run by GNS Science, no auth required.
| Argument | Type | Description |
|---|---|---|
| public_id* | string | GeoNet quake publicID, e.g. "2014p715167" (year + auto-generated code). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"public_id"
],
"properties": {
"public_id": {
"type": "string",
"maxLength": 32,
"minLength": 1,
"description": "GeoNet quake publicID, e.g. \"2014p715167\" (year + auto-generated code)."
}
},
"additionalProperties": false
}Search recent New Zealand earthquakes by minimum shaking intensity. Returns quakes that may have caused shaking greater than or equal to the given MMI (Modified Mercalli Intensity, -1 to 8) in the NZ region during the last 365 days (max 100 results), with time, location, depth, magnitude, and locality. Data: GeoNet (api.geonet.org.nz), run by GNS Science, no auth required.
| Argument | Type | Description |
|---|---|---|
| mmi* | integer | Minimum Modified Mercalli Intensity (MMI) threshold, -1 to 8. Returns quakes that may have caused shaking greater than or equal to this value in the New Zealand region during the last 365 days (max 100 results). -1 = quakes too small to calculate a stable MMI. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"mmi"
],
"properties": {
"mmi": {
"type": "integer",
"maximum": 8,
"minimum": -1,
"description": "Minimum Modified Mercalli Intensity (MMI) threshold, -1 to 8. Returns quakes that may have caused shaking greater than or equal to this value in the New Zealand region during the last 365 days (max 100 results). -1 = quakes too small to calculate a stable MMI."
}
},
"additionalProperties": false
}Get New Zealand earthquake-rate statistics — magnitude-count breakdown over the last 7, 28, and 365 days, plus a daily earthquake-count time series. Optionally filter the magnitude-count breakdown to one window with the days parameter. Data: GeoNet (api.geonet.org.nz), run by GNS Science, no auth required.
| Argument | Type | Description |
|---|---|---|
| days | string | Limit the magnitude-count breakdown to this window (7, 28, or 365 days); returns all three windows if omitted (client-side filter). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"days": {
"enum": [
"7",
"28",
"365"
],
"type": "string",
"description": "Limit the magnitude-count breakdown to this window (7, 28, or 365 days); returns all three windows if omitted (client-side filter)."
}
},
"additionalProperties": false
}Get the current Volcanic Alert Level and aviation colour code for New Zealand's 12 monitored volcanoes (e.g. Ruapehu, White Island/Whakaari, Taupo), including current activity summary and most-likely-hazards description. Optionally filter to a single volcano_id. Data: GeoNet (api.geonet.org.nz), run by GNS Science, no auth required.
| Argument | Type | Description |
|---|---|---|
| volcano_id | string | Filter to a single volcano by ID (e.g. "ruapehu", "whiteisland"); returns all 12 New Zealand monitored volcanoes if omitted (client-side filter). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"volcano_id": {
"enum": [
"taupo",
"tongariro",
"aucklandvolcanicfield",
"kermadecislands",
"mayorisland",
"ngauruhoe",
"northland",
"okataina",
"rotorua",
"whiteisland",
"ruapehu",
"taranakiegmont"
],
"type": "string",
"description": "Filter to a single volcano by ID (e.g. \"ruapehu\", \"whiteisland\"); returns all 12 New Zealand monitored volcanoes if omitted (client-side filter)."
}
},
"additionalProperties": false
}Analyze fishing effort intensity across a geographic polygon for a specified date range, aggregated by gear type (trawlers, longliners, purse seiners, squid jiggers, etc.). Returns a grid of 0.1-degree cells with fishing hours and vessel counts per month or year, drawn from Global Fishing Watch's public AIS-based fishing effort dataset covering 2012–present. Useful for marine protected area monitoring, fisheries research, and vessel traffic analysis. Define the study area with a closed polygon in [longitude, latitude] coordinates.
| Argument | Type | Description |
|---|---|---|
| end_date* | string | End of the analysis period in ISO format YYYY-MM-DD (e.g. "2023-06-30"). Must be after start_date; keep ranges under 12 months for manageable response sizes. |
| start_date* | string | Start of the analysis period in ISO format YYYY-MM-DD (e.g. "2023-01-01"). GFW data coverage starts from 2012. |
| coordinates | array | Polygon boundary as an array of [longitude, latitude] pairs defining the analysis area. The polygon must be closed (first and last coordinate identical). Example: [[-10,35],[-5,35],[-5,40],[-10,40],[-10,35]] for a box in the NE Atlantic. Omit to analyze global waters. |
| temporal_resolution | string | Time granularity for effort aggregation. "MONTHLY" groups data by calendar month; "YEARLY" by year. Default: "MONTHLY". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"start_date",
"end_date"
],
"properties": {
"end_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "End of the analysis period in ISO format YYYY-MM-DD (e.g. \"2023-06-30\"). Must be after start_date; keep ranges under 12 months for manageable response sizes."
},
"start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Start of the analysis period in ISO format YYYY-MM-DD (e.g. \"2023-01-01\"). GFW data coverage starts from 2012."
},
"coordinates": {
"type": "array",
"items": {
"type": "array",
"items": [
{
"type": "number"
},
{
"type": "number"
}
],
"maxItems": 2,
"minItems": 2
},
"minItems": 4,
"description": "Polygon boundary as an array of [longitude, latitude] pairs defining the analysis area. The polygon must be closed (first and last coordinate identical). Example: [[-10,35],[-5,35],[-5,40],[-10,40],[-10,35]] for a box in the NE Atlantic. Omit to analyze global waters."
},
"temporal_resolution": {
"enum": [
"MONTHLY",
"YEARLY"
],
"type": "string",
"description": "Time granularity for effort aggregation. \"MONTHLY\" groups data by calendar month; \"YEARLY\" by year. Default: \"MONTHLY\"."
}
},
"additionalProperties": false
}Retrieve complete identity and activity profile for a specific vessel using its Global Fishing Watch vessel UUID. Returns self-reported AIS data (name, flag, MMSI, IMO, call sign), inferred gear and ship types from neural-network analysis of movement patterns, official registry records (where available), and AIS coverage statistics (total messages, positions, active date range). Vessel UUIDs are obtained from gfw.vessel.search.
| Argument | Type | Description |
|---|---|---|
| vessel_id* | string | Global Fishing Watch vessel UUID as returned by gfw.vessel.search (e.g. "1f1f12b24-4dfb-e5c8-90b0-32f8e79402c1"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"vessel_id"
],
"properties": {
"vessel_id": {
"type": "string",
"minLength": 1,
"description": "Global Fishing Watch vessel UUID as returned by gfw.vessel.search (e.g. \"1f1f12b24-4dfb-e5c8-90b0-32f8e79402c1\")."
}
},
"additionalProperties": false
}Retrieve AIS-detected maritime events for a specific vessel — either fishing activity episodes or port visits. Fishing events capture when a vessel slowed and maneuvered in patterns consistent with active fishing (coordinates, duration, EEZ/RFMO/FAO area codes, distance from shore and port). Port visits capture anchorage and berthing stops (port name, flag, entry/exit times). Results are paginated; use offset for subsequent pages. Vessel UUID is obtained from gfw.vessel.search.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of events per page (1–50, default 10). |
| offset | integer | Pagination offset — number of events to skip (default 0). |
| end_date | string | Filter events ending on or before this date in ISO format YYYY-MM-DD (e.g. "2023-12-31"). |
| vessel_id* | string | GFW vessel UUID as returned by gfw.vessel.search (e.g. "1f1f12b24-4dfb-e5c8-90b0-32f8e79402c1"). |
| event_type | string | Type of maritime event to retrieve. "fishing" returns AIS-detected fishing activity events; "port_visit" returns port calls and anchorage stops. Default: "fishing". |
| start_date | string | Filter events starting on or after this date in ISO format YYYY-MM-DD (e.g. "2023-01-01"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"vessel_id"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of events per page (1–50, default 10)."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset — number of events to skip (default 0)."
},
"end_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Filter events ending on or before this date in ISO format YYYY-MM-DD (e.g. \"2023-12-31\")."
},
"vessel_id": {
"type": "string",
"minLength": 1,
"description": "GFW vessel UUID as returned by gfw.vessel.search (e.g. \"1f1f12b24-4dfb-e5c8-90b0-32f8e79402c1\")."
},
"event_type": {
"enum": [
"fishing",
"port_visit"
],
"type": "string",
"description": "Type of maritime event to retrieve. \"fishing\" returns AIS-detected fishing activity events; \"port_visit\" returns port calls and anchorage stops. Default: \"fishing\"."
},
"start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Filter events starting on or after this date in ISO format YYYY-MM-DD (e.g. \"2023-01-01\")."
}
},
"additionalProperties": false
}Search the Global Fishing Watch database for fishing and commercial vessels by name, MMSI (9-digit AIS identifier), IMO number, or call sign. Returns vessel identities with flag state, gear types (trawlers, longliners, purse seiners, etc.), ship types, and AIS transmission date ranges. GFW tracks 60,000+ active fishing vessels using satellite AIS data covering 2012–present. Optionally filter results by flag state using ISO 3-letter country code. Use gfw.vessel.details for full registry information.
| Argument | Type | Description |
|---|---|---|
| flag | string | ISO 3166-1 alpha-3 country code to filter by flag state (e.g. "CHN" for China, "USA" for United States, "PAN" for Panama). |
| limit | integer | Maximum number of vessels to return (1–50, default 10). |
| query* | string | Vessel name, MMSI (9-digit AIS identifier), IMO number, or call sign to search for (e.g. "Atlantic Star", "123456789", "IMO9234567"). Partial names are supported. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"flag": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO 3166-1 alpha-3 country code to filter by flag state (e.g. \"CHN\" for China, \"USA\" for United States, \"PAN\" for Panama)."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of vessels to return (1–50, default 10)."
},
"query": {
"type": "string",
"minLength": 1,
"description": "Vessel name, MMSI (9-digit AIS identifier), IMO number, or call sign to search for (e.g. \"Atlantic Star\", \"123456789\", \"IMO9234567\"). Partial names are supported."
}
},
"additionalProperties": false
}Get the latest known COVID-19 statistics for one location from one dataset: epidemiology (cases/deaths/tests), hospitalizations (hospital/ICU/ventilator patient counts), or vaccinations (vaccination totals). Use global-health-covid.location_search first to find a valid location_key. Returns found=false with no error if the location has no row in that dataset. Data: Google "COVID-19 Open Data" (storage.googleapis.com/covid19-open-data), no auth required. HISTORICAL DATA ONLY — frozen since 2022-09-15, "latest" means latest available before the freeze, not real-time.
| Argument | Type | Description |
|---|---|---|
| dataset* | string | Which dataset to fetch the latest known snapshot from: "epidemiology" (cases/deaths/tests), "hospitalizations" (hospital/ICU/ventilator patient counts), or "vaccinations" (vaccination totals). |
| location_key* | string | Location key from the dataset, e.g. "US" (country), "US_CA" (state), or a deeper key discovered via global-health-covid.location_search. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"location_key",
"dataset"
],
"properties": {
"dataset": {
"enum": [
"epidemiology",
"hospitalizations",
"vaccinations"
],
"type": "string",
"description": "Which dataset to fetch the latest known snapshot from: \"epidemiology\" (cases/deaths/tests), \"hospitalizations\" (hospital/ICU/ventilator patient counts), or \"vaccinations\" (vaccination totals)."
},
"location_key": {
"type": "string",
"maxLength": 20,
"minLength": 2,
"description": "Location key from the dataset, e.g. \"US\" (country), \"US_CA\" (state), or a deeper key discovered via global-health-covid.location_search."
}
},
"additionalProperties": false
}Get the full daily historical COVID-19 time series for one location, optionally windowed by start_date/end_date. Returns a curated subset of core fields per day: cases, deaths, hospitalizations, and vaccination totals (both new and cumulative), plus population. Does NOT return the raw upstream dataset which includes 700+ demographic/policy/search-trend columns. Use global-health-covid.location_search first to find a valid location_key. Data: Google "COVID-19 Open Data" (storage.googleapis.com/covid19-open-data), no auth required. HISTORICAL DATA ONLY — coverage ends ~2022-09, frozen dataset.
| Argument | Type | Description |
|---|---|---|
| end_date | string | Filter history to dates on/before this ISO date, format "YYYY-MM-DD". Omit for full history. |
| start_date | string | Filter history to dates on/after this ISO date, format "YYYY-MM-DD". Omit for full history. |
| location_key* | string | Location key from the dataset, e.g. "US" (country), "US_CA" (state), or a deeper key discovered via global-health-covid.location_search. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"location_key"
],
"properties": {
"end_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Filter history to dates on/before this ISO date, format \"YYYY-MM-DD\". Omit for full history."
},
"start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Filter history to dates on/after this ISO date, format \"YYYY-MM-DD\". Omit for full history."
},
"location_key": {
"type": "string",
"maxLength": 20,
"minLength": 2,
"description": "Location key from the dataset, e.g. \"US\" (country), \"US_CA\" (state), or a deeper key discovered via global-health-covid.location_search."
}
},
"additionalProperties": false
}Search/list COVID-19 tracked locations (countries, states/provinces, counties, localities) by free-text name, ISO country code, and/or administrative aggregation level. Returns each location's key, names, and level — use the returned location_key with global-health-covid.latest_snapshot or global-health-covid.location_history. Data: Google "COVID-19 Open Data" (storage.googleapis.com/covid19-open-data), no auth required. HISTORICAL DATA ONLY — frozen since 2022-09-15.
| Argument | Type | Description |
|---|---|---|
| query | string | Free-text match against country, subregion, or locality name (e.g. "California", "Germany"). Case-insensitive substring match. Omit to browse by country_code/aggregation_level only. |
| country_code | string | Filter to a single 2-letter ISO country code (e.g. "US", "DE"). |
| aggregation_level | string | Filter by administrative level: "0"=country, "1"=state/province, "2"=county, "3"=locality/city. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"query": {
"type": "string",
"maxLength": 80,
"minLength": 1,
"description": "Free-text match against country, subregion, or locality name (e.g. \"California\", \"Germany\"). Case-insensitive substring match. Omit to browse by country_code/aggregation_level only."
},
"country_code": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Filter to a single 2-letter ISO country code (e.g. \"US\", \"DE\")."
},
"aggregation_level": {
"enum": [
"0",
"1",
"2",
"3"
],
"type": "string",
"description": "Filter by administrative level: \"0\"=country, \"1\"=state/province, \"2\"=county, \"3\"=locality/city."
}
},
"additionalProperties": false
}List all 472 Brazilian banks with ISPB codes and bank numbers. BrasilAPI MIT
| Argument | Type | Description |
|---|---|---|
| refresh | boolean | Set to true to bypass cache and re-fetch the list of 472 Brazilian banks with ISPB codes. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"refresh": {
"type": "boolean",
"description": "Set to true to bypass cache and re-fetch the list of 472 Brazilian banks with ISPB codes."
}
},
"additionalProperties": false
}Look up a Brazilian address by 8-digit CEP postal code — returns street, neighborhood, city, state, coordinates, timezone. BrasilAPI MIT
| Argument | Type | Description |
|---|---|---|
| cep* | string | Brazilian postal code (CEP) — 8 digits with or without dash (e.g. "01001000" or "01001-000"). Returns street, neighborhood, city, state, coords, timezone. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"cep"
],
"properties": {
"cep": {
"type": "string",
"minLength": 8,
"description": "Brazilian postal code (CEP) — 8 digits with or without dash (e.g. \"01001000\" or \"01001-000\"). Returns street, neighborhood, city, state, coords, timezone."
}
},
"additionalProperties": false
}Look up a Brazilian company by 14-digit CNPJ tax ID — returns name, address, CNAE codes, QSA partners, capital, status from Receita Federal. BrasilAPI MIT
| Argument | Type | Description |
|---|---|---|
| cnpj* | string | Brazilian company tax ID (CNPJ) — 14 digits with or without punctuation (e.g. "33000167000101" or "33.000.167/0001-01"). Returns full Receita Federal company registry data. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"cnpj"
],
"properties": {
"cnpj": {
"type": "string",
"minLength": 14,
"description": "Brazilian company tax ID (CNPJ) — 14 digits with or without punctuation (e.g. \"33000167000101\" or \"33.000.167/0001-01\"). Returns full Receita Federal company registry data."
}
},
"additionalProperties": false
}Look up Brazilian area code (DDD, 2 digits) → state and cities. BrasilAPI MIT
| Argument | Type | Description |
|---|---|---|
| ddd* | integer | Brazilian area code (DDD) — 2 digits (e.g. 11 for São Paulo, 21 for Rio de Janeiro). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"ddd"
],
"properties": {
"ddd": {
"type": "integer",
"maximum": 99,
"minimum": 11,
"description": "Brazilian area code (DDD) — 2 digits (e.g. 11 for São Paulo, 21 for Rio de Janeiro)."
}
},
"additionalProperties": false
}All Brazilian national holidays for a given year. BrasilAPI MIT
| Argument | Type | Description |
|---|---|---|
| year* | integer | Year (e.g. 2026). Returns all Brazilian national holidays for that year. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"year"
],
"properties": {
"year": {
"type": "integer",
"maximum": 2100,
"minimum": 1900,
"description": "Year (e.g. 2026). Returns all Brazilian national holidays for that year."
}
},
"additionalProperties": false
}Current SELIC, CDI, and IPCA rates from Banco Central do Brasil. BrasilAPI MIT
| Argument | Type | Description |
|---|---|---|
| refresh | boolean | Set to true to bypass cache and re-fetch current SELIC, CDI, and IPCA rates. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"refresh": {
"type": "boolean",
"description": "Set to true to bypass cache and re-fetch current SELIC, CDI, and IPCA rates."
}
},
"additionalProperties": false
}Search 53K+ US federal election candidates by name/cycle/office (House/Senate/Presidential)/state/party. Returns FEC candidate ID + filing dates. FEC public disclosure
| Argument | Type | Description |
|---|---|---|
| q | string | Free-text candidate name search (e.g. "Sanders", "Trump"). |
| page | integer | Page number (default 1). |
| cycle | integer | Election cycle year — even number (e.g. 2024, 2022, 2020). |
| party | string | Party abbreviation (e.g. "REP", "DEM", "LIB", "GRE"). |
| state | string | 2-letter state code (e.g. "CA", "TX"). |
| office | string | Office: "H" House of Representatives, "S" Senate, "P" Presidential. |
| per_page | integer | Per-page count (default 20, max 100). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"q": {
"type": "string",
"description": "Free-text candidate name search (e.g. \"Sanders\", \"Trump\")."
},
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number (default 1)."
},
"cycle": {
"type": "integer",
"description": "Election cycle year — even number (e.g. 2024, 2022, 2020)."
},
"party": {
"type": "string",
"description": "Party abbreviation (e.g. \"REP\", \"DEM\", \"LIB\", \"GRE\")."
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "2-letter state code (e.g. \"CA\", \"TX\")."
},
"office": {
"enum": [
"H",
"S",
"P"
],
"type": "string",
"description": "Office: \"H\" House of Representatives, \"S\" Senate, \"P\" Presidential."
},
"per_page": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Per-page count (default 20, max 100)."
}
},
"additionalProperties": false
}Receipts, disbursements, and cash-on-hand for US political committees (PACs, parties, candidate committees). Filter by cycle and committee type. FEC public disclosure
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number (default 1). |
| cycle | integer | Election cycle year (e.g. 2024). |
| per_page | integer | Per-page count (default 20, max 100). |
| committee_type | string | Committee type code: "P" Presidential, "H" House, "S" Senate, "X" Party, "Y" Party-Qualified, "N" PAC, "Q" PAC-Qualified, "O" Super PAC. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number (default 1)."
},
"cycle": {
"type": "integer",
"description": "Election cycle year (e.g. 2024)."
},
"per_page": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Per-page count (default 20, max 100)."
},
"committee_type": {
"type": "string",
"description": "Committee type code: \"P\" Presidential, \"H\" House, \"S\" Senate, \"X\" Party, \"Y\" Party-Qualified, \"N\" PAC, \"Q\" PAC-Qualified, \"O\" Super PAC."
}
},
"additionalProperties": false
}Aggregate election totals by cycle, office, and state — total receipts, disbursements, candidate count per race. FEC public disclosure
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number (default 1). |
| cycle | integer | Election cycle year (e.g. 2024). |
| state | string | 2-letter state code. |
| office | string | Office: "H" House, "S" Senate, "P" Presidential. |
| per_page | integer | Per-page count (default 20, max 100). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number (default 1)."
},
"cycle": {
"type": "integer",
"description": "Election cycle year (e.g. 2024)."
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "2-letter state code."
},
"office": {
"enum": [
"H",
"S",
"P"
],
"type": "string",
"description": "Office: \"H\" House, \"S\" Senate, \"P\" Presidential."
},
"per_page": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Per-page count (default 20, max 100)."
}
},
"additionalProperties": false
}Schedule E independent expenditures — Super PAC spending supporting/opposing specific federal candidates. Filter by cycle, candidate ID, or support/oppose direction. FEC public disclosure
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number (default 1). |
| cycle | integer | Election cycle year (e.g. 2024). |
| per_page | integer | Per-page count (default 20, max 100). |
| candidate_id | string | FEC candidate ID (from fec.candidates) — return only expenditures targeting this candidate. |
| support_oppose | string | "S" support / "O" oppose. If omitted, both directions returned. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number (default 1)."
},
"cycle": {
"type": "integer",
"description": "Election cycle year (e.g. 2024)."
},
"per_page": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Per-page count (default 20, max 100)."
},
"candidate_id": {
"type": "string",
"description": "FEC candidate ID (from fec.candidates) — return only expenditures targeting this candidate."
},
"support_oppose": {
"enum": [
"S",
"O"
],
"type": "string",
"description": "\"S\" support / \"O\" oppose. If omitted, both directions returned."
}
},
"additionalProperties": false
}Real-time PM2.5 readings (μg/m³) for the 5 Singapore regions (north/south/east/west/central). NEA, SG Open Data Licence v1.0
| Argument | Type | Description |
|---|---|---|
| date | string | Optional ISO 8601 date (YYYY-MM-DD) or datetime to query historical data. If omitted, returns the latest snapshot. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"date": {
"type": "string",
"description": "Optional ISO 8601 date (YYYY-MM-DD) or datetime to query historical data. If omitted, returns the latest snapshot."
}
},
"additionalProperties": false
}5-minute rainfall readings (mm) from 60 NEA weather stations across Singapore with station coords. SG Open Data Licence v1.0
| Argument | Type | Description |
|---|---|---|
| date | string | Optional ISO 8601 date (YYYY-MM-DD) or datetime to query historical data. If omitted, returns the latest snapshot. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"date": {
"type": "string",
"description": "Optional ISO 8601 date (YYYY-MM-DD) or datetime to query historical data. If omitted, returns the latest snapshot."
}
},
"additionalProperties": false
}Live taxi positions across Singapore aggregated to a 5km grid — returns the top 30 zones by taxi count and the timestamp of the snapshot. LTA, SG Open Data Licence v1.0
| Argument | Type | Description |
|---|---|---|
| refresh | boolean | Set to true to bypass cache and re-fetch the latest snapshot. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"refresh": {
"type": "boolean",
"description": "Set to true to bypass cache and re-fetch the latest snapshot."
}
},
"additionalProperties": false
}Real-time 2-hour weather forecast for 51 Singapore zones (showers/cloudy/etc.) from NEA. Singapore Open Data Licence v1.0
| Argument | Type | Description |
|---|---|---|
| date | string | Optional ISO 8601 date (YYYY-MM-DD) or datetime to query historical data. If omitted, returns the latest snapshot. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"date": {
"type": "string",
"description": "Optional ISO 8601 date (YYYY-MM-DD) or datetime to query historical data. If omitted, returns the latest snapshot."
}
},
"additionalProperties": false
}Street-level UK crime records within 1 mile of a coordinate for a given month (England + Wales, 43 forces). Filter by crime category. Returns up to 500 records with category, location, outcome status. OGL v3.0 (commercial OK)
| Argument | Type | Description |
|---|---|---|
| lat* | number | Latitude (e.g. 51.5074 for central London). UK area only. |
| lng* | number | Longitude (e.g. -0.1278 for central London). |
| date | string | Month in YYYY-MM format (e.g. "2024-06"). Defaults to latest available month if omitted. |
| limit | integer | Max crime records to return (default 100, max 500). |
| category | string | Crime category slug — "all-crime" (default), "burglary", "violent-crime", "drugs", "robbery", "shoplifting", "vehicle-crime", "anti-social-behaviour", etc. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lng"
],
"properties": {
"lat": {
"type": "number",
"description": "Latitude (e.g. 51.5074 for central London). UK area only."
},
"lng": {
"type": "number",
"description": "Longitude (e.g. -0.1278 for central London)."
},
"date": {
"type": "string",
"description": "Month in YYYY-MM format (e.g. \"2024-06\"). Defaults to latest available month if omitted."
},
"limit": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Max crime records to return (default 100, max 500)."
},
"category": {
"type": "string",
"description": "Crime category slug — \"all-crime\" (default), \"burglary\", \"violent-crime\", \"drugs\", \"robbery\", \"shoplifting\", \"vehicle-crime\", \"anti-social-behaviour\", etc."
}
},
"additionalProperties": false
}List the 43 UK police forces (id + name) for England and Wales. Used to drill down into per-force statistics. OGL v3.0
| Argument | Type | Description |
|---|---|---|
| refresh | boolean | Set to true to bypass cache and re-fetch the list of 43 UK police forces. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"refresh": {
"type": "boolean",
"description": "Set to true to bypass cache and re-fetch the list of 43 UK police forces."
}
},
"additionalProperties": false
}Case outcomes (charged, acquitted, action taken, etc.) for crimes at a UK coordinate in a given month. Useful for property safety scoring. OGL v3.0
| Argument | Type | Description |
|---|---|---|
| lat* | number | Latitude of the location to query (e.g. 51.5074). |
| lng* | number | Longitude of the location to query (e.g. -0.1278). |
| date | string | Month in YYYY-MM format. Defaults to latest available month. |
| limit | integer | Max outcome records to return (default 100, max 500). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lng"
],
"properties": {
"lat": {
"type": "number",
"description": "Latitude of the location to query (e.g. 51.5074)."
},
"lng": {
"type": "number",
"description": "Longitude of the location to query (e.g. -0.1278)."
},
"date": {
"type": "string",
"description": "Month in YYYY-MM format. Defaults to latest available month."
},
"limit": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Max outcome records to return (default 100, max 500)."
}
},
"additionalProperties": false
}Fetch full content of a GOV.UK page by its base path — title, publication date, organisation, full HTML body (or structured fields per content type), related documents.
| Argument | Type | Description |
|---|---|---|
| base_path* | string | GOV.UK URL path starting with /, e.g. '/income-tax-rates' or '/government/publications/spring-statement-2026'. Get from govuk.search results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"base_path"
],
"properties": {
"base_path": {
"type": "string",
"description": "GOV.UK URL path starting with /, e.g. '/income-tax-rates' or '/government/publications/spring-statement-2026'. Get from govuk.search results."
}
},
"additionalProperties": false
}Full-text search across all 700K+ GOV.UK documents — guidance pages, news articles, statistics releases, organisation pages, ministerial pages, statutory instruments. Filter by content type, organisation, topic. Distinct from UK FSA (food ratings only) — this covers ALL government publications.
| Argument | Type | Description |
|---|---|---|
| q* | string | Search query (free text). Examples: 'energy bill rebate', 'visa skilled worker', 'income tax allowance 2026'. |
| count | integer | Results per page (1-100, default 10). |
| order | string | Sort order. Default is relevance. Use '-public_timestamp' for newest first, 'public_timestamp' for oldest first. |
| start | integer | Offset for pagination (default 0). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Search query (free text). Examples: 'energy bill rebate', 'visa skilled worker', 'income tax allowance 2026'."
},
"count": {
"type": "integer",
"default": 10,
"maximum": 100,
"minimum": 1,
"description": "Results per page (1-100, default 10)."
},
"order": {
"enum": [
"-public_timestamp",
"public_timestamp",
"relevance",
"-relevance"
],
"type": "string",
"description": "Sort order. Default is relevance. Use '-public_timestamp' for newest first, 'public_timestamp' for oldest first."
},
"start": {
"type": "integer",
"default": 0,
"minimum": 0,
"description": "Offset for pagination (default 0)."
}
},
"additionalProperties": false
}List or search UK government organisations (ministerial departments, executive agencies, NDPBs, public corporations) — name, web URL, parent department, child organisations. 1100+ entries from Cabinet Office to local agencies.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number (1-100, default 1, 20 organisations per page). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"default": 1,
"maximum": 100,
"minimum": 1,
"description": "Page number (1-100, default 1, 20 organisations per page)."
}
},
"additionalProperties": false
}Browse the topic hierarchy of Poland's official Local Data Bank (Bank Danych Lokalnych, GUS statistics office) — prices, demography, finance, environment, labour market, and more. Omit parent_id to list the 33 root topics, or pass a parent_id to list its children. Leaf subjects (has_variables=true) can be passed to gus-poland.variables. Data: bdl.stat.gov.pl (GUS BDL API v1), no auth required.
| Argument | Type | Description |
|---|---|---|
| page | integer | Zero-based page number (default 0). |
| page_size | integer | Results per page, 1-100 (default 20). |
| parent_id | string | BDL subject-tree node id to list children of (e.g. "K15" for PRICES, "G186" for a sub-topic). Omit to list the 33 root-level topic categories. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 0,
"description": "Zero-based page number (default 0)."
},
"page_size": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Results per page, 1-100 (default 20)."
},
"parent_id": {
"type": "string",
"description": "BDL subject-tree node id to list children of (e.g. \"K15\" for PRICES, \"G186\" for a sub-topic). Omit to list the 33 root-level topic categories."
}
},
"additionalProperties": false
}Search for Polish official statistical variables by keyword (e.g. "population", "unemployment", "average salary"), or list all variables under a subject_id from gus-poland.subjects. Returns each variable's numeric variable_id and measurement unit, for use with gus-poland.data. Data: bdl.stat.gov.pl (GUS BDL API v1), no auth required.
| Argument | Type | Description |
|---|---|---|
| page | integer | Zero-based page number (default 0). |
| query | string | Search variables by keyword in their name, e.g. "population", "unemployment", "average salary". Either query or subject_id is required. |
| page_size | integer | Results per page, 1-100 (default 20). |
| subject_id | string | List all variables under a leaf subject id (hasVariables=true) from gus-poland.subjects, e.g. "P1458". Either query or subject_id is required. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 0,
"description": "Zero-based page number (default 0)."
},
"query": {
"type": "string",
"description": "Search variables by keyword in their name, e.g. \"population\", \"unemployment\", \"average salary\". Either query or subject_id is required."
},
"page_size": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Results per page, 1-100 (default 20)."
},
"subject_id": {
"type": "string",
"description": "List all variables under a leaf subject id (hasVariables=true) from gus-poland.subjects, e.g. \"P1458\". Either query or subject_id is required."
}
},
"additionalProperties": false
}Get statistical values for a variable_id from gus-poland.variables, broken down by territorial unit. Use unit_level (0=Poland, 1=macroregion, 2=voivodeship, 3=region, 4=subregion, 5=powiat, 6=gmina, 7=locality; default 2) to get all units at that level, or a specific unit_id (12-digit TERYT code, e.g. "000000000000" for all of Poland) for one unit's full series. Optionally filter by year(s). Data: bdl.stat.gov.pl (GUS BDL API v1), no auth required.
| Argument | Type | Description |
|---|---|---|
| page | integer | Zero-based page number (default 0). |
| year | array | One or more specific years to filter by, e.g. [2022, 2023]. Omit to return the full available history. |
| unit_id | string | BDL 12-digit territorial unit code to fetch a single unit's series (e.g. "000000000000" for all of Poland, "011200000000" for Małopolskie voivodeship). If set, unit_level is ignored. |
| page_size | integer | Territorial units per page, 1-100 (default 20). |
| unit_level | integer | Administrative level to break the data down by when unit_id is not set: 0=Poland, 1=macroregion, 2=voivodeship, 3=region, 4=subregion, 5=powiat (county), 6=gmina (municipality), 7=statistical locality. Default 2 (voivodeship). |
| variable_id* | integer | Numeric variable id from gus-poland.variables (e.g. 4859 for "wheat 1 dt" procurement price). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"variable_id"
],
"properties": {
"page": {
"type": "integer",
"minimum": 0,
"description": "Zero-based page number (default 0)."
},
"year": {
"type": "array",
"items": {
"type": "integer"
},
"maxItems": 10,
"description": "One or more specific years to filter by, e.g. [2022, 2023]. Omit to return the full available history."
},
"unit_id": {
"type": "string",
"description": "BDL 12-digit territorial unit code to fetch a single unit's series (e.g. \"000000000000\" for all of Poland, \"011200000000\" for Małopolskie voivodeship). If set, unit_level is ignored."
},
"page_size": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Territorial units per page, 1-100 (default 20)."
},
"unit_level": {
"type": "integer",
"maximum": 7,
"minimum": 0,
"description": "Administrative level to break the data down by when unit_id is not set: 0=Poland, 1=macroregion, 2=voivodeship, 3=region, 4=subregion, 5=powiat (county), 6=gmina (municipality), 7=statistical locality. Default 2 (voivodeship)."
},
"variable_id": {
"type": "integer",
"description": "Numeric variable id from gus-poland.variables (e.g. 4859 for \"wheat 1 dt\" procurement price)."
}
},
"additionalProperties": false
}Fetch full details for any HackerNews item by its integer ID — works for stories, comments, Ask HN posts, Show HN posts, jobs, and polls. Returns type, title, URL, author, score, body text (HTML-stripped), comment count, child comment IDs (up to 10), and direct HN link. No auth required. Data: Hacker News (CC BY 3.0).
| Argument | Type | Description |
|---|---|---|
| id* | integer | HackerNews item ID (integer). Works for stories, comments, jobs, polls, and poll options. Example: 48713832 |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"description": "HackerNews item ID (integer). Works for stories, comments, jobs, polls, and poll options. Example: 48713832",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Fetch the best-rated stories from Hacker News — high-quality posts selected by the HN "best" feed algorithm which balances score, engagement, and editorial quality. Up to 20 stories with title, URL, author, score, and comment count. No auth required. Data: Hacker News (CC BY 3.0).
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of best stories to return (1–20, default 10). HackerNews "best" feed: high-quality posts with strong upvotes and engagement. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of best stories to return (1–20, default 10). HackerNews \"best\" feed: high-quality posts with strong upvotes and engagement."
}
},
"additionalProperties": false
}Fetch the most recently submitted stories from Hacker News — up to 20 posts sorted by submission time (newest first). Useful for monitoring breaking tech news and community discussion before posts gain front-page visibility. Returns title, URL, author, score, and comment count. No auth required. Data: Hacker News (CC BY 3.0).
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of newest stories to return (1–20, default 10). Sorted by submission time, most recent first. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of newest stories to return (1–20, default 10). Sorted by submission time, most recent first."
}
},
"additionalProperties": false
}Fetch the current top stories from Hacker News — returns up to 20 posts with title, URL, score, author, comment count, and submission time. The HN front page algorithm ranks by score and recency. Results reflect the live HackerNews ranking updated every few minutes. No auth required. Data: Hacker News (CC BY 3.0).
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of top stories to return (1–20, default 10). Each story includes title, URL, score, and comment count. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of top stories to return (1–20, default 10). Each story includes title, URL, score, and comment count."
}
},
"additionalProperties": false
}Fetch a HackerNews user profile by username — returns karma score, account creation date, about/bio text, and total submission count (stories + comments). Useful for checking contributor credibility or researching HN community members. No auth required. Data: Hacker News (CC BY 3.0).
| Argument | Type | Description |
|---|---|---|
| username* | string | HackerNews username (case-sensitive). Examples: "pg", "dang", "tptacek". Returns karma, account age, about text, and submission count. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"username"
],
"properties": {
"username": {
"type": "string",
"minLength": 1,
"description": "HackerNews username (case-sensitive). Examples: \"pg\", \"dang\", \"tptacek\". Returns karma, account age, about text, and submission count."
}
},
"additionalProperties": false
}Look up 1-10 identifiers (any mix of oclc/isbn/issn/lccn/htid/recordnumber) against the HathiTrust catalog in a single call. Returns the same per-identifier record + item availability data as lookup_by_id, one result per queried identifier — use this instead of repeated lookup_by_id calls when checking availability for a reading list or citation set. Data: HathiTrust Bibliographic API, no auth required.
| Argument | Type | Description |
|---|---|---|
| ids* | array | 1-10 identifiers to look up in a single call, each with its own id_type |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"ids"
],
"properties": {
"ids": {
"type": "array",
"items": {
"type": "object",
"required": [
"id_type",
"id_value"
],
"properties": {
"id_type": {
"enum": [
"oclc",
"isbn",
"issn",
"lccn",
"htid",
"recordnumber"
],
"type": "string",
"description": "Identifier type: \"oclc\" (WorldCat number), \"isbn\", \"issn\", \"lccn\" (Library of Congress Control Number), \"htid\" (HathiTrust volume ID, e.g. \"pur1.32754075735872\"), or \"recordnumber\" (HathiTrust catalog record number)"
},
"id_value": {
"type": "string",
"minLength": 1,
"description": "The identifier value to look up"
}
},
"additionalProperties": false
},
"maxItems": 10,
"minItems": 1,
"description": "1-10 identifiers to look up in a single call, each with its own id_type"
}
},
"additionalProperties": false
}Get the full HathiTrust catalog record for one identifier (oclc/isbn/issn/lccn/htid/recordnumber), including everything lookup_by_id returns plus MARC-derived detail: authors, publisher, place of publication, physical description, subject headings, and language. Use this when you need bibliographic detail beyond title/ISBN, not just item availability. Data: HathiTrust Bibliographic API, no auth required.
| Argument | Type | Description |
|---|---|---|
| id_type* | string | Identifier type: "oclc" (WorldCat number), "isbn", "issn", "lccn" (Library of Congress Control Number), "htid" (HathiTrust volume ID, e.g. "pur1.32754075735872"), or "recordnumber" (HathiTrust catalog record number) |
| id_value* | string | The identifier value to look up (e.g. "8727632" for an oclc id_type) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id_type",
"id_value"
],
"properties": {
"id_type": {
"enum": [
"oclc",
"isbn",
"issn",
"lccn",
"htid",
"recordnumber"
],
"type": "string",
"description": "Identifier type: \"oclc\" (WorldCat number), \"isbn\", \"issn\", \"lccn\" (Library of Congress Control Number), \"htid\" (HathiTrust volume ID, e.g. \"pur1.32754075735872\"), or \"recordnumber\" (HathiTrust catalog record number)"
},
"id_value": {
"type": "string",
"minLength": 1,
"description": "The identifier value to look up (e.g. \"8727632\" for an oclc id_type)"
}
},
"additionalProperties": false
}Look up a book/serial in the HathiTrust shared digital library (18M+ volumes from 60+ research libraries) by one identifier: oclc (WorldCat number), isbn, issn, lccn, htid (HathiTrust volume ID), or recordnumber. Returns matching catalog record(s) — title, ISBNs/ISSNs/OCLC/LCCN, publish dates — plus every digitized item holding that record, with its contributing library, item URL, and access rights (e.g. "Full view", "Limited (search-only)"). Call hathitrust-digital.get_full_record for authors/publisher/subjects. Data: HathiTrust Bibliographic API, no auth required.
| Argument | Type | Description |
|---|---|---|
| id_type* | string | Identifier type: "oclc" (WorldCat number), "isbn", "issn", "lccn" (Library of Congress Control Number), "htid" (HathiTrust volume ID, e.g. "pur1.32754075735872"), or "recordnumber" (HathiTrust catalog record number) |
| id_value* | string | The identifier value to look up (e.g. "8727632" for an oclc id_type) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id_type",
"id_value"
],
"properties": {
"id_type": {
"enum": [
"oclc",
"isbn",
"issn",
"lccn",
"htid",
"recordnumber"
],
"type": "string",
"description": "Identifier type: \"oclc\" (WorldCat number), \"isbn\", \"issn\", \"lccn\" (Library of Congress Control Number), \"htid\" (HathiTrust volume ID, e.g. \"pur1.32754075735872\"), or \"recordnumber\" (HathiTrust catalog record number)"
},
"id_value": {
"type": "string",
"minLength": 1,
"description": "The identifier value to look up (e.g. \"8727632\" for an oclc id_type)"
}
},
"additionalProperties": false
}Get People-in-Need (PIN) figures broken down by sector, category (age/gender/disability), and population_status (affected/in-need/targeted/reached). Filter by location_code (ISO3), sector_name, population_status, admin1_name, and admin_level. Data: HDX Humanitarian API (hapi.humdata.org), run by UN OCHA Centre for Humanitarian Data, CC BY 4.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum rows to return (1-1000, default 100) |
| offset | integer | Number of rows to skip, for pagination (default 0) |
| admin1_name | string | 1st-level subnational admin area name to filter results, e.g. "Kayes" |
| admin_level | string | Admin granularity of returned rows: 0=national, 1=admin1, 2=admin2 |
| sector_name | string | Humanitarian sector name to filter results, e.g. "Health", "Food Security" |
| location_code | string | ISO3 country code to filter results, e.g. "MLI", "AFG", "SOM" |
| location_name | string | Country name to filter results (alternative to location_code), e.g. "Mali" |
| population_status | string | Population status: AFF=affected, INN=in need, TGT=targeted, REA=reached, all=all statuses |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Maximum rows to return (1-1000, default 100)"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Number of rows to skip, for pagination (default 0)"
},
"admin1_name": {
"type": "string",
"description": "1st-level subnational admin area name to filter results, e.g. \"Kayes\""
},
"admin_level": {
"enum": [
"0",
"1",
"2"
],
"type": "string",
"description": "Admin granularity of returned rows: 0=national, 1=admin1, 2=admin2"
},
"sector_name": {
"type": "string",
"description": "Humanitarian sector name to filter results, e.g. \"Health\", \"Food Security\""
},
"location_code": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO3 country code to filter results, e.g. \"MLI\", \"AFG\", \"SOM\""
},
"location_name": {
"type": "string",
"description": "Country name to filter results (alternative to location_code), e.g. \"Mali\""
},
"population_status": {
"enum": [
"AFF",
"INN",
"TGT",
"REA",
"all"
],
"type": "string",
"description": "Population status: AFF=affected, INN=in need, TGT=targeted, REA=reached, all=all statuses"
}
},
"additionalProperties": false
}Get "who's doing what, where" (3W) humanitarian response data — which organizations are active in which sector (Health, Nutrition, WASH, etc.) and location. Filter by location_code (ISO3), sector_name, org_name, admin1_name, and admin_level. Data: HDX Humanitarian API (hapi.humdata.org), run by UN OCHA Centre for Humanitarian Data, CC BY 4.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum rows to return (1-1000, default 100) |
| offset | integer | Number of rows to skip, for pagination (default 0) |
| org_name | string | Responding organization name to filter results, e.g. "UNICEF" |
| admin1_name | string | 1st-level subnational admin area name to filter results, e.g. "Kayes" |
| admin_level | string | Admin granularity of returned rows: 0=national, 1=admin1, 2=admin2 |
| sector_name | string | Humanitarian sector name to filter results, e.g. "Health", "Nutrition" |
| location_code | string | ISO3 country code to filter results, e.g. "MLI", "AFG", "SOM" |
| location_name | string | Country name to filter results (alternative to location_code), e.g. "Mali" |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Maximum rows to return (1-1000, default 100)"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Number of rows to skip, for pagination (default 0)"
},
"org_name": {
"type": "string",
"description": "Responding organization name to filter results, e.g. \"UNICEF\""
},
"admin1_name": {
"type": "string",
"description": "1st-level subnational admin area name to filter results, e.g. \"Kayes\""
},
"admin_level": {
"enum": [
"0",
"1",
"2"
],
"type": "string",
"description": "Admin granularity of returned rows: 0=national, 1=admin1, 2=admin2"
},
"sector_name": {
"type": "string",
"description": "Humanitarian sector name to filter results, e.g. \"Health\", \"Nutrition\""
},
"location_code": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO3 country code to filter results, e.g. \"MLI\", \"AFG\", \"SOM\""
},
"location_name": {
"type": "string",
"description": "Country name to filter results (alternative to location_code), e.g. \"Mali\""
}
},
"additionalProperties": false
}Get IPC (Integrated Food Security Phase Classification) data — population counts by food-insecurity phase (1=minimal to 5=catastrophe), current and projected. Filter by location_code (ISO3), ipc_phase, admin1_name, and admin_level. Data: HDX Humanitarian API (hapi.humdata.org), run by UN OCHA Centre for Humanitarian Data, CC BY 4.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum rows to return (1-1000, default 100) |
| offset | integer | Number of rows to skip, for pagination (default 0) |
| ipc_phase | string | IPC phase classification: 1=minimal, 2=stressed, 3=crisis, 4=emergency, 5=catastrophe, 3+=crisis or worse, all=all phases |
| admin1_name | string | 1st-level subnational admin area name to filter results, e.g. "Kayes" |
| admin_level | string | Admin granularity of returned rows: 0=national, 1=admin1, 2=admin2 |
| location_code | string | ISO3 country code to filter results, e.g. "MLI", "AFG", "SOM" |
| location_name | string | Country name to filter results (alternative to location_code), e.g. "Mali" |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Maximum rows to return (1-1000, default 100)"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Number of rows to skip, for pagination (default 0)"
},
"ipc_phase": {
"enum": [
"1",
"2",
"3",
"4",
"5",
"3+",
"all"
],
"type": "string",
"description": "IPC phase classification: 1=minimal, 2=stressed, 3=crisis, 4=emergency, 5=catastrophe, 3+=crisis or worse, all=all phases"
},
"admin1_name": {
"type": "string",
"description": "1st-level subnational admin area name to filter results, e.g. \"Kayes\""
},
"admin_level": {
"enum": [
"0",
"1",
"2"
],
"type": "string",
"description": "Admin granularity of returned rows: 0=national, 1=admin1, 2=admin2"
},
"location_code": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO3 country code to filter results, e.g. \"MLI\", \"AFG\", \"SOM\""
},
"location_name": {
"type": "string",
"description": "Country name to filter results (alternative to location_code), e.g. \"Mali\""
}
},
"additionalProperties": false
}Get baseline population demographics broken down by gender and age range for a country or subnational admin area. Filter by location_code (ISO3), gender, age_range, admin1_name, and admin_level. Data: HDX Humanitarian API (hapi.humdata.org), run by UN OCHA Centre for Humanitarian Data, CC BY 4.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum rows to return (1-1000, default 100) |
| gender | string | Gender code: f=female, m=male, x=non-binary, u=unknown, o=other, all=all |
| offset | integer | Number of rows to skip, for pagination (default 0) |
| age_range | string | Age range as "[start]-[end]" (e.g. "0-4", "18-59"), or "all" for all ages |
| admin1_name | string | 1st-level subnational admin area name to filter results, e.g. "Kayes" |
| admin_level | string | Admin granularity of returned rows: 0=national, 1=admin1, 2=admin2 |
| location_code | string | ISO3 country code to filter results, e.g. "MLI", "AFG", "SOM" |
| location_name | string | Country name to filter results (alternative to location_code), e.g. "Mali" |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Maximum rows to return (1-1000, default 100)"
},
"gender": {
"enum": [
"f",
"m",
"x",
"u",
"o",
"all"
],
"type": "string",
"description": "Gender code: f=female, m=male, x=non-binary, u=unknown, o=other, all=all"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Number of rows to skip, for pagination (default 0)"
},
"age_range": {
"type": "string",
"description": "Age range as \"[start]-[end]\" (e.g. \"0-4\", \"18-59\"), or \"all\" for all ages"
},
"admin1_name": {
"type": "string",
"description": "1st-level subnational admin area name to filter results, e.g. \"Kayes\""
},
"admin_level": {
"enum": [
"0",
"1",
"2"
],
"type": "string",
"description": "Admin granularity of returned rows: 0=national, 1=admin1, 2=admin2"
},
"location_code": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO3 country code to filter results, e.g. \"MLI\", \"AFG\", \"SOM\""
},
"location_name": {
"type": "string",
"description": "Country name to filter results (alternative to location_code), e.g. \"Mali\""
}
},
"additionalProperties": false
}Get full metadata for a single HDX dataset by id or URL slug: description, publishing organization, covered locations, tags, update frequency, license, source, and the full list of downloadable resources (name, format, download URL, size). Use hdx.dataset_search first to find a dataset id. Data: HDX CKAN Action API (data.humdata.org), no auth required.
| Argument | Type | Description |
|---|---|---|
| id* | string | HDX dataset id or URL slug (e.g. "hdx-hapi-som") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "HDX dataset id or URL slug (e.g. \"hdx-hapi-som\")"
}
},
"additionalProperties": false
}Search the Humanitarian Data Exchange catalog for datasets by free-text query, country, and/or publishing organization. Returns each dataset's id, title, notes, organization, resource count, dataset date range, license, and tags. Covers population, displacement, food security, health, conflict, and climate data for humanitarian response. Data: HDX CKAN Action API (data.humdata.org), no auth required.
| Argument | Type | Description |
|---|---|---|
| rows | integer | Number of datasets to return (1-20, default 10) |
| query | string | Free-text search across dataset title/description (e.g. "food security") |
| country | string | HDX location slug to filter by (e.g. "som" for Somalia, "ukr" for Ukraine) |
| organization | string | HDX organization slug to filter by (e.g. "who", "unhcr", "ocha-fts") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"rows": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of datasets to return (1-20, default 10)"
},
"query": {
"type": "string",
"description": "Free-text search across dataset title/description (e.g. \"food security\")"
},
"country": {
"type": "string",
"description": "HDX location slug to filter by (e.g. \"som\" for Somalia, \"ukr\" for Ukraine)"
},
"organization": {
"type": "string",
"description": "HDX organization slug to filter by (e.g. \"who\", \"unhcr\", \"ocha-fts\")"
}
},
"additionalProperties": false
}List countries/regions tracked on HDX with their published dataset count, optionally filtered by a name substring. Use the returned location id as the `country` filter for hdx.dataset_search. Data: HDX CKAN Action API (data.humdata.org), no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max locations to return (1-100, default 50) |
| query | string | Substring filter on location name (e.g. "sudan") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Max locations to return (1-100, default 50)"
},
"query": {
"type": "string",
"description": "Substring filter on location name (e.g. \"sudan\")"
}
},
"additionalProperties": false
}List humanitarian organizations publishing data on HDX (UN agencies, NGOs, governments, clusters) with their published dataset count, optionally filtered by a name substring. Use the returned slug as the `organization` filter for hdx.dataset_search. Data: HDX CKAN Action API (data.humdata.org), no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max organizations to return (1-50, default 20) |
| query | string | Substring filter on organization title (e.g. "red cross") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Max organizations to return (1-50, default 20)"
},
"query": {
"type": "string",
"description": "Substring filter on organization title (e.g. \"red cross\")"
}
},
"additionalProperties": false
}Search 577,000+ clinical trials worldwide — filter by condition (cancer, diabetes), intervention (drug name), sponsor, status (recruiting/completed), phase. Returns NCT ID, title, status, conditions, interventions, sponsor, enrollment. US National Library of Medicine (ClinicalTrials.gov)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of results to return (1–50). Default: 10. |
| phase | string | Filter by clinical trial phase. PHASE1=safety, PHASE2=efficacy, PHASE3=confirmatory, PHASE4=post-market, NA=not applicable (e.g. observational studies). |
| status | string | Filter by overall trial status. Most useful values: "RECRUITING" (open enrollment), "COMPLETED" (finished), "ACTIVE_NOT_RECRUITING" (ongoing but closed to new participants). |
| keyword | string | Free-text keyword search across all text fields of the trial record (e.g. "immunotherapy", "biomarker", "phase 3 randomized"). |
| sponsor | string | Sponsor or organization name to search for (e.g. "Pfizer", "NIH", "Mayo Clinic"). Searches the lead sponsor field. |
| condition | string | Disease or condition to search for (e.g. "diabetes", "breast cancer", "COVID-19"). Searches the conditions field of registered trials. |
| page_token | string | Pagination token from a previous search response (next_page_token field). Omit for the first page. |
| intervention | string | Drug or intervention to search for (e.g. "aspirin", "metformin", "CAR T-cell therapy"). Searches the interventions field of registered trials. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"default": 10,
"maximum": 50,
"minimum": 1,
"description": "Maximum number of results to return (1–50). Default: 10."
},
"phase": {
"enum": [
"PHASE1",
"PHASE2",
"PHASE3",
"PHASE4",
"EARLY_PHASE1",
"NA"
],
"type": "string",
"description": "Filter by clinical trial phase. PHASE1=safety, PHASE2=efficacy, PHASE3=confirmatory, PHASE4=post-market, NA=not applicable (e.g. observational studies)."
},
"status": {
"enum": [
"RECRUITING",
"NOT_YET_RECRUITING",
"ACTIVE_NOT_RECRUITING",
"COMPLETED",
"TERMINATED",
"WITHDRAWN",
"SUSPENDED",
"UNKNOWN"
],
"type": "string",
"description": "Filter by overall trial status. Most useful values: \"RECRUITING\" (open enrollment), \"COMPLETED\" (finished), \"ACTIVE_NOT_RECRUITING\" (ongoing but closed to new participants)."
},
"keyword": {
"type": "string",
"description": "Free-text keyword search across all text fields of the trial record (e.g. \"immunotherapy\", \"biomarker\", \"phase 3 randomized\")."
},
"sponsor": {
"type": "string",
"description": "Sponsor or organization name to search for (e.g. \"Pfizer\", \"NIH\", \"Mayo Clinic\"). Searches the lead sponsor field."
},
"condition": {
"type": "string",
"description": "Disease or condition to search for (e.g. \"diabetes\", \"breast cancer\", \"COVID-19\"). Searches the conditions field of registered trials."
},
"page_token": {
"type": "string",
"description": "Pagination token from a previous search response (next_page_token field). Omit for the first page."
},
"intervention": {
"type": "string",
"description": "Drug or intervention to search for (e.g. \"aspirin\", \"metformin\", \"CAR T-cell therapy\"). Searches the interventions field of registered trials."
}
},
"additionalProperties": false
}Total number of registered clinical studies in the ClinicalTrials.gov database (577,000+ as of March 2026) (ClinicalTrials.gov)
| Argument | Type | Description |
|---|---|---|
| dummy | string | Unused parameter — included for schema compatibility. Leave empty. Returns total study count and average record size from ClinicalTrials.gov. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"dummy": {
"type": "string",
"description": "Unused parameter — included for schema compatibility. Leave empty. Returns total study count and average record size from ClinicalTrials.gov."
}
},
"additionalProperties": false
}Full details for a clinical trial by NCT ID — protocol, conditions, interventions with dosing, eligibility criteria (age, sex), primary/secondary outcomes, sponsor, enrollment, phase, study design, dates, results if available (ClinicalTrials.gov)
| Argument | Type | Description |
|---|---|---|
| nct_id* | string | ClinicalTrials.gov registry identifier in NCT format (e.g. "NCT04368728", "NCT01454700"). Must start with "NCT" followed by 8 digits. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"nct_id"
],
"properties": {
"nct_id": {
"type": "string",
"pattern": "^NCT\\d{8}$",
"description": "ClinicalTrials.gov registry identifier in NCT format (e.g. \"NCT04368728\", \"NCT01454700\"). Must start with \"NCT\" followed by 8 digits."
}
},
"additionalProperties": false
}Get detailed nutrition data for a food item — up to 150 nutrients, portions, serving sizes, ingredients (USDA)
| Argument | Type | Description |
|---|---|---|
| fdc_id* | integer | USDA FoodData Central food ID (e.g. 171705 for chicken breast) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"fdc_id"
],
"properties": {
"fdc_id": {
"type": "integer",
"description": "USDA FoodData Central food ID (e.g. 171705 for chicken breast)"
}
},
"additionalProperties": false
}Search 350K+ foods in the USDA FoodData Central database — nutrition facts, ingredients, branded products, and reference foods
| Argument | Type | Description |
|---|---|---|
| query* | string | Food search query (e.g. "chicken breast", "brown rice", "vitamin D milk") |
| data_type | string | USDA data type filter: "Foundation" (reference foods), "Branded" (brand-name products), "SR Legacy" (legacy reference), "all" (default) |
| page_size | integer | Results per page (1-200, default 50) |
| brand_owner | string | Filter by brand owner name (e.g. "General Mills", "Tyson") |
| page_number | integer | Page number (default 1) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"description": "Food search query (e.g. \"chicken breast\", \"brown rice\", \"vitamin D milk\")"
},
"data_type": {
"enum": [
"Foundation",
"Branded",
"SR Legacy",
"all"
],
"type": "string",
"description": "USDA data type filter: \"Foundation\" (reference foods), \"Branded\" (brand-name products), \"SR Legacy\" (legacy reference), \"all\" (default)"
},
"page_size": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Results per page (1-200, default 50)"
},
"brand_owner": {
"type": "string",
"description": "Filter by brand owner name (e.g. \"General Mills\", \"Tyson\")"
},
"page_number": {
"type": "integer",
"minimum": 1,
"description": "Page number (default 1)"
}
},
"additionalProperties": false
}Search FDA FAERS database for drug adverse event reports — side effects, reactions, patient demographics (OpenFDA)
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of results to skip for pagination |
| limit | integer | Number of results (1-100, default 10) |
| search* | string | OpenFDA search query for adverse events (e.g. "patient.drug.medicinalproduct:aspirin", "patient.reaction.reactionmeddrapt:headache") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"search"
],
"properties": {
"skip": {
"type": "integer",
"minimum": 0,
"description": "Number of results to skip for pagination"
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of results (1-100, default 10)"
},
"search": {
"type": "string",
"description": "OpenFDA search query for adverse events (e.g. \"patient.drug.medicinalproduct:aspirin\", \"patient.reaction.reactionmeddrapt:headache\")"
}
},
"additionalProperties": false
}Search drug labeling data — indications, dosage, warnings, interactions, contraindications (OpenFDA)
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of results to skip for pagination |
| limit | integer | Number of results (1-100, default 10) |
| search* | string | OpenFDA search query for drug labels (e.g. "openfda.brand_name:ibuprofen", "openfda.generic_name:metformin", "drug_interactions:warfarin") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"search"
],
"properties": {
"skip": {
"type": "integer",
"minimum": 0,
"description": "Number of results to skip for pagination"
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of results (1-100, default 10)"
},
"search": {
"type": "string",
"description": "OpenFDA search query for drug labels (e.g. \"openfda.brand_name:ibuprofen\", \"openfda.generic_name:metformin\", \"drug_interactions:warfarin\")"
}
},
"additionalProperties": false
}Search FDA food enforcement and recall reports — contamination, mislabeling, safety alerts (OpenFDA)
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of results to skip for pagination |
| limit | integer | Number of results (1-100, default 10) |
| search | string | OpenFDA search query for food recalls (e.g. "reason_for_recall:salmonella", "recalling_firm:"Tyson"") |
| status | string | Filter by recall status |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"skip": {
"type": "integer",
"minimum": 0,
"description": "Number of results to skip for pagination"
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of results (1-100, default 10)"
},
"search": {
"type": "string",
"description": "OpenFDA search query for food recalls (e.g. \"reason_for_recall:salmonella\", \"recalling_firm:\"Tyson\"\")"
},
"status": {
"enum": [
"Ongoing",
"Completed",
"Terminated"
],
"type": "string",
"description": "Filter by recall status"
}
},
"additionalProperties": false
}Get full supplement label data — ingredients, amounts per serving, daily values, target groups (NIH DSLD)
| Argument | Type | Description |
|---|---|---|
| dsld_id* | integer | NIH DSLD supplement label ID |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"dsld_id"
],
"properties": {
"dsld_id": {
"type": "integer",
"description": "NIH DSLD supplement label ID"
}
},
"additionalProperties": false
}Search 200K+ dietary supplement labels in the NIH DSLD database — vitamins, minerals, herbal products
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of results (1-100, default 25) |
| query* | string | Supplement search query (e.g. "vitamin D", "fish oil", "probiotics") |
| offset | integer | Result offset for pagination |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of results (1-100, default 25)"
},
"query": {
"type": "string",
"description": "Supplement search query (e.g. \"vitamin D\", \"fish oil\", \"probiotics\")"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Result offset for pagination"
}
},
"additionalProperties": false
}Search 200K+ datasets on HuggingFace Hub by name or keyword. Returns dataset ID, downloads, likes, tags. Covers NLP, vision, audio, tabular datasets. Sorted by downloads.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of results (1-20, default 10) |
| search* | string | Search query — dataset name or keyword (e.g. "wikipedia", "imagenet", "squad") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"search"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of results (1-20, default 10)"
},
"search": {
"type": "string",
"minLength": 1,
"description": "Search query — dataset name or keyword (e.g. \"wikipedia\", \"imagenet\", \"squad\")"
}
},
"additionalProperties": false
}Get full metadata for a HuggingFace model — downloads, likes, tags, library, author, pipeline task, model card data. Use model_id from hf.models search (e.g. "meta-llama/Llama-3.3-70B-Instruct").
| Argument | Type | Description |
|---|---|---|
| model_id* | string | Full model ID (e.g. "meta-llama/Llama-3.3-70B-Instruct", "stabilityai/stable-diffusion-xl-base-1.0") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"model_id"
],
"properties": {
"model_id": {
"type": "string",
"pattern": "^[a-zA-Z0-9_.\\\\-\\\\/]+$",
"minLength": 1,
"description": "Full model ID (e.g. \"meta-llama/Llama-3.3-70B-Instruct\", \"stabilityai/stable-diffusion-xl-base-1.0\")"
}
},
"additionalProperties": false
}Search 1M+ ML models on HuggingFace Hub by name, task (text-generation, image-classification, translation), or library (transformers, diffusers). Returns model ID, downloads, likes, pipeline tag. Sorted by downloads.
| Argument | Type | Description |
|---|---|---|
| task | string | Filter by ML task: text-generation, image-classification, translation, text-to-image, automatic-speech-recognition, etc. |
| limit | integer | Number of results (1-20, default 10) |
| search* | string | Search query — model name or keyword (e.g. "llama", "stable-diffusion", "whisper") |
| library | string | Filter by framework: transformers, diffusers, sentence-transformers, gguf, etc. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"search"
],
"properties": {
"task": {
"type": "string",
"description": "Filter by ML task: text-generation, image-classification, translation, text-to-image, automatic-speech-recognition, etc."
},
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of results (1-20, default 10)"
},
"search": {
"type": "string",
"minLength": 1,
"description": "Search query — model name or keyword (e.g. \"llama\", \"stable-diffusion\", \"whisper\")"
},
"library": {
"type": "string",
"description": "Filter by framework: transformers, diffusers, sentence-transformers, gguf, etc."
}
},
"additionalProperties": false
}Extract named entities — people (PER), locations (LOC), organizations (ORG), and miscellaneous (MISC) — from text using a BERT-based NER model via HuggingFace Inference API. Returns each detected entity with its type, confidence score, and character positions in the original text. Default model: dbmdz/bert-large-cased-finetuned-conll03-english (CoNLL-2003, English). Useful for document parsing, contact extraction, and knowledge graph construction.
| Argument | Type | Description |
|---|---|---|
| text* | string | Input text to process. Maximum ~10,000 characters depending on model context window. |
| model | string | HuggingFace model ID to use for named entity recognition. Default: "dbmdz/bert-large-cased-finetuned-conll03-english" (English NER: PER, LOC, ORG, MISC). Alternatives: "dslim/bert-base-NER" (lightweight English NER), "Jean-Baptiste/roberta-large-ner-english" (higher accuracy English NER). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"text"
],
"properties": {
"text": {
"type": "string",
"minLength": 1,
"description": "Input text to process. Maximum ~10,000 characters depending on model context window."
},
"model": {
"type": "string",
"description": "HuggingFace model ID to use for named entity recognition. Default: \"dbmdz/bert-large-cased-finetuned-conll03-english\" (English NER: PER, LOC, ORG, MISC). Alternatives: \"dslim/bert-base-NER\" (lightweight English NER), \"Jean-Baptiste/roberta-large-ner-english\" (higher accuracy English NER)."
}
},
"additionalProperties": false
}Classify the sentiment of a text using a HuggingFace NLP model via the Inference API. Returns a predicted label (positive, negative, or neutral) with a confidence score, plus scores for all classes. Default model (cardiffnlp/twitter-roberta-base-sentiment-latest) is optimized for social media and short-form text. Supports a custom model parameter. Useful for customer feedback analysis, social media monitoring, and review classification.
| Argument | Type | Description |
|---|---|---|
| text* | string | Input text to process. Maximum ~10,000 characters depending on model context window. |
| model | string | HuggingFace model ID to use for sentiment classification. Default: "cardiffnlp/twitter-roberta-base-sentiment-latest" (3-class: positive/neutral/negative). Alternatives: "distilbert-base-uncased-finetuned-sst-2-english" (2-class: POSITIVE/NEGATIVE), "nlptown/bert-base-multilingual-uncased-sentiment" (1-5 star, multilingual). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"text"
],
"properties": {
"text": {
"type": "string",
"minLength": 1,
"description": "Input text to process. Maximum ~10,000 characters depending on model context window."
},
"model": {
"type": "string",
"description": "HuggingFace model ID to use for sentiment classification. Default: \"cardiffnlp/twitter-roberta-base-sentiment-latest\" (3-class: positive/neutral/negative). Alternatives: \"distilbert-base-uncased-finetuned-sst-2-english\" (2-class: POSITIVE/NEGATIVE), \"nlptown/bert-base-multilingual-uncased-sentiment\" (1-5 star, multilingual)."
}
},
"additionalProperties": false
}Summarize a long text into a shorter, coherent paragraph using the facebook/bart-large-cnn model via HuggingFace Inference API. Trained on CNN/DailyMail news articles; works well for factual prose. Control output length with max_length (token cap) and min_length (token floor) parameters. A custom model can be supplied (e.g. google/pegasus-xsum for extreme single-sentence summaries). Useful for article digests, executive summaries, and reducing LLM context window usage.
| Argument | Type | Description |
|---|---|---|
| text* | string | Input text to process. Maximum ~10,000 characters depending on model context window. |
| model | string | HuggingFace model ID to use for summarization. Default: "facebook/bart-large-cnn" (trained on CNN/DailyMail, excellent for news and articles). Alternatives: "sshleifer/distilbart-cnn-12-6" (faster, lighter), "google/pegasus-xsum" (extreme summarization, single sentence). |
| max_length | integer | Maximum number of tokens in the generated summary (20–1024). Default: model-controlled (typically ~150 tokens for BART-large-CNN). Set lower for shorter summaries (e.g. 60 for a single-sentence abstract). |
| min_length | integer | Minimum number of tokens in the generated summary (10–512). Prevents very short or empty summaries. Default: model-controlled (typically ~30 tokens). Set min_length lower than max_length. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"text"
],
"properties": {
"text": {
"type": "string",
"minLength": 1,
"description": "Input text to process. Maximum ~10,000 characters depending on model context window."
},
"model": {
"type": "string",
"description": "HuggingFace model ID to use for summarization. Default: \"facebook/bart-large-cnn\" (trained on CNN/DailyMail, excellent for news and articles). Alternatives: \"sshleifer/distilbart-cnn-12-6\" (faster, lighter), \"google/pegasus-xsum\" (extreme summarization, single sentence)."
},
"max_length": {
"type": "integer",
"maximum": 1024,
"minimum": 20,
"description": "Maximum number of tokens in the generated summary (20–1024). Default: model-controlled (typically ~150 tokens for BART-large-CNN). Set lower for shorter summaries (e.g. 60 for a single-sentence abstract)."
},
"min_length": {
"type": "integer",
"maximum": 512,
"minimum": 10,
"description": "Minimum number of tokens in the generated summary (10–512). Prevents very short or empty summaries. Default: model-controlled (typically ~30 tokens). Set min_length lower than max_length."
}
},
"additionalProperties": false
}Translate text between languages using the Helsinki-NLP opus-mt model family via HuggingFace Inference API. Covers 1,000+ language pairs (English to French, Spanish, German, Chinese, Japanese, Arabic, Russian, etc.). Specify target_lang as a 2-letter ISO 639-1 code (e.g. "fr", "es", "de", "zh", "ja"). The adapter automatically selects the opus-mt-{source}-{target} model. Useful for multilingual content pipelines, localization, and cross-language information retrieval.
| Argument | Type | Description |
|---|---|---|
| text* | string | Input text to process. Maximum ~10,000 characters depending on model context window. |
| model | string | Override the HuggingFace model ID for translation. If omitted, the adapter automatically selects "Helsinki-NLP/opus-mt-{source_lang}-{target_lang}" (e.g. "Helsinki-NLP/opus-mt-en-fr"). Use this to specify a different translation model, such as "facebook/nllb-200-distilled-600M" for broader multilingual coverage. |
| source_lang | string | ISO 639-1 two-letter source language code. Default: "en" (English). Change if the input text is in a language other than English (e.g. "fr" for French input, "es" for Spanish input). A Helsinki-NLP/opus-mt model must exist for the source→target language pair. |
| target_lang* | string | ISO 639-1 two-letter target language code (e.g. "fr" for French, "es" for Spanish, "de" for German, "pt" for Portuguese, "it" for Italian, "nl" for Dutch, "ru" for Russian, "zh" for Chinese, "ja" for Japanese, "ar" for Arabic, "ko" for Korean, "hi" for Hindi). Must have an available Helsinki-NLP/opus-mt model for the source→target pair. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"text",
"target_lang"
],
"properties": {
"text": {
"type": "string",
"minLength": 1,
"description": "Input text to process. Maximum ~10,000 characters depending on model context window."
},
"model": {
"type": "string",
"description": "Override the HuggingFace model ID for translation. If omitted, the adapter automatically selects \"Helsinki-NLP/opus-mt-{source_lang}-{target_lang}\" (e.g. \"Helsinki-NLP/opus-mt-en-fr\"). Use this to specify a different translation model, such as \"facebook/nllb-200-distilled-600M\" for broader multilingual coverage."
},
"source_lang": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO 639-1 two-letter source language code. Default: \"en\" (English). Change if the input text is in a language other than English (e.g. \"fr\" for French input, \"es\" for Spanish input). A Helsinki-NLP/opus-mt model must exist for the source→target language pair."
},
"target_lang": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO 639-1 two-letter target language code (e.g. \"fr\" for French, \"es\" for Spanish, \"de\" for German, \"pt\" for Portuguese, \"it\" for Italian, \"nl\" for Dutch, \"ru\" for Russian, \"zh\" for Chinese, \"ja\" for Japanese, \"ar\" for Arabic, \"ko\" for Korean, \"hi\" for Hindi). Must have an available Helsinki-NLP/opus-mt model for the source→target pair."
}
},
"additionalProperties": false
}Classify text into any custom set of categories without requiring model fine-tuning or training data. Provide a list of 2–20 candidate labels; the model determines which best describes the input text. Returns labels ranked by confidence score. Supports multi-label mode (text can match multiple categories). Default model: facebook/bart-large-mnli. Ideal for routing, content moderation, intent detection, and ad-hoc categorization tasks.
| Argument | Type | Description |
|---|---|---|
| text* | string | Input text to process. Maximum ~10,000 characters depending on model context window. |
| model | string | HuggingFace model ID to use for zero-shot classification. Default: "facebook/bart-large-mnli" (MNLI-trained, accurate but slower). Alternatives: "cross-encoder/nli-deberta-v3-small" (lighter and faster). |
| multi_label | boolean | If true, scores are independent for each label (text can match multiple categories simultaneously). If false (default), scores are mutually exclusive and sum to 1 (single best category). |
| candidate_labels* | array | List of candidate category labels to classify the text into (2–20 labels). Example: ["politics", "sports", "technology", "entertainment"]. Labels can be any descriptive phrases — the model performs inference without prior training on these labels. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"text",
"candidate_labels"
],
"properties": {
"text": {
"type": "string",
"minLength": 1,
"description": "Input text to process. Maximum ~10,000 characters depending on model context window."
},
"model": {
"type": "string",
"description": "HuggingFace model ID to use for zero-shot classification. Default: \"facebook/bart-large-mnli\" (MNLI-trained, accurate but slower). Alternatives: \"cross-encoder/nli-deberta-v3-small\" (lighter and faster)."
},
"multi_label": {
"type": "boolean",
"description": "If true, scores are independent for each label (text can match multiple categories simultaneously). If false (default), scores are mutually exclusive and sum to 1 (single best category)."
},
"candidate_labels": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"maxItems": 20,
"minItems": 2,
"description": "List of candidate category labels to classify the text into (2–20 labels). Example: [\"politics\", \"sports\", \"technology\", \"entertainment\"]. Labels can be any descriptive phrases — the model performs inference without prior training on these labels."
}
},
"additionalProperties": false
}Fetch full details for any HackerNews item by integer ID using the Algolia API — returns type, title, URL, author, score, body text, creation time, and the top 5 child comments. Works for stories, Ask HN, Show HN, comments, jobs, and polls. No auth required. Data: Hacker News (CC BY 3.0).
| Argument | Type | Description |
|---|---|---|
| id* | integer | HackerNews item ID (positive integer). Works for stories, comments, Ask HN, Show HN, jobs, and polls. Example: 48713832. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"description": "HackerNews item ID (positive integer). Works for stories, comments, Ask HN, Show HN, jobs, and polls. Example: 48713832.",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Search HackerNews comments by keyword — retrieves community opinions, technical insights, and discussions across the full HN history. Each result includes comment text (HTML-stripped), parent story context (title + URL), author, and direct HN link. No auth required. Data: Hacker News (CC BY 3.0).
| Argument | Type | Description |
|---|---|---|
| page | integer | Zero-based page index for pagination (default 0). |
| limit | integer | Number of comments to return (1–30, default 10). |
| query* | string | Search query to find comments across HackerNews history. Returns comment text, story context (title + URL), author, and direct HN link. Useful for finding community opinions or technical discussions. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"minimum": 0,
"description": "Zero-based page index for pagination (default 0)."
},
"limit": {
"type": "integer",
"maximum": 30,
"minimum": 1,
"description": "Number of comments to return (1–30, default 10)."
},
"query": {
"type": "string",
"description": "Search query to find comments across HackerNews history. Returns comment text, story context (title + URL), author, and direct HN link. Useful for finding community opinions or technical discussions."
}
},
"additionalProperties": false
}Full-text search over HackerNews history ranked by submission date (newest first) — ideal for finding the latest community discussions on any topic. Returns title, URL, author, score, and comment count. Supports filtering by type (story/ask/show/job/poll). No auth required. Data: Hacker News (CC BY 3.0).
| Argument | Type | Description |
|---|---|---|
| page | integer | Zero-based page index for pagination (default 0). |
| type | string | Content type filter. "story" = submitted links; "ask" = Ask HN; "show" = Show HN; "job" = job listings. Default: story. |
| limit | integer | Number of results to return (1–30, default 10). |
| query* | string | Full-text search query sorted by submission date (newest first). Ideal for finding the latest HN discussions on a topic. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"minimum": 0,
"description": "Zero-based page index for pagination (default 0)."
},
"type": {
"enum": [
"story",
"comment",
"job",
"poll",
"ask",
"show"
],
"type": "string",
"description": "Content type filter. \"story\" = submitted links; \"ask\" = Ask HN; \"show\" = Show HN; \"job\" = job listings. Default: story."
},
"limit": {
"type": "integer",
"maximum": 30,
"minimum": 1,
"description": "Number of results to return (1–30, default 10)."
},
"query": {
"type": "string",
"description": "Full-text search query sorted by submission date (newest first). Ideal for finding the latest HN discussions on a topic."
}
},
"additionalProperties": false
}Full-text search over the entire HackerNews history ranked by relevance — covers 20+ years of tech stories, Ask HN threads, Show HN posts, and job listings. Returns title, URL, author, score, comment count, and submission time. Supports filtering by type (story/ask/show/job/poll). Powered by Algolia. No auth required. Data: Hacker News (CC BY 3.0).
| Argument | Type | Description |
|---|---|---|
| page | integer | Zero-based page index for pagination (default 0). |
| type | string | Content type filter. "story" = submitted links; "ask" = Ask HN threads; "show" = Show HN posts; "job" = job listings; "poll" = polls. Default: story. |
| limit | integer | Number of results to return (1–30, default 10). |
| query* | string | Full-text search query. Searches across HN story titles, URLs, and authors. Supports multi-word queries (e.g. "rust programming language", "openai gpt"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"minimum": 0,
"description": "Zero-based page index for pagination (default 0)."
},
"type": {
"enum": [
"story",
"comment",
"job",
"poll",
"ask",
"show"
],
"type": "string",
"description": "Content type filter. \"story\" = submitted links; \"ask\" = Ask HN threads; \"show\" = Show HN posts; \"job\" = job listings; \"poll\" = polls. Default: story."
},
"limit": {
"type": "integer",
"maximum": 30,
"minimum": 1,
"description": "Number of results to return (1–30, default 10)."
},
"query": {
"type": "string",
"description": "Full-text search query. Searches across HN story titles, URLs, and authors. Supports multi-word queries (e.g. \"rust programming language\", \"openai gpt\")."
}
},
"additionalProperties": false
}Fetch a HackerNews user profile via the Algolia API — returns username, karma score, and about/bio text (HTML-stripped). Lightweight alternative to the Firebase user endpoint. No auth required. Data: Hacker News (CC BY 3.0).
| Argument | Type | Description |
|---|---|---|
| username* | string | HackerNews username (case-sensitive). Returns karma score and about/bio text. Examples: "pg", "dang", "tptacek". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"username"
],
"properties": {
"username": {
"type": "string",
"minLength": 1,
"description": "HackerNews username (case-sensitive). Returns karma score and about/bio text. Examples: \"pg\", \"dang\", \"tptacek\"."
}
},
"additionalProperties": false
}Get full metadata for one KSH dataset (dataset_id from hungary-ksh.dataset_search) — title, description, and the distribution list (distribution_id, format CSV/XML, download URL, temporal coverage, license) needed before calling hungary-ksh.dataset_data. Data: data.ksh.hu (KSH), no auth required.
| Argument | Type | Description |
|---|---|---|
| dataset_id* | string | KSH dataset UUID, from hungary-ksh.dataset_search (e.g. "f44d314b-bc27-40a7-b34e-af01b3c4ab05" for Population). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"dataset_id"
],
"properties": {
"dataset_id": {
"type": "string",
"description": "KSH dataset UUID, from hungary-ksh.dataset_search (e.g. \"f44d314b-bc27-40a7-b34e-af01b3c4ab05\" for Population)."
}
},
"additionalProperties": false
}Search/browse the 13 High-Value Datasets published by the Hungarian Central Statistical Office (population, national accounts, prices, industrial production, tourism, etc. — the full EU-mandated HVD category list, not a paginated catalog). Optional query substring filters hu+en titles/keywords/themes. Returns dataset_id + title for use in hungary-ksh.dataset_metadata and hungary-ksh.dataset_data. Data: data.ksh.hu (KSH), no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max datasets to return (1-13, default 13). |
| query | string | Substring to search across Hungarian + English titles, keywords, and themes, case-insensitive (e.g. "population", "GDP", "tourism"). Omit to list all 13 High-Value Datasets (KSH publishes exactly these 13, no more — this is the full EU-mandated HVD category list, not a paginated catalog). |
| offset | integer | Number of matching datasets to skip (default 0). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 13,
"minimum": 1,
"description": "Max datasets to return (1-13, default 13)."
},
"query": {
"type": "string",
"description": "Substring to search across Hungarian + English titles, keywords, and themes, case-insensitive (e.g. \"population\", \"GDP\", \"tourism\"). Omit to list all 13 High-Value Datasets (KSH publishes exactly these 13, no more — this is the full EU-mandated HVD category list, not a paginated catalog)."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Number of matching datasets to skip (default 0)."
}
},
"additionalProperties": false
}Fetch rows from one KSH dataset distribution (dataset_id + distribution_id from hungary-ksh.dataset_metadata). Distributions are semicolon-delimited CSV or SDMX-ML XML — both parsed into the same header + rows shape. Column names vary per distribution (e.g. "GEO", "TIME", "SEX", "OBS_VALUE") — call once without filter_column to see the header, then narrow with filter_column + filter_value (substring match). Rows capped 1-500 (default 50). Distributions above 5MB are rejected with a pointer to the raw download URL. Data: data.ksh.hu (KSH), no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max rows to return after filtering (1-500, default 50). |
| offset | integer | Number of matching rows to skip, for paging through a large filtered result. |
| dataset_id* | string | KSH dataset UUID, from hungary-ksh.dataset_search (e.g. "f44d314b-bc27-40a7-b34e-af01b3c4ab05" for Population). |
| filter_value | string | Substring to match (case-insensitive) against filter_column's value, e.g. "HU11" when filter_column is "GEO". Required when filter_column is set. |
| filter_column | string | Column name to filter on, must match a column in the header returned by this same tool (column names vary per distribution, e.g. "GEO" for region, "TIME" for year, "SEX" for sex code) — call once without a filter to see the header first. Requires filter_value. |
| distribution_id* | string | Distribution UUID, from hungary-ksh.dataset_metadata's distributions list (e.g. "eb3e481e-6b5a-45d1-8076-18c4ece155c2"). Each distribution is one CSV or SDMX-ML data file for a specific breakdown of the dataset (e.g. population by region vs. by citizenship) — call dataset_metadata first to see which one you need. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"dataset_id",
"distribution_id"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Max rows to return after filtering (1-500, default 50)."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Number of matching rows to skip, for paging through a large filtered result."
},
"dataset_id": {
"type": "string",
"description": "KSH dataset UUID, from hungary-ksh.dataset_search (e.g. \"f44d314b-bc27-40a7-b34e-af01b3c4ab05\" for Population)."
},
"filter_value": {
"type": "string",
"description": "Substring to match (case-insensitive) against filter_column's value, e.g. \"HU11\" when filter_column is \"GEO\". Required when filter_column is set."
},
"filter_column": {
"type": "string",
"description": "Column name to filter on, must match a column in the header returned by this same tool (column names vary per distribution, e.g. \"GEO\" for region, \"TIME\" for year, \"SEX\" for sex code) — call once without a filter to see the header first. Requires filter_value."
},
"distribution_id": {
"type": "string",
"description": "Distribution UUID, from hungary-ksh.dataset_metadata's distributions list (e.g. \"eb3e481e-6b5a-45d1-8076-18c4ece155c2\"). Each distribution is one CSV or SDMX-ML data file for a specific breakdown of the dataset (e.g. population by region vs. by citizenship) — call dataset_metadata first to see which one you need."
}
},
"additionalProperties": false
}Get open positions for a user wallet on Hyperliquid
| Argument | Type | Description |
|---|---|---|
| user* | string | User wallet address (0x...) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"user"
],
"properties": {
"user": {
"type": "string",
"description": "User wallet address (0x...)"
}
},
"additionalProperties": false
}Get account summary and margin details for a user wallet on Hyperliquid
| Argument | Type | Description |
|---|---|---|
| user* | string | User wallet address (0x...) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"user"
],
"properties": {
"user": {
"type": "string",
"description": "User wallet address (0x...)"
}
},
"additionalProperties": false
}Get market metadata and mid prices for all perpetual pairs on Hyperliquid
| Argument | Type | Description |
|---|---|---|
| coin | string | Specific coin symbol (e.g. BTC, ETH). Omit for all markets. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"coin": {
"type": "string",
"description": "Specific coin symbol (e.g. BTC, ETH). Omit for all markets."
}
},
"additionalProperties": false
}Get candlestick (OHLCV) data for a perpetual pair on Hyperliquid
| Argument | Type | Description |
|---|---|---|
| coin* | string | Coin symbol (e.g. BTC, ETH) |
| end_time | integer | End time in milliseconds since epoch |
| interval | string | Candlestick interval (1m, 5m, 15m, 1h, 4h, 1d, 1w) |
| start_time | integer | Start time in milliseconds since epoch |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"coin"
],
"properties": {
"coin": {
"type": "string",
"description": "Coin symbol (e.g. BTC, ETH)"
},
"end_time": {
"type": "integer",
"description": "End time in milliseconds since epoch"
},
"interval": {
"enum": [
"1m",
"3m",
"5m",
"15m",
"30m",
"1h",
"2h",
"4h",
"6h",
"8h",
"12h",
"1d",
"3d",
"1w",
"1M"
],
"type": "string",
"description": "Candlestick interval (1m, 5m, 15m, 1h, 4h, 1d, 1w)"
},
"start_time": {
"type": "integer",
"description": "Start time in milliseconds since epoch"
}
},
"additionalProperties": false
}Get L2 order book depth for a perpetual pair on Hyperliquid
| Argument | Type | Description |
|---|---|---|
| coin* | string | Coin symbol (e.g. BTC, ETH) |
| mantissa | integer | Mantissa for price rounding |
| n_sig_figs | integer | Number of significant figures for price levels |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"coin"
],
"properties": {
"coin": {
"type": "string",
"description": "Coin symbol (e.g. BTC, ETH)"
},
"mantissa": {
"type": "integer",
"description": "Mantissa for price rounding"
},
"n_sig_figs": {
"type": "integer",
"maximum": 10,
"minimum": 1,
"description": "Number of significant figures for price levels"
}
},
"additionalProperties": false
}Get vault details including performance and TVL on Hyperliquid
| Argument | Type | Description |
|---|---|---|
| vault_address* | string | Vault contract address (0x...) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"vault_address"
],
"properties": {
"vault_address": {
"type": "string",
"description": "Vault contract address (0x...)"
}
},
"additionalProperties": false
}Calculate a valid IBAN from domestic bank routing details: country code, bank code, account number, and optional branch code. Returns the computed IBAN with correct checksum. Useful for payment automation.
| Argument | Type | Description |
|---|---|---|
| bank_code* | string | Domestic bank code (e.g. "37040044" for Germany, "NWBK" for UK) |
| branch_code | string | Branch/sort code if required by the country (e.g. "601613" for UK) |
| country_code* | string | ISO 3166-1 alpha-2 country code (e.g. "DE", "GB", "FR", "NL") |
| account_number* | string | Account number in domestic format |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country_code",
"bank_code",
"account_number"
],
"properties": {
"bank_code": {
"type": "string",
"description": "Domestic bank code (e.g. \"37040044\" for Germany, \"NWBK\" for UK)"
},
"branch_code": {
"type": "string",
"description": "Branch/sort code if required by the country (e.g. \"601613\" for UK)"
},
"country_code": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO 3166-1 alpha-2 country code (e.g. \"DE\", \"GB\", \"FR\", \"NL\")"
},
"account_number": {
"type": "string",
"description": "Account number in domestic format"
}
},
"additionalProperties": false
}Validate an IBAN and retrieve associated bank info: BIC/SWIFT code, bank name, address, country, currency, and SEPA membership. Supports 80+ IBAN-enabled countries including EU, UK, and MENA. Returns validation result with detailed breakdown.
| Argument | Type | Description |
|---|---|---|
| iban* | string | IBAN to validate (e.g. "DE89370400440532013000", "GB29NWBK60161331926819"). Spaces allowed, auto-stripped. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"iban"
],
"properties": {
"iban": {
"type": "string",
"description": "IBAN to validate (e.g. \"DE89370400440532013000\", \"GB29NWBK60161331926819\"). Spaces allowed, auto-stripped."
}
},
"additionalProperties": false
}Get fast ICD-11 code autocomplete suggestions for a partial clinical term. Returns up to 10 matching codes and titles as the user types — ideal for building clinical coding interfaces, EHR integrations, or any application requiring responsive disease/diagnosis search. Input partial terms like "dia" → diabetes options, "hyp" → hypertension, "pneu" → pneumonia. No auth — US National Library of Medicine public domain, unlimited free.
| Argument | Type | Description |
|---|---|---|
| terms* | string | Partial clinical term for autocomplete suggestions (e.g. "dia" → diabetes options, "hyp" → hypertension options) |
| max_results | integer | Maximum number of autocomplete suggestions (1-10). Default: 5 |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"terms"
],
"properties": {
"terms": {
"type": "string",
"minLength": 1,
"description": "Partial clinical term for autocomplete suggestions (e.g. \"dia\" → diabetes options, \"hyp\" → hypertension options)"
},
"max_results": {
"type": "integer",
"default": 5,
"maximum": 10,
"minimum": 1,
"description": "Maximum number of autocomplete suggestions (1-10). Default: 5"
}
},
"additionalProperties": false
}Retrieve the title and classification type for a specific ICD-11 code. Returns the human-readable disease/condition name and whether the code is a primary stem code or an extension modifier. Use to validate ICD-11 codes, decode alphanumeric codes in clinical records, or verify correct code usage. Examples: BA00 → Essential hypertension, 5A10 → Type 1 diabetes mellitus, CA40 → Pneumonia. No auth — US National Library of Medicine public domain, unlimited free.
| Argument | Type | Description |
|---|---|---|
| code* | string | ICD-11 code to look up — alphanumeric code from the ICD-11 classification (e.g. "BA00" for essential hypertension, "5A10" for type 1 diabetes, "CA40" for pneumonia) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"code"
],
"properties": {
"code": {
"type": "string",
"minLength": 2,
"description": "ICD-11 code to look up — alphanumeric code from the ICD-11 classification (e.g. \"BA00\" for essential hypertension, \"5A10\" for type 1 diabetes, \"CA40\" for pneumonia)"
}
},
"additionalProperties": false
}Search ICD-11 codes returning only primary (stem) diagnosis codes — filters out extension/modifier codes. Stem codes represent principal diagnoses and standalone conditions, while extension codes are qualifiers (severity, laterality, histopathology). Use this when you need clean primary diagnoses for: mortality coding, disease surveillance, DRG assignment, or primary diagnosis classification. No auth — US National Library of Medicine public domain, unlimited free.
| Argument | Type | Description |
|---|---|---|
| terms* | string | Clinical search term to find primary (stem) ICD-11 diagnosis codes only — excludes extension/modifier codes (e.g. "cancer", "fever", "infection") |
| max_results | integer | Maximum number of primary (stem) codes to return (1-25). Default: 10 |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"terms"
],
"properties": {
"terms": {
"type": "string",
"minLength": 1,
"description": "Clinical search term to find primary (stem) ICD-11 diagnosis codes only — excludes extension/modifier codes (e.g. \"cancer\", \"fever\", \"infection\")"
},
"max_results": {
"type": "integer",
"default": 10,
"maximum": 25,
"minimum": 1,
"description": "Maximum number of primary (stem) codes to return (1-25). Default: 10"
}
},
"additionalProperties": false
}Search the ICD-11 disease classification for diagnosis codes by clinical term. Returns matching ICD-11 codes with titles and code type (stem = primary diagnosis, extension = modifier/qualifier). Covers all 55,000+ ICD-11 codes including diseases, injuries, external causes, and functional assessments. Use for clinical coding, medical record classification, disease surveillance, and health informatics. No auth — US National Library of Medicine public domain, unlimited free.
| Argument | Type | Description |
|---|---|---|
| terms* | string | Clinical search term — disease name, symptom, or condition (e.g. "diabetes mellitus", "pneumonia", "hypertension", "fracture") |
| max_results | integer | Maximum number of results to return (1-25). Default: 10 |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"terms"
],
"properties": {
"terms": {
"type": "string",
"minLength": 1,
"description": "Clinical search term — disease name, symptom, or condition (e.g. \"diabetes mellitus\", \"pneumonia\", \"hypertension\", \"fracture\")"
},
"max_results": {
"type": "integer",
"default": 10,
"maximum": 25,
"minimum": 1,
"description": "Maximum number of results to return (1-25). Default: 10"
}
},
"additionalProperties": false
}Browse Statistics Iceland's (Hagstofa Íslands) statistics database tree by path. Top-level databases: Atvinnuvegir (industries/sectors: fisheries, agriculture, tourism), Efnahagur (economy: prices, national accounts, public finance, trade), Ibuar (population: migration, births/deaths, family, elections, census), Samfelag (society: labour market, education, wages, health, culture, justice), Umhverfi (environment: land, air quality, energy, transport). Returns child nodes (subcategories, type=l) or table descriptors at leaf nodes (type=t). Use empty path '' to get the top-level databases. Navigate hierarchically until type=t nodes appear, then use iceland-statistics.table_metadata. Data: px.hagstofa.is (PXWeb API), no auth required.
| Argument | Type | Description |
|---|---|---|
| path | string | Hierarchical path through the Iceland statistics taxonomy. Empty '' gets the top-level databases: 'Atvinnuvegir' (industries/sectors: fisheries, agriculture, tourism), 'Efnahagur' (economy: prices, national accounts, public finance, trade), 'Ibuar' (population: migration, births/deaths, family, elections, census), 'Samfelag' (society: labour market, education, wages, health, culture, justice), 'Umhverfi' (environment: land, air quality, energy, transport). Use iceland-statistics.catalog recursively to navigate until type=t (table leaf) nodes appear. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"path": {
"type": "string",
"default": "",
"description": "Hierarchical path through the Iceland statistics taxonomy. Empty '' gets the top-level databases: 'Atvinnuvegir' (industries/sectors: fisheries, agriculture, tourism), 'Efnahagur' (economy: prices, national accounts, public finance, trade), 'Ibuar' (population: migration, births/deaths, family, elections, census), 'Samfelag' (society: labour market, education, wages, health, culture, justice), 'Umhverfi' (environment: land, air quality, energy, transport). Use iceland-statistics.catalog recursively to navigate until type=t (table leaf) nodes appear."
}
},
"additionalProperties": false
}Get metadata for a specific Iceland statistics table — title, dimensions (e.g. Ár/Year, Eining/Unit), valid value codes for each dimension, and latest update timestamp. Use this BEFORE iceland-statistics.table_query to discover accepted filter values. Example path: 'Ibuar/mannfjoldi/1_yfirlit/yfirlit_mannfjolda/MAN00000.px' (population key figures since 1703). Data: px.hagstofa.is, no auth required.
| Argument | Type | Description |
|---|---|---|
| table_path* | string | Full path to a leaf table (type='t' from iceland-statistics.catalog), e.g. 'Ibuar/mannfjoldi/1_yfirlit/yfirlit_mannfjolda/MAN00000.px' (population key figures since 1703). Returns title, dimension codes, and valid values to use in iceland-statistics.table_query. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"table_path"
],
"properties": {
"table_path": {
"type": "string",
"description": "Full path to a leaf table (type='t' from iceland-statistics.catalog), e.g. 'Ibuar/mannfjoldi/1_yfirlit/yfirlit_mannfjolda/MAN00000.px' (population key figures since 1703). Returns title, dimension codes, and valid values to use in iceland-statistics.table_query."
}
},
"additionalProperties": false
}Run a statistical query against an Iceland statistics table — specify dimension filters to slice data by year, unit, and other indicators. Returns JSON-stat2 format with labeled dimensions and numeric values. Call iceland-statistics.table_metadata first to discover valid dimension codes and value codes (often Icelandic words, e.g. 'Ár' for year). Example: population 1 January (Eining='0'), 3 most recent years (Ár filter='top' values=['3']). Data: px.hagstofa.is, no auth required, CC BY 4.0 (Statistics Iceland).
| Argument | Type | Description |
|---|---|---|
| query* | array | Array of dimension filters. Each filter selects which values to include for one dimension. Example: [{code:'Ár',selection:{filter:'top',values:['3']}}, {code:'Eining',selection:{filter:'item',values:['0']}}]. Response is JSON-stat2 format with dimension labels and numeric values array. |
| table_path* | string | Full path to the leaf table to query — same as iceland-statistics.table_metadata table_path. Example: 'Ibuar/mannfjoldi/1_yfirlit/yfirlit_mannfjolda/MAN00000.px'. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"table_path",
"query"
],
"properties": {
"query": {
"type": "array",
"items": {
"type": "object",
"required": [
"code",
"selection"
],
"properties": {
"code": {
"type": "string",
"description": "Dimension code from iceland-statistics.table_metadata variables[].code. Examples: 'Ár' (year), 'Eining' (unit). Dimension codes are frequently Icelandic words with non-ASCII characters — copy them exactly as returned by table_metadata."
},
"selection": {
"type": "object",
"required": [
"filter",
"values"
],
"properties": {
"filter": {
"type": "string",
"description": "Filter type. Common values: 'item' (select by exact code), 'top' (select N most recent — use with time dimensions like 'Ár'), 'all' (all values). Use the valueSet codes from metadata."
},
"values": {
"type": "array",
"items": {
"type": "string"
},
"description": "Array of value codes to select. Get valid codes from iceland-statistics.table_metadata variables[].values. For filter='item': list codes like ['0']. For filter='top': list count like ['3'] (3 most recent years). For filter='all': use ['*']."
}
},
"description": "Selection criteria for this dimension.",
"additionalProperties": false
}
},
"description": "Filter for one dimension (variable) in the table.",
"additionalProperties": false
},
"description": "Array of dimension filters. Each filter selects which values to include for one dimension. Example: [{code:'Ár',selection:{filter:'top',values:['3']}}, {code:'Eining',selection:{filter:'item',values:['0']}}]. Response is JSON-stat2 format with dimension labels and numeric values array."
},
"table_path": {
"type": "string",
"description": "Full path to the leaf table to query — same as iceland-statistics.table_metadata table_path. Example: 'Ibuar/mannfjoldi/1_yfirlit/yfirlit_mannfjolda/MAN00000.px'."
}
},
"additionalProperties": false
}Look up game companies by ID or search by name — description, country, developed/published game IDs, logos, and websites
| Argument | Type | Description |
|---|---|---|
| id | integer | IGDB company ID (numeric, e.g. 70 for Nintendo). Use either id or query. |
| limit | integer | Maximum number of results when searching by query (default 10, max 50) |
| query | string | Search query for company name (e.g. "Valve", "CD Projekt"). Use either id or query. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"id": {
"type": "integer",
"description": "IGDB company ID (numeric, e.g. 70 for Nintendo). Use either id or query."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of results when searching by query (default 10, max 50)"
},
"query": {
"type": "string",
"description": "Search query for company name (e.g. \"Valve\", \"CD Projekt\"). Use either id or query."
}
},
"additionalProperties": false
}Get full game details by IGDB ID — storyline, genres, platforms, developers, publishers, themes, game modes, similar games, and websites
| Argument | Type | Description |
|---|---|---|
| id* | integer | IGDB game ID (numeric, e.g. 1877 for Cyberpunk 2077) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"description": "IGDB game ID (numeric, e.g. 1877 for Cyberpunk 2077)"
}
},
"additionalProperties": false
}Get cover art, screenshots, and video trailers for a game — image URLs with dimensions and YouTube video IDs
| Argument | Type | Description |
|---|---|---|
| id* | integer | IGDB game ID (numeric, e.g. 1877 for Cyberpunk 2077) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"description": "IGDB game ID (numeric, e.g. 1877 for Cyberpunk 2077)"
}
},
"additionalProperties": false
}Search 280K+ games in IGDB (Twitch) — rich metadata with genres, platforms, ratings, cover art, and release dates
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of results to return (default 10, max 50) |
| query* | string | Search query for games (e.g. "Cyberpunk 2077", "The Legend of Zelda", "Elden Ring") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of results to return (default 10, max 50)"
},
"query": {
"type": "string",
"description": "Search query for games (e.g. \"Cyberpunk 2077\", \"The Legend of Zelda\", \"Elden Ring\")"
}
},
"additionalProperties": false
}Look up gaming platforms by ID or search by name — abbreviation, generation, platform family, versions, and summary
| Argument | Type | Description |
|---|---|---|
| id | integer | IGDB platform ID (numeric, e.g. 48 for PlayStation 4, 6 for PC). Use either id or query. |
| limit | integer | Maximum number of results when searching by query (default 10, max 50) |
| query | string | Search query for platform name (e.g. "PlayStation", "Nintendo Switch"). Use either id or query. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"id": {
"type": "integer",
"description": "IGDB platform ID (numeric, e.g. 48 for PlayStation 4, 6 for PC). Use either id or query."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of results when searching by query (default 10, max 50)"
},
"query": {
"type": "string",
"description": "Search query for platform name (e.g. \"PlayStation\", \"Nintendo Switch\"). Use either id or query."
}
},
"additionalProperties": false
}Search or list ILOSTAT labor-statistics dataflows — ~1200 official series from the International Labour Organization covering employment, unemployment, wages, working time, labour force participation, informality, and child labour. Filter by name/id with query, or omit to list all (capped to 200 results). Use the returned dataflow_id with ilostat.structure and ilostat.data. Data: sdmx.ilo.org (ILOSTAT SDMX public REST API), no auth required.
| Argument | Type | Description |
|---|---|---|
| query | string | Filter dataflows by name or id substring, case-insensitive (e.g. "unemployment", "wages", "child labour"). Omit to list all ~1200 available dataflows (capped to 200 results). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"query": {
"type": "string",
"description": "Filter dataflows by name or id substring, case-insensitive (e.g. \"unemployment\", \"wages\", \"child labour\"). Omit to list all ~1200 available dataflows (capped to 200 results)."
}
},
"additionalProperties": false
}Get the dimensions and valid codes for an ILOSTAT dataflow (dataflow_id from ilostat.dataflows, e.g. "DF_EMP_TEMP_SEX_AGE_NB" for employment by sex and age) — reference area, frequency, measure, sex, and age dimensions each with their code list. Use this to interpret the dimension labels returned by ilostat.data, or to build a narrower key filter. Data: sdmx.ilo.org (ILOSTAT SDMX public REST API), no auth required.
| Argument | Type | Description |
|---|---|---|
| version | string | Dataflow version, from ilostat.dataflows (e.g. "1.0"). Omit to use the latest version. |
| dataflow_id* | string | ILOSTAT dataflow id, from ilostat.dataflows (e.g. "DF_EMP_TEMP_SEX_AGE_NB" for employment by sex and age). Returns the dimension list (e.g. REF_AREA, FREQ, MEASURE, SEX, AGE) with each dimension's valid codes — needed to interpret ilostat.data results and build a key filter. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"dataflow_id"
],
"properties": {
"version": {
"type": "string",
"description": "Dataflow version, from ilostat.dataflows (e.g. \"1.0\"). Omit to use the latest version."
},
"dataflow_id": {
"type": "string",
"minLength": 1,
"description": "ILOSTAT dataflow id, from ilostat.dataflows (e.g. \"DF_EMP_TEMP_SEX_AGE_NB\" for employment by sex and age). Returns the dimension list (e.g. REF_AREA, FREQ, MEASURE, SEX, AGE) with each dimension's valid codes — needed to interpret ilostat.data results and build a key filter."
}
},
"additionalProperties": false
}Get observation values for an ILOSTAT dataflow (dataflow_id from ilostat.dataflows). Use key (from ilostat.structure) to filter by country/frequency/measure/sex/age, e.g. "USA.A....." for United States annual data, all other dimensions unfiltered. Control the time range with start_period/end_period or last_n_observations. Data: sdmx.ilo.org (ILOSTAT SDMX public REST API), no auth required.
| Argument | Type | Description |
|---|---|---|
| key | string | SDMX dot-separated dimension filter key in dimension position order (e.g. "USA.A....." for a country restricted to United States, all other dimensions unfiltered). Use "all" (default) to fetch every series unfiltered — combine with ilostat.structure to build a narrower key and avoid oversized responses. |
| end_period | string | End of period range, e.g. "2024" (annual) or "2024-12" (monthly). Takes precedence over last_n_observations when set. |
| dataflow_id* | string | ILOSTAT dataflow id, from ilostat.dataflows (e.g. "DF_EMP_TEMP_SEX_AGE_NB" for employment by sex and age). |
| start_period | string | Start of period range, e.g. "2020" (annual) or "2020-01" (monthly). Takes precedence over last_n_observations when set. |
| last_n_observations | integer | Return only the most recent N observations per series (max 100, default 10). Ignored if start_period or end_period is set. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"dataflow_id"
],
"properties": {
"key": {
"type": "string",
"description": "SDMX dot-separated dimension filter key in dimension position order (e.g. \"USA.A.....\" for a country restricted to United States, all other dimensions unfiltered). Use \"all\" (default) to fetch every series unfiltered — combine with ilostat.structure to build a narrower key and avoid oversized responses."
},
"end_period": {
"type": "string",
"description": "End of period range, e.g. \"2024\" (annual) or \"2024-12\" (monthly). Takes precedence over last_n_observations when set."
},
"dataflow_id": {
"type": "string",
"minLength": 1,
"description": "ILOSTAT dataflow id, from ilostat.dataflows (e.g. \"DF_EMP_TEMP_SEX_AGE_NB\" for employment by sex and age)."
},
"start_period": {
"type": "string",
"description": "Start of period range, e.g. \"2020\" (annual) or \"2020-01\" (monthly). Takes precedence over last_n_observations when set."
},
"last_n_observations": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Return only the most recent N observations per series (max 100, default 10). Ignored if start_period or end_period is set."
}
},
"additionalProperties": false
}Get current account balance (percent of GDP) from the IMF World Economic Outlook (WEO) for one or more countries, including IMF forward projections. Filter by ISO 3166-1 alpha-3 country code(s) and/or a year range; omit filters to get all 190+ countries plus regional/income-group aggregates. Data: IMF DataMapper (www.imf.org), CC BY 4.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| country | string | ISO 3166-1 alpha-3 country code to filter (e.g. "USA", "DEU", "JPN", "CHN"). Omit to return all 190+ countries plus IMF regional/income-group aggregates. |
| end_year | integer | Latest year to include, including IMF WEO forward projections (e.g. 2029). Omit for full history. |
| countries | array | List of ISO 3166-1 alpha-3 country codes to filter (e.g. ["USA","DEU","JPN"]), max 20. Use instead of "country" to fetch multiple countries in one call. |
| start_year | integer | Earliest year to include in the returned time series (e.g. 2015). Omit for full history. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"country": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO 3166-1 alpha-3 country code to filter (e.g. \"USA\", \"DEU\", \"JPN\", \"CHN\"). Omit to return all 190+ countries plus IMF regional/income-group aggregates."
},
"end_year": {
"type": "integer",
"maximum": 2035,
"minimum": 1980,
"description": "Latest year to include, including IMF WEO forward projections (e.g. 2029). Omit for full history."
},
"countries": {
"type": "array",
"items": {
"type": "string",
"maxLength": 3,
"minLength": 3
},
"maxItems": 20,
"description": "List of ISO 3166-1 alpha-3 country codes to filter (e.g. [\"USA\",\"DEU\",\"JPN\"]), max 20. Use instead of \"country\" to fetch multiple countries in one call."
},
"start_year": {
"type": "integer",
"maximum": 2035,
"minimum": 1980,
"description": "Earliest year to include in the returned time series (e.g. 2015). Omit for full history."
}
},
"additionalProperties": false
}Get general government net lending/borrowing (fiscal balance, percent of GDP) from the IMF World Economic Outlook (WEO) for one or more countries, including IMF forward projections. Filter by ISO 3166-1 alpha-3 country code(s) and/or a year range; omit filters to get all 190+ countries plus regional/income-group aggregates. Data: IMF DataMapper (www.imf.org), CC BY 4.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| country | string | ISO 3166-1 alpha-3 country code to filter (e.g. "USA", "DEU", "JPN", "CHN"). Omit to return all 190+ countries plus IMF regional/income-group aggregates. |
| end_year | integer | Latest year to include, including IMF WEO forward projections (e.g. 2029). Omit for full history. |
| countries | array | List of ISO 3166-1 alpha-3 country codes to filter (e.g. ["USA","DEU","JPN"]), max 20. Use instead of "country" to fetch multiple countries in one call. |
| start_year | integer | Earliest year to include in the returned time series (e.g. 2015). Omit for full history. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"country": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO 3166-1 alpha-3 country code to filter (e.g. \"USA\", \"DEU\", \"JPN\", \"CHN\"). Omit to return all 190+ countries plus IMF regional/income-group aggregates."
},
"end_year": {
"type": "integer",
"maximum": 2035,
"minimum": 1980,
"description": "Latest year to include, including IMF WEO forward projections (e.g. 2029). Omit for full history."
},
"countries": {
"type": "array",
"items": {
"type": "string",
"maxLength": 3,
"minLength": 3
},
"maxItems": 20,
"description": "List of ISO 3166-1 alpha-3 country codes to filter (e.g. [\"USA\",\"DEU\",\"JPN\"]), max 20. Use instead of \"country\" to fetch multiple countries in one call."
},
"start_year": {
"type": "integer",
"maximum": 2035,
"minimum": 1980,
"description": "Earliest year to include in the returned time series (e.g. 2015). Omit for full history."
}
},
"additionalProperties": false
}Get real GDP growth rate (annual percent change) from the IMF World Economic Outlook (WEO) for one or more countries, including IMF forward projections. Filter by ISO 3166-1 alpha-3 country code(s) and/or a year range; omit filters to get all 190+ countries plus regional/income-group aggregates. Data: IMF DataMapper (www.imf.org), CC BY 4.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| country | string | ISO 3166-1 alpha-3 country code to filter (e.g. "USA", "DEU", "JPN", "CHN"). Omit to return all 190+ countries plus IMF regional/income-group aggregates. |
| end_year | integer | Latest year to include, including IMF WEO forward projections (e.g. 2029). Omit for full history. |
| countries | array | List of ISO 3166-1 alpha-3 country codes to filter (e.g. ["USA","DEU","JPN"]), max 20. Use instead of "country" to fetch multiple countries in one call. |
| start_year | integer | Earliest year to include in the returned time series (e.g. 2015). Omit for full history. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"country": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO 3166-1 alpha-3 country code to filter (e.g. \"USA\", \"DEU\", \"JPN\", \"CHN\"). Omit to return all 190+ countries plus IMF regional/income-group aggregates."
},
"end_year": {
"type": "integer",
"maximum": 2035,
"minimum": 1980,
"description": "Latest year to include, including IMF WEO forward projections (e.g. 2029). Omit for full history."
},
"countries": {
"type": "array",
"items": {
"type": "string",
"maxLength": 3,
"minLength": 3
},
"maxItems": 20,
"description": "List of ISO 3166-1 alpha-3 country codes to filter (e.g. [\"USA\",\"DEU\",\"JPN\"]), max 20. Use instead of \"country\" to fetch multiple countries in one call."
},
"start_year": {
"type": "integer",
"maximum": 2035,
"minimum": 1980,
"description": "Earliest year to include in the returned time series (e.g. 2015). Omit for full history."
}
},
"additionalProperties": false
}Get inflation rate (average consumer prices, annual percent change) from the IMF World Economic Outlook (WEO) for one or more countries, including IMF forward projections. Filter by ISO 3166-1 alpha-3 country code(s) and/or a year range; omit filters to get all 190+ countries plus regional/income-group aggregates. Data: IMF DataMapper (www.imf.org), CC BY 4.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| country | string | ISO 3166-1 alpha-3 country code to filter (e.g. "USA", "DEU", "JPN", "CHN"). Omit to return all 190+ countries plus IMF regional/income-group aggregates. |
| end_year | integer | Latest year to include, including IMF WEO forward projections (e.g. 2029). Omit for full history. |
| countries | array | List of ISO 3166-1 alpha-3 country codes to filter (e.g. ["USA","DEU","JPN"]), max 20. Use instead of "country" to fetch multiple countries in one call. |
| start_year | integer | Earliest year to include in the returned time series (e.g. 2015). Omit for full history. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"country": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO 3166-1 alpha-3 country code to filter (e.g. \"USA\", \"DEU\", \"JPN\", \"CHN\"). Omit to return all 190+ countries plus IMF regional/income-group aggregates."
},
"end_year": {
"type": "integer",
"maximum": 2035,
"minimum": 1980,
"description": "Latest year to include, including IMF WEO forward projections (e.g. 2029). Omit for full history."
},
"countries": {
"type": "array",
"items": {
"type": "string",
"maxLength": 3,
"minLength": 3
},
"maxItems": 20,
"description": "List of ISO 3166-1 alpha-3 country codes to filter (e.g. [\"USA\",\"DEU\",\"JPN\"]), max 20. Use instead of \"country\" to fetch multiple countries in one call."
},
"start_year": {
"type": "integer",
"maximum": 2035,
"minimum": 1980,
"description": "Earliest year to include in the returned time series (e.g. 2015). Omit for full history."
}
},
"additionalProperties": false
}Search real-world wildlife sightings logged by the iNaturalist community, filterable by species (taxon_name or taxon_id), place (place_id from inaturalist.places_search), a lat/lng radius, date range, and data quality grade (research/needs_id/casual). Returns each observation's species guess, taxon info, observed date, location, observer, and photo. Data: iNaturalist.org global citizen-science community, no auth required.
| Argument | Type | Description |
|---|---|---|
| lat | number | Latitude for a radius search. Must be paired with lng. |
| lng | number | Longitude for a radius search. Must be paired with lat. |
| per_page | integer | Number of results to return, 1-20 (default 10). At least one of taxon_name, taxon_id, place_id, or lat/lng is required. |
| place_id | integer | Numeric place id from inaturalist.places_search to filter observations by. |
| taxon_id | integer | Numeric taxon id from inaturalist.taxa_search to filter observations by. |
| radius_km | number | Search radius in kilometers around lat/lng (default 10). |
| taxon_name | string | Scientific or common name to filter observations by, e.g. "Danaus plexippus". |
| quality_grade | string | Filter by data quality: "research" (community-verified ID), "needs_id" (unconfirmed), or "casual" (no photo/no location/captive). |
| observed_after | string | Only include observations on/after this date, ISO 8601 (YYYY-MM-DD). |
| observed_before | string | Only include observations on/before this date, ISO 8601 (YYYY-MM-DD). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude for a radius search. Must be paired with lng."
},
"lng": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude for a radius search. Must be paired with lat."
},
"per_page": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of results to return, 1-20 (default 10). At least one of taxon_name, taxon_id, place_id, or lat/lng is required."
},
"place_id": {
"type": "integer",
"description": "Numeric place id from inaturalist.places_search to filter observations by."
},
"taxon_id": {
"type": "integer",
"description": "Numeric taxon id from inaturalist.taxa_search to filter observations by."
},
"radius_km": {
"type": "number",
"maximum": 500,
"minimum": 0.1,
"description": "Search radius in kilometers around lat/lng (default 10)."
},
"taxon_name": {
"type": "string",
"description": "Scientific or common name to filter observations by, e.g. \"Danaus plexippus\"."
},
"quality_grade": {
"enum": [
"casual",
"needs_id",
"research"
],
"type": "string",
"description": "Filter by data quality: \"research\" (community-verified ID), \"needs_id\" (unconfirmed), or \"casual\" (no photo/no location/captive)."
},
"observed_after": {
"type": "string",
"description": "Only include observations on/after this date, ISO 8601 (YYYY-MM-DD)."
},
"observed_before": {
"type": "string",
"description": "Only include observations on/before this date, ISO 8601 (YYYY-MM-DD)."
}
},
"additionalProperties": false
}Get a biodiversity summary for a place (place_id from inaturalist.places_search): the species most frequently observed there, ranked by observation count, optionally filtered to a taxon group (e.g. only birds) and/or a date range. Useful for surveying local wildlife or flora. Data: iNaturalist.org global citizen-science community, no auth required.
| Argument | Type | Description |
|---|---|---|
| per_page | integer | Number of species to return, ranked by observation count, 1-50 (default 20). |
| place_id* | integer | Numeric place id from inaturalist.places_search to get species counts for. |
| taxon_id | integer | Restrict to descendants of this taxon id, e.g. only birds or only plants. |
| observed_after | string | Only include observations on/after this date, ISO 8601 (YYYY-MM-DD). |
| observed_before | string | Only include observations on/before this date, ISO 8601 (YYYY-MM-DD). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"place_id"
],
"properties": {
"per_page": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of species to return, ranked by observation count, 1-50 (default 20)."
},
"place_id": {
"type": "integer",
"description": "Numeric place id from inaturalist.places_search to get species counts for."
},
"taxon_id": {
"type": "integer",
"description": "Restrict to descendants of this taxon id, e.g. only birds or only plants."
},
"observed_after": {
"type": "string",
"description": "Only include observations on/after this date, ISO 8601 (YYYY-MM-DD)."
},
"observed_before": {
"type": "string",
"description": "Only include observations on/before this date, ISO 8601 (YYYY-MM-DD)."
}
},
"additionalProperties": false
}Look up an iNaturalist place_id by name, e.g. "Berlin" or "Yellowstone National Park", for use with inaturalist.observations_search and inaturalist.species_counts. Returns matching places with their place_id, display name, and place type (e.g. town, county, park). Data: iNaturalist.org global citizen-science community, no auth required.
| Argument | Type | Description |
|---|---|---|
| query* | string | Place name to search for, e.g. "Berlin" or "Yellowstone National Park". |
| per_page | integer | Number of results to return, 1-20 (default 10). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"minLength": 1,
"description": "Place name to search for, e.g. \"Berlin\" or \"Yellowstone National Park\"."
},
"per_page": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of results to return, 1-20 (default 10)."
}
},
"additionalProperties": false
}Look up a species or other taxon by common or scientific name, e.g. "monarch butterfly" or "Quercus". Returns matching taxa with their taxon_id (for use with inaturalist.observations_search and inaturalist.species_counts), taxonomic rank, common name, total observation count, extinct/threatened flags, and a reference photo. Data: iNaturalist.org global citizen-science community, no auth required.
| Argument | Type | Description |
|---|---|---|
| rank | string | Restrict results to a taxonomic rank, e.g. "species", "genus", "family", "order", "class", "kingdom". |
| query* | string | Common or scientific name to search for, e.g. "monarch butterfly" or "Quercus". |
| per_page | integer | Number of results to return, 1-30 (default 10). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"rank": {
"type": "string",
"description": "Restrict results to a taxonomic rank, e.g. \"species\", \"genus\", \"family\", \"order\", \"class\", \"kingdom\"."
},
"query": {
"type": "string",
"minLength": 1,
"description": "Common or scientific name to search for, e.g. \"monarch butterfly\" or \"Quercus\"."
},
"per_page": {
"type": "integer",
"maximum": 30,
"minimum": 1,
"description": "Number of results to return, 1-30 (default 10)."
}
},
"additionalProperties": false
}Fetch data points for one or more Argentine government statistics time series by ID (up to 5 at once), with optional date range and frequency resampling (day/month/quarter/semester/year with avg/sum/end_of_period/min/max aggregation). Covers exchange rates, inflation, employment, and national accounts. Data: apis.datos.gob.ar/series (INDEC), no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of data points to return (1-1000, default 100). |
| collapse | string | Resample the series to this frequency (default: series native frequency). |
| end_date | string | Restrict results to dates on/before this ISO date (YYYY-MM-DD). |
| series_id* | string | Series ID(s) to fetch, comma-separated for up to 5 series (e.g. "168.1_T_CAMBIOR_D_0_0_26"). Find IDs via search_series. |
| start_date | string | Restrict results to dates on/after this ISO date (YYYY-MM-DD). |
| collapse_aggregation | string | Aggregation method used when "collapse" resamples to a lower frequency (default: avg). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"series_id"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Maximum number of data points to return (1-1000, default 100)."
},
"collapse": {
"enum": [
"day",
"month",
"quarter",
"semester",
"year"
],
"type": "string",
"description": "Resample the series to this frequency (default: series native frequency)."
},
"end_date": {
"type": "string",
"description": "Restrict results to dates on/before this ISO date (YYYY-MM-DD)."
},
"series_id": {
"type": "string",
"minLength": 1,
"description": "Series ID(s) to fetch, comma-separated for up to 5 series (e.g. \"168.1_T_CAMBIOR_D_0_0_26\"). Find IDs via search_series."
},
"start_date": {
"type": "string",
"description": "Restrict results to dates on/after this ISO date (YYYY-MM-DD)."
},
"collapse_aggregation": {
"enum": [
"avg",
"sum",
"end_of_period",
"min",
"max"
],
"type": "string",
"description": "Aggregation method used when \"collapse\" resamples to a lower frequency (default: avg)."
}
},
"additionalProperties": false
}Search the Argentine government catalog of economic and social statistics time series by keyword (e.g. "desempleo", "inflacion", "tipo de cambio"). Returns matching series IDs, titles, units, frequency, and date coverage. Data: apis.datos.gob.ar/series (Subsecretaría de Programación Macroeconómica / INDEC), no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of matching series to return (1-50, default 10). |
| query* | string | Keyword to search the time series catalog (e.g. "desempleo", "inflacion", "tipo de cambio"). Spanish terms work best — this is an Argentine government dataset. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of matching series to return (1-50, default 10)."
},
"query": {
"type": "string",
"minLength": 1,
"description": "Keyword to search the time series catalog (e.g. \"desempleo\", \"inflacion\", \"tipo de cambio\"). Spanish terms work best — this is an Argentine government dataset."
}
},
"additionalProperties": false
}Search Argentina's second-level administrative divisions (departments/partidos) by name, optionally scoped to a province. Returns id, name, parent province, and centroid coordinates. Data: apis.datos.gob.ar/georef (INDEC), no auth required.
| Argument | Type | Description |
|---|---|---|
| max | integer | Maximum number of departments to return (1-50, default 10). |
| query | string | Filter departments by name substring, case-insensitive (e.g. "capital"). |
| provincia | string | Restrict results to a province, by name or id (e.g. "Córdoba" or "14"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"max": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of departments to return (1-50, default 10)."
},
"query": {
"type": "string",
"description": "Filter departments by name substring, case-insensitive (e.g. \"capital\")."
},
"provincia": {
"type": "string",
"description": "Restrict results to a province, by name or id (e.g. \"Córdoba\" or \"14\")."
}
},
"additionalProperties": false
}Search Argentine localities (cities/towns) by name, optionally scoped to a province. Returns id, name, category, parent province/department/municipality, and centroid coordinates. Data: apis.datos.gob.ar/georef (INDEC), no auth required.
| Argument | Type | Description |
|---|---|---|
| max | integer | Maximum number of localities to return (1-50, default 10). |
| query* | string | Locality (city/town) name to search for, case-insensitive (e.g. "Palermo"). |
| provincia | string | Restrict results to a province, by name or id (e.g. "Santa Fe" or "82"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"max": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of localities to return (1-50, default 10)."
},
"query": {
"type": "string",
"minLength": 1,
"description": "Locality (city/town) name to search for, case-insensitive (e.g. \"Palermo\")."
},
"provincia": {
"type": "string",
"description": "Restrict results to a province, by name or id (e.g. \"Santa Fe\" or \"82\")."
}
},
"additionalProperties": false
}List or search Argentina's 24 provinces (incl. Ciudad Autónoma de Buenos Aires) by name. Returns id, name, and centroid coordinates for each. Data: apis.datos.gob.ar/georef (INDEC), no auth required.
| Argument | Type | Description |
|---|---|---|
| max | integer | Maximum number of provinces to return (1-50, default 10). |
| query | string | Filter provinces by name substring, case-insensitive (e.g. "buenos" for Buenos Aires). Omit to list all 24 provinces (incl. CABA). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"max": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of provinces to return (1-50, default 10)."
},
"query": {
"type": "string",
"description": "Filter provinces by name substring, case-insensitive (e.g. \"buenos\" for Buenos Aires). Omit to list all 24 provinces (incl. CABA)."
}
},
"additionalProperties": false
}Forward geocode an Argentine street address (e.g. "Av Corrientes 1000") to matching locations with lat/lon coordinates, street name/number, province, department, and locality. Returns multiple candidates when the address matches more than one place nationwide. Data: apis.datos.gob.ar/georef (INDEC — Instituto Nacional de Estadística y Censos), no auth required.
| Argument | Type | Description |
|---|---|---|
| max | integer | Maximum number of address matches to return (1-50, default 10). |
| address* | string | Argentine street address to geocode, street name + house number (e.g. "Av Corrientes 1000"). Returns matching addresses with lat/lon and administrative location. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"address"
],
"properties": {
"max": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of address matches to return (1-50, default 10)."
},
"address": {
"type": "string",
"minLength": 1,
"description": "Argentine street address to geocode, street name + house number (e.g. \"Av Corrientes 1000\"). Returns matching addresses with lat/lon and administrative location."
}
},
"additionalProperties": false
}Reverse geocode a lat/lon coordinate pair within Argentina to its administrative location — province, department, and municipality. Data: apis.datos.gob.ar/georef (INDEC), no auth required.
| Argument | Type | Description |
|---|---|---|
| lat* | number | Latitude in decimal degrees (e.g. -34.6). |
| lon* | number | Longitude in decimal degrees (e.g. -58.45). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude in decimal degrees (e.g. -34.6)."
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude in decimal degrees (e.g. -58.45)."
}
},
"additionalProperties": false
}Search or list Chilean SIMEL (labour-market information system) dataflows — the ~204 official indicator series covering employment, unemployment, wages, pensions, and gender gaps, split by demographic and geographic breakdowns. Filter by name/id with query, or omit to list all. Use the returned dataflow_id with ine-chile.structure and ine-chile.data. Data: sdmx.ine.gob.cl (INE Chile SDMX API), no auth required.
| Argument | Type | Description |
|---|---|---|
| query | string | Filter dataflows by name or id substring, case-insensitive (e.g. "desocup" for unemployment, "sexo" for gender-split indicators). Omit to list all ~204 available dataflows. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"query": {
"type": "string",
"description": "Filter dataflows by name or id substring, case-insensitive (e.g. \"desocup\" for unemployment, \"sexo\" for gender-split indicators). Omit to list all ~204 available dataflows."
}
},
"additionalProperties": false
}Get the dimensions and valid codes for a Chilean SIMEL dataflow_id (e.g. "DF_NOCU_SEXO") — area, frequency, indicator, and breakdown dimensions (sex, age, region, etc.) each with their code list. Use this to interpret the dimension labels returned by ine-chile.data. Data: sdmx.ine.gob.cl (INE Chile SDMX API), no auth required.
| Argument | Type | Description |
|---|---|---|
| dataflow_id* | string | SIMEL dataflow id, from ine-chile.dataflows (e.g. "DF_NOCU_SEXO"). Returns the dimension list (e.g. AREA_REF, FREQ, INDICADOR, SEXO) with each dimension's valid codes — needed to interpret ine-chile.data results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"dataflow_id"
],
"properties": {
"dataflow_id": {
"type": "string",
"minLength": 1,
"description": "SIMEL dataflow id, from ine-chile.dataflows (e.g. \"DF_NOCU_SEXO\"). Returns the dimension list (e.g. AREA_REF, FREQ, INDICADOR, SEXO) with each dimension's valid codes — needed to interpret ine-chile.data results."
}
},
"additionalProperties": false
}Get observation values for a Chilean SIMEL dataflow_id (e.g. "DF_NOCU_SEXO" for employed persons by sex). Filter by last_n_observations (most recent N per series, default 10, max 100) or a start_period/end_period range (e.g. "2020", "2020-01"). Each series is labeled with its dimension values (sex, region, etc.) and a list of period/value pairs. Data: sdmx.ine.gob.cl (INE Chile SDMX API), no auth required.
| Argument | Type | Description |
|---|---|---|
| end_period | string | End of period range, e.g. "2024" (annual) or "2024-12" (monthly). Takes precedence over last_n_observations when set. |
| dataflow_id* | string | SIMEL dataflow id, from ine-chile.dataflows (e.g. "DF_NOCU_SEXO"). |
| start_period | string | Start of period range, e.g. "2020" (annual) or "2020-01" (monthly). Takes precedence over last_n_observations when set. |
| last_n_observations | integer | Return only the most recent N observations per series (max 100, default 10). Ignored if start_period or end_period is set. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"dataflow_id"
],
"properties": {
"end_period": {
"type": "string",
"description": "End of period range, e.g. \"2024\" (annual) or \"2024-12\" (monthly). Takes precedence over last_n_observations when set."
},
"dataflow_id": {
"type": "string",
"minLength": 1,
"description": "SIMEL dataflow id, from ine-chile.dataflows (e.g. \"DF_NOCU_SEXO\")."
},
"start_period": {
"type": "string",
"description": "Start of period range, e.g. \"2020\" (annual) or \"2020-01\" (monthly). Takes precedence over last_n_observations when set."
},
"last_n_observations": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Return only the most recent N observations per series (max 100, default 10). Ignored if start_period or end_period is set."
}
},
"additionalProperties": false
}Get observation data for a Statistics Portugal (INE) indicator by its 7-digit varcd code (e.g. "0008273" for resident population by NUTS region, sex and age group). Optionally filter by up to 6 generic dimensions (Dim1 is usually the reference period, the rest are indicator-specific, e.g. geography/sex/age) — get valid codes first from ine-portugal.indicator_metadata. There is no upstream search/catalog endpoint, so the varcd must already be known. Data: www.ine.pt (Statistics Portugal open JSON indicator API), no auth required.
| Argument | Type | Description |
|---|---|---|
| dim1 | string | Filter code for Dimension 1 (usually the reference period, e.g. "S7A2023" for year 2023 or "2023" depending on the indicator). Get valid codes from ine-portugal.indicator_metadata before calling. Omit to fetch data across all periods. |
| dim2 | string | Filter code for Dimension 2 (indicator-specific, e.g. a NUTS geography code). Get valid codes from ine-portugal.indicator_metadata. Omit to include all values of this dimension. |
| dim3 | string | Filter code for Dimension 3 (indicator-specific, e.g. sex). Get valid codes from ine-portugal.indicator_metadata. Omit to include all values of this dimension. |
| dim4 | string | Filter code for Dimension 4 (indicator-specific, e.g. age group). Get valid codes from ine-portugal.indicator_metadata. Omit to include all values of this dimension. |
| dim5 | string | Filter code for Dimension 5, if the indicator has one. Get valid codes from ine-portugal.indicator_metadata. Omit to include all values of this dimension. |
| dim6 | string | Filter code for Dimension 6, if the indicator has one. Get valid codes from ine-portugal.indicator_metadata. Omit to include all values of this dimension. |
| lang | string | Response language for labels: "EN" (English, default) or "PT" (Portuguese). |
| varcd* | string | INE (Statistics Portugal) 7-digit indicator code, zero-padded (e.g. "0008273" for resident population by NUTS/sex/age group). There is no upstream search/catalog endpoint — find valid codes via the official INE indicator database (www.ine.pt/xportal) or ine-portugal.indicator_metadata once you have a code. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"varcd"
],
"properties": {
"dim1": {
"type": "string",
"description": "Filter code for Dimension 1 (usually the reference period, e.g. \"S7A2023\" for year 2023 or \"2023\" depending on the indicator). Get valid codes from ine-portugal.indicator_metadata before calling. Omit to fetch data across all periods."
},
"dim2": {
"type": "string",
"description": "Filter code for Dimension 2 (indicator-specific, e.g. a NUTS geography code). Get valid codes from ine-portugal.indicator_metadata. Omit to include all values of this dimension."
},
"dim3": {
"type": "string",
"description": "Filter code for Dimension 3 (indicator-specific, e.g. sex). Get valid codes from ine-portugal.indicator_metadata. Omit to include all values of this dimension."
},
"dim4": {
"type": "string",
"description": "Filter code for Dimension 4 (indicator-specific, e.g. age group). Get valid codes from ine-portugal.indicator_metadata. Omit to include all values of this dimension."
},
"dim5": {
"type": "string",
"description": "Filter code for Dimension 5, if the indicator has one. Get valid codes from ine-portugal.indicator_metadata. Omit to include all values of this dimension."
},
"dim6": {
"type": "string",
"description": "Filter code for Dimension 6, if the indicator has one. Get valid codes from ine-portugal.indicator_metadata. Omit to include all values of this dimension."
},
"lang": {
"enum": [
"EN",
"PT"
],
"type": "string",
"description": "Response language for labels: \"EN\" (English, default) or \"PT\" (Portuguese)."
},
"varcd": {
"type": "string",
"pattern": "^\\d{1,7}$",
"maxLength": 7,
"minLength": 1,
"description": "INE (Statistics Portugal) 7-digit indicator code, zero-padded (e.g. \"0008273\" for resident population by NUTS/sex/age group). There is no upstream search/catalog endpoint — find valid codes via the official INE indicator database (www.ine.pt/xportal) or ine-portugal.indicator_metadata once you have a code."
}
},
"additionalProperties": false
}Get metadata for a Statistics Portugal (INE) indicator by its 7-digit varcd code: full name, periodicity, unit, decimal precision, first/last available period, and every dimension with its valid filter codes. Call this BEFORE ine-portugal.indicator_data to discover which Dim1..Dim6 codes are valid for the indicator. Data: www.ine.pt (Statistics Portugal open JSON indicator API), no auth required.
| Argument | Type | Description |
|---|---|---|
| lang | string | Response language for labels: "EN" (English, default) or "PT" (Portuguese). |
| varcd* | string | INE (Statistics Portugal) 7-digit indicator code, zero-padded (e.g. "0008273"). Returns the indicator name, periodicity, unit, first/last available period, and every dimension with its valid filter codes — call this BEFORE ine-portugal.indicator_data to discover valid Dim1..Dim6 values. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"varcd"
],
"properties": {
"lang": {
"enum": [
"EN",
"PT"
],
"type": "string",
"description": "Response language for labels: \"EN\" (English, default) or \"PT\" (Portuguese)."
},
"varcd": {
"type": "string",
"pattern": "^\\d{1,7}$",
"maxLength": 7,
"minLength": 1,
"description": "INE (Statistics Portugal) 7-digit indicator code, zero-padded (e.g. \"0008273\"). Returns the indicator name, periodicity, unit, first/last available period, and every dimension with its valid filter codes — call this BEFORE ine-portugal.indicator_data to discover valid Dim1..Dim6 values."
}
},
"additionalProperties": false
}Browse the catalog of 109 published Spanish official statistical operations (e.g. IPC = Consumer Price Index, EPA = Labour Force Survey). Optional search filters by name substring. Returns operation_code for use in ine-spain.tables. Data: servicios.ine.es (Instituto Nacional de Estadística Tempus3 API), no auth required.
| Argument | Type | Description |
|---|---|---|
| lang | string | Response language: ES (Spanish, default) or EN (English). |
| search | string | Case-insensitive substring to filter operations by name, e.g. "precios" or "population". Omit to list all 109 published operations. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"lang": {
"enum": [
"ES",
"EN"
],
"type": "string",
"description": "Response language: ES (Spanish, default) or EN (English)."
},
"search": {
"type": "string",
"description": "Case-insensitive substring to filter operations by name, e.g. \"precios\" or \"population\". Omit to list all 109 published operations."
}
},
"additionalProperties": false
}List the published data tables under a Spanish statistical operation (operation_code from ine-spain.operations, e.g. "IPC" or "EPA"). Returns table_id, name, and covered period for use in ine-spain.table_data. Data: servicios.ine.es (INE Tempus3 API), no auth required.
| Argument | Type | Description |
|---|---|---|
| lang | string | Response language: ES (Spanish, default) or EN (English). |
| operation_code* | string | Operation code from ine-spain.operations, e.g. "IPC" (Consumer Price Index) or "EPA" (Labour Force Survey). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"operation_code"
],
"properties": {
"lang": {
"enum": [
"ES",
"EN"
],
"type": "string",
"description": "Response language: ES (Spanish, default) or EN (English)."
},
"operation_code": {
"enum": [
"ADRH",
"ANES",
"APEL",
"CCM",
"CDMGE",
"CMEA",
"CNE",
"CNEAG",
"CNTR2000",
"CNTR2008",
"CNTR2010",
"CODEM",
"CONA",
"CONM",
"CP",
"CTNFSI",
"DIR",
"DPOD",
"DPOH",
"DPOP",
"EACL",
"EAES",
"EAES:Q",
"ECM",
"ECP",
"ECSE",
"ECV",
"ECVG",
"EDES",
"EEE:COM",
"EEE:IND",
"EEE:SER",
"EFPA",
"EG",
"EH",
"EI",
"EIAP",
"EJP",
"EM",
"EMCR",
"EMLG",
"EMN",
"ENSD",
"EOA",
"EOAC",
"EOAP",
"EOH",
"EOT",
"EOTR",
"EPA",
"EPC",
"EPF",
"EPOBA",
"EPOBC",
"EPOBL",
"ETCL",
"ETDP",
"ETR",
"FR",
"GDRE",
"GDVE",
"HPT",
"IAS",
"ICE",
"ICES",
"ICLA",
"ICM",
"ICN",
"ICNE",
"IDB",
"IEP",
"IGC",
"IIH",
"IMCV",
"IMM",
"IPAC",
"IPAP",
"IPC",
"IPCA",
"IPCO",
"IPH",
"IPI",
"IPRI",
"IPRX-M",
"IPS",
"IPSS",
"IPT",
"IPTR",
"IPV",
"IPVA",
"IRSH",
"MMOV",
"MNPD",
"MNPM",
"MNPN",
"MOS",
"MYH",
"OAT",
"PERE",
"SM",
"STEC",
"TF",
"TM",
"TMOV",
"TNOM",
"TV",
"UA",
"VGD",
"VTE"
],
"type": "string",
"description": "Operation code from ine-spain.operations, e.g. \"IPC\" (Consumer Price Index) or \"EPA\" (Labour Force Survey)."
}
},
"additionalProperties": false
}Get up to 100 most-recent data points plus rich metadata (period name, provisional flag) for ONE specific series (series_code, e.g. "IPC251856" — from an ine-spain.table_data result COD field or the INE website). An unrecognized series_code returns an empty upstream response. Data: servicios.ine.es (INE Tempus3 API), no auth required.
| Argument | Type | Description |
|---|---|---|
| lang | string | Response language: ES (Spanish, default) or EN (English). |
| periods | integer | Number of most-recent periods to return, 1-100 (default 12). |
| series_code* | string | Series code, e.g. "IPC251856" (from a table_data result COD field, or the INE website). An unrecognized code returns an empty response. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"series_code"
],
"properties": {
"lang": {
"enum": [
"ES",
"EN"
],
"type": "string",
"description": "Response language: ES (Spanish, default) or EN (English)."
},
"periods": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of most-recent periods to return, 1-100 (default 12)."
},
"series_code": {
"type": "string",
"minLength": 1,
"description": "Series code, e.g. \"IPC251856\" (from a table_data result COD field, or the INE website). An unrecognized code returns an empty response."
}
},
"additionalProperties": false
}Get the most-recent data points (1-6 periods, default 1) for EVERY series in a table (table_id from ine-spain.tables). Tables can bundle hundreds of series, so periods is capped tightly — use ine-spain.series_data for a longer single-series history. Data: servicios.ine.es (INE Tempus3 API), no auth required.
| Argument | Type | Description |
|---|---|---|
| lang | string | Response language: ES (Spanish, default) or EN (English). |
| periods | integer | Number of most-recent periods to return per series, 1-6 (default 1). Tables can bundle hundreds of series, so this is capped tightly to stay under the response size limit — use ine-spain.series_data for a longer single-series history. |
| table_id* | integer | Numeric table id from ine-spain.tables, e.g. 24077 for the national CPI index table. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"table_id"
],
"properties": {
"lang": {
"enum": [
"ES",
"EN"
],
"type": "string",
"description": "Response language: ES (Spanish, default) or EN (English)."
},
"periods": {
"type": "integer",
"maximum": 6,
"minimum": 1,
"description": "Number of most-recent periods to return per series, 1-6 (default 1). Tables can bundle hundreds of series, so this is capped tightly to stay under the response size limit — use ine-spain.series_data for a longer single-series history."
},
"table_id": {
"type": "integer",
"description": "Numeric table id from ine-spain.tables, e.g. 24077 for the national CPI index table."
}
},
"additionalProperties": false
}Search or list Spanish INE (national statistics institute) statistical operations — the top-level catalog of official series like IPC (Consumer Price Index), EPA (Labour Force Survey), or population census. Filter by name/code with query, or omit to list all ~110 available operations. Use the returned operation code with ine.tables. Data: servicios.ine.es (INE Tempus3 API), no auth required.
| Argument | Type | Description |
|---|---|---|
| query | string | Filter operations by name or short code substring, case-insensitive (e.g. "IPC", "empleo", "población"). Omit to list all ~110 available operations. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"query": {
"type": "string",
"description": "Filter operations by name or short code substring, case-insensitive (e.g. \"IPC\", \"empleo\", \"población\"). Omit to list all ~110 available operations."
}
},
"additionalProperties": false
}List the published data tables for a Spanish INE statistical operation (e.g. "IPC", "EPA"), including periodicity, publication name, and start period. Use an operation_code from ine.operations. Data: servicios.ine.es (INE Tempus3 API), no auth required.
| Argument | Type | Description |
|---|---|---|
| operation_code* | string | Short code of the statistical operation, from ine.operations (e.g. "IPC" for Consumer Price Index, "EPA" for Labour Force Survey). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"operation_code"
],
"properties": {
"operation_code": {
"type": "string",
"minLength": 1,
"description": "Short code of the statistical operation, from ine.operations (e.g. \"IPC\" for Consumer Price Index, \"EPA\" for Labour Force Survey)."
}
},
"additionalProperties": false
}Get observation values for a Spanish INE time series by its series_code — e.g. IPC206449 for the national CPI monthly change. Filter by last_n (most recent N observations, default 10, max 100) or a start_date/end_date range (YYYYMMDD). Values include the period label, year, and whether the observation is provisional or final. Data: servicios.ine.es (INE Tempus3 API), no auth required.
| Argument | Type | Description |
|---|---|---|
| last_n | integer | Return only the most recent N observations (max 100, default 10). Ignored if start_date or end_date is set. |
| end_date | string | End of date range, format YYYYMMDD (e.g. "20231231"). Takes precedence over last_n. |
| start_date | string | Start of date range, format YYYYMMDD (e.g. "20200101"). Takes precedence over last_n. |
| series_code* | string | INE series code (e.g. "IPC206449" for the national CPI monthly change series). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"series_code"
],
"properties": {
"last_n": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Return only the most recent N observations (max 100, default 10). Ignored if start_date or end_date is set."
},
"end_date": {
"type": "string",
"pattern": "^\\d{8}$",
"description": "End of date range, format YYYYMMDD (e.g. \"20231231\"). Takes precedence over last_n."
},
"start_date": {
"type": "string",
"pattern": "^\\d{8}$",
"description": "Start of date range, format YYYYMMDD (e.g. \"20200101\"). Takes precedence over last_n."
},
"series_code": {
"type": "string",
"minLength": 1,
"description": "INE series code (e.g. \"IPC206449\" for the national CPI monthly change series)."
}
},
"additionalProperties": false
}Get metadata for a Spanish INE time series by its series_code — name, decimals, periodicity (monthly/quarterly/annual), parent operation, and publication. Data: servicios.ine.es (INE Tempus3 API), no auth required.
| Argument | Type | Description |
|---|---|---|
| series_code* | string | INE series code (e.g. "IPC206449" for the national CPI monthly change series). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"series_code"
],
"properties": {
"series_code": {
"type": "string",
"minLength": 1,
"description": "INE series code (e.g. \"IPC206449\" for the national CPI monthly change series)."
}
},
"additionalProperties": false
}⚡ ACTION: Create a managed headless browser session on Browserbase infrastructure. Returns session ID and WebSocket connect URL for Puppeteer/Playwright. Choose region (US/EU/Asia) and optional residential proxy. Sessions auto-expire after 5 minutes of inactivity (Browserbase)
| Argument | Type | Description |
|---|---|---|
| proxy | boolean | Use residential proxy for the session (default false) |
| region | string | Browser region (default us-west-2) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"proxy": {
"type": "boolean",
"description": "Use residential proxy for the session (default false)"
},
"region": {
"enum": [
"us-west-2",
"us-east-1",
"eu-central-1",
"ap-southeast-1"
],
"type": "string",
"description": "Browser region (default us-west-2)"
}
},
"additionalProperties": false
}List active or recent browser sessions — filter by status (running, completed, error). Returns session IDs, regions, start times (Browserbase)
| Argument | Type | Description |
|---|---|---|
| status | string | Filter by session status (default RUNNING) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"status": {
"enum": [
"RUNNING",
"ERROR",
"TIMED_OUT",
"COMPLETED"
],
"type": "string",
"description": "Filter by session status (default RUNNING)"
}
},
"additionalProperties": false
}Get files downloaded during a browser session — screenshots, PDFs, extracted data (Browserbase)
| Argument | Type | Description |
|---|---|---|
| session_id* | string | Session ID to get downloads/content from |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"session_id"
],
"properties": {
"session_id": {
"type": "string",
"minLength": 1,
"description": "Session ID to get downloads/content from"
}
},
"additionalProperties": false
}Check the status of a Browserbase session — running, completed, error, timed out. Returns CPU usage, memory, proxy bytes, start/end times (Browserbase)
| Argument | Type | Description |
|---|---|---|
| session_id* | string | Browserbase session ID (from create_session result) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"session_id"
],
"properties": {
"session_id": {
"type": "string",
"minLength": 1,
"description": "Browserbase session ID (from create_session result)"
}
},
"additionalProperties": false
}⚡ ACTION: Create a new DNS record (A, AAAA, CNAME, MX, TXT) for a Cloudflare zone. Set content (IP/hostname), TTL, and CDN proxy status. Returns new record ID (Cloudflare)
| Argument | Type | Description |
|---|---|---|
| ttl | integer | TTL in seconds (1 = automatic, 60-86400 for manual) |
| name* | string | Record name — subdomain or "@" for root (e.g. "www", "api", "@") |
| type* | string | DNS record type |
| content* | string | Record value — IP address for A/AAAA, hostname for CNAME, text for TXT |
| proxied | boolean | Enable Cloudflare CDN proxy (default false). True = orange cloud, hides origin IP |
| zone_id* | string | Cloudflare Zone ID |
| priority | integer | Priority for MX records (e.g. 10, 20) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"zone_id",
"type",
"name",
"content"
],
"properties": {
"ttl": {
"type": "integer",
"description": "TTL in seconds (1 = automatic, 60-86400 for manual)"
},
"name": {
"type": "string",
"minLength": 1,
"description": "Record name — subdomain or \"@\" for root (e.g. \"www\", \"api\", \"@\")"
},
"type": {
"enum": [
"A",
"AAAA",
"CNAME",
"MX",
"TXT",
"NS",
"SRV",
"CAA"
],
"type": "string",
"description": "DNS record type"
},
"content": {
"type": "string",
"minLength": 1,
"description": "Record value — IP address for A/AAAA, hostname for CNAME, text for TXT"
},
"proxied": {
"type": "boolean",
"description": "Enable Cloudflare CDN proxy (default false). True = orange cloud, hides origin IP"
},
"zone_id": {
"type": "string",
"minLength": 1,
"description": "Cloudflare Zone ID"
},
"priority": {
"type": "integer",
"description": "Priority for MX records (e.g. 10, 20)"
}
},
"additionalProperties": false
}⚡ ACTION: Delete a DNS record from a Cloudflare zone by record ID. Removes the record immediately (Cloudflare)
| Argument | Type | Description |
|---|---|---|
| zone_id* | string | Cloudflare Zone ID |
| record_id* | string | DNS record ID to delete (from dns_list results) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"zone_id",
"record_id"
],
"properties": {
"zone_id": {
"type": "string",
"minLength": 1,
"description": "Cloudflare Zone ID"
},
"record_id": {
"type": "string",
"minLength": 1,
"description": "DNS record ID to delete (from dns_list results)"
}
},
"additionalProperties": false
}List all DNS records for a Cloudflare zone — A, AAAA, CNAME, MX, TXT, NS records with name, content, TTL, proxy status. Filter by type or name (Cloudflare)
| Argument | Type | Description |
|---|---|---|
| name | string | Filter by record name (e.g. "www.example.com") |
| type | string | Filter by record type |
| limit | integer | Results per page (default 50, max 100) |
| zone_id* | string | Cloudflare Zone ID (from zones_list results) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"zone_id"
],
"properties": {
"name": {
"type": "string",
"description": "Filter by record name (e.g. \"www.example.com\")"
},
"type": {
"enum": [
"A",
"AAAA",
"CNAME",
"MX",
"TXT",
"NS",
"SRV",
"CAA"
],
"type": "string",
"description": "Filter by record type"
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Results per page (default 50, max 100)"
},
"zone_id": {
"type": "string",
"minLength": 1,
"description": "Cloudflare Zone ID (from zones_list results)"
}
},
"additionalProperties": false
}⚡ ACTION: Purge Cloudflare CDN cache — all cached files or specific URLs (max 30). Forces CDN to fetch fresh content from origin server (Cloudflare)
| Argument | Type | Description |
|---|---|---|
| files | array | Specific URLs to purge (max 30) |
| zone_id* | string | Cloudflare Zone ID |
| purge_everything | boolean | Purge all cached files (default false) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"zone_id"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "string",
"format": "uri"
},
"description": "Specific URLs to purge (max 30)"
},
"zone_id": {
"type": "string",
"minLength": 1,
"description": "Cloudflare Zone ID"
},
"purge_everything": {
"type": "boolean",
"description": "Purge all cached files (default false)"
}
},
"additionalProperties": false
}Traffic analytics for a Cloudflare zone — total requests, cached vs uncached, bandwidth, threats blocked, page views. Supports custom time ranges (last 24h, 7 days, etc.) (Cloudflare)
| Argument | Type | Description |
|---|---|---|
| since | integer | Minutes ago to start from (e.g. -1440 for last 24h, -10080 for last 7 days) |
| zone_id* | string | Cloudflare Zone ID |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"zone_id"
],
"properties": {
"since": {
"type": "integer",
"description": "Minutes ago to start from (e.g. -1440 for last 24h, -10080 for last 7 days)"
},
"zone_id": {
"type": "string",
"minLength": 1,
"description": "Cloudflare Zone ID"
}
},
"additionalProperties": false
}List all domains (zones) managed in Cloudflare — zone ID, domain name, status (active/pending), plan, nameservers. Filter by domain name or status. Zone ID needed for all other Cloudflare tools (Cloudflare)
| Argument | Type | Description |
|---|---|---|
| name | string | Filter by domain name (e.g. "example.com") |
| limit | integer | Results per page (default 20, max 50) |
| status | string | Filter by zone status |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"name": {
"type": "string",
"description": "Filter by domain name (e.g. \"example.com\")"
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Results per page (default 20, max 50)"
},
"status": {
"enum": [
"active",
"pending",
"initializing",
"moved",
"deleted"
],
"type": "string",
"description": "Filter by zone status"
}
},
"additionalProperties": false
}Retrieve the official record of a French legal unit (company, association, sole trader) from the INSEE Sirene national registry using its 9-digit SIREN identifier. Returns the current company name, acronym, administrative status (active/ceased), NAF/APE activity code, legal category code, creation date, company-size band (TPE/PME/ETI/GE), and head-office NIC. The Sirene database covers all ~30M French legal units registered since 1973, updated daily. Use insee.establishment.by_siret for physical address and site-level details, or insee.company.search to find companies by name or activity code.
| Argument | Type | Description |
|---|---|---|
| siren* | string | SIREN company identifier — exactly 9 digits (e.g. 552081317 for EDF). Spaces are stripped automatically. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"siren"
],
"properties": {
"siren": {
"type": "string",
"pattern": "^\\d{9}$",
"description": "SIREN company identifier — exactly 9 digits (e.g. 552081317 for EDF). Spaces are stripped automatically."
}
},
"additionalProperties": false
}Search French legal units (companies, associations, sole traders) in the INSEE Sirene national registry using a Lucene-style filter query. Supports filtering by company name (denominationUniteLegale), NAF activity code (activitePrincipaleUniteLegale, e.g. "62.01Z" for software publishing), administrative status (etatAdministratifUniteLegale: A=active, C=ceased), and legal category code (categorieJuridiqueUniteLegale, e.g. 5710 for SA). Combine clauses with AND / OR operators. Returns SIREN, name, acronym, status, NAF code, legal category, and creation date for each matching company. Use insee.company.by_siren to retrieve full details for a specific SIREN number.
| Argument | Type | Description |
|---|---|---|
| q* | string | Lucene-style filter expression on legal-unit fields. Examples: "denominationUniteLegale:AIRBUS" searches by company name; "activitePrincipaleUniteLegale:62.01Z" searches by NAF activity code; "etatAdministratifUniteLegale:A" returns only active companies (A=active, C=ceased); "categorieJuridiqueUniteLegale:5710" searches by legal category code. Combine with AND / OR operators. |
| max | integer | Maximum number of results to return (1–20, default 10). |
| offset | integer | Zero-based starting offset for pagination (default 0). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Lucene-style filter expression on legal-unit fields. Examples: \"denominationUniteLegale:AIRBUS\" searches by company name; \"activitePrincipaleUniteLegale:62.01Z\" searches by NAF activity code; \"etatAdministratifUniteLegale:A\" returns only active companies (A=active, C=ceased); \"categorieJuridiqueUniteLegale:5710\" searches by legal category code. Combine with AND / OR operators."
},
"max": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Maximum number of results to return (1–20, default 10)."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Zero-based starting offset for pagination (default 0)."
}
},
"additionalProperties": false
}Retrieve the official record of a French establishment (physical site/branch) from the INSEE Sirene registry using its 14-digit SIRET number (SIREN + NIC). Returns the establishment status (active/closed), NAF activity code, creation date, full postal address (street, postal code, city), head-office flag, and the parent company (legal unit) record. The Sirene database covers ~40M French establishments; address data is geocoded by INSEE. Use insee.company.by_siren to look up only the parent company, or insee.establishment.search to find establishments by postal code or city.
| Argument | Type | Description |
|---|---|---|
| siret* | string | SIRET establishment identifier — exactly 14 digits (SIREN + NIC, e.g. 55208131766522). Spaces are stripped automatically. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"siret"
],
"properties": {
"siret": {
"type": "string",
"pattern": "^\\d{14}$",
"description": "SIRET establishment identifier — exactly 14 digits (SIREN + NIC, e.g. 55208131766522). Spaces are stripped automatically."
}
},
"additionalProperties": false
}Search French establishments (physical sites, branches, stores) in the INSEE Sirene registry using a Lucene-style filter query. Supports filtering by postal code (codePostalEtablissement, e.g. "75008"), city name (libelleCommuneEtablissement, e.g. "PARIS"), NAF activity code (activitePrincipaleEtablissement, e.g. "47.11B" for supermarkets), status (etatAdministratifEtablissement: A=active, F=closed), and parent company name (denominationUniteLegale). Combine clauses with AND / OR operators. Returns SIRET, address, status, NAF code, head-office flag, and parent company summary for each matching establishment. Use insee.establishment.by_siret to retrieve full details for a specific SIRET.
| Argument | Type | Description |
|---|---|---|
| q* | string | Lucene-style filter expression on establishment fields. Examples: "codePostalEtablissement:75008" searches by French postal code; "libelleCommuneEtablissement:PARIS" searches by city name; "activitePrincipaleEtablissement:47.11B" searches by NAF activity code; "etatAdministratifEtablissement:A" returns only active establishments (A=active, F=closed); "denominationUniteLegale:CARREFOUR" filters by parent company name. Combine with AND / OR operators. |
| max | integer | Maximum number of results to return (1–20, default 10). |
| offset | integer | Zero-based starting offset for pagination (default 0). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Lucene-style filter expression on establishment fields. Examples: \"codePostalEtablissement:75008\" searches by French postal code; \"libelleCommuneEtablissement:PARIS\" searches by city name; \"activitePrincipaleEtablissement:47.11B\" searches by NAF activity code; \"etatAdministratifEtablissement:A\" returns only active establishments (A=active, F=closed); \"denominationUniteLegale:CARREFOUR\" filters by parent company name. Combine with AND / OR operators."
},
"max": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Maximum number of results to return (1–20, default 10)."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Zero-based starting offset for pagination (default 0)."
}
},
"additionalProperties": false
}Look up multiple IP addresses in one call (max 100) — country, city, VPN/Tor/proxy flags, ASN, and organization for each IP (ipapi.is)
| Argument | Type | Description |
|---|---|---|
| ips* | array | Array of IPv4/IPv6 addresses to look up in bulk (max 100 per request) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"ips"
],
"properties": {
"ips": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 100,
"minItems": 1,
"description": "Array of IPv4/IPv6 addresses to look up in bulk (max 100 per request)"
}
},
"additionalProperties": false
}Look up any IP address — geolocation (country, city, coordinates), 9 security flags (VPN, Tor, proxy, datacenter, abuser, crawler, bogon, mobile, satellite), ASN, company info, abuse contacts (ipapi.is)
| Argument | Type | Description |
|---|---|---|
| ip* | string | IPv4 or IPv6 address to look up (e.g. "8.8.8.8", "2001:4860:4860::8888") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"ip"
],
"properties": {
"ip": {
"type": "string",
"description": "IPv4 or IPv6 address to look up (e.g. \"8.8.8.8\", \"2001:4860:4860::8888\")"
}
},
"additionalProperties": false
}List all 700+ SNCB/NMBS Belgian railway stations with coordinates, or filter by name. Returns station ID, display name, standard name (Dutch/French), latitude, and longitude. Use station names from this list as input for liveboard and connections tools. No auth required. Data: iRail open data, Belgium national rail (SNCB/NMBS).
| Argument | Type | Description |
|---|---|---|
| lang | string | Language for station names. One of: en, nl, fr, de. Default: en. |
| query | string | Optional search string to filter stations by name (e.g. "Gent", "Brussel"). Omit to return all 700+ Belgian stations. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"lang": {
"enum": [
"en",
"nl",
"fr",
"de"
],
"type": "string",
"description": "Language for station names. One of: en, nl, fr, de. Default: en."
},
"query": {
"type": "string",
"description": "Optional search string to filter stations by name (e.g. \"Gent\", \"Brussel\"). Omit to return all 700+ Belgian stations."
}
},
"additionalProperties": false
}Find train connections between two Belgian railway stations — returns up to 10 journeys with departure/arrival times, total duration, delays, transfer stations (vias), train numbers, platform numbers, and cancellation flags. Supports departure or arrival time selection. No auth required. Data: iRail real-time SNCB/NMBS Belgium train data.
| Argument | Type | Description |
|---|---|---|
| to* | string | Arrival station name (e.g. "Antwerpen-Centraal", "Brugge"). Must match Belgian spelling. |
| date | string | Date in DDMMYY format (e.g. "290626" for 29 June 2026). Defaults to today. |
| from* | string | Departure station name (e.g. "Brussel-Zuid", "Gent-Sint-Pieters"). Must match Belgian spelling. |
| lang | string | Language for station and direction names. Default: en. |
| time | string | Time in HHMM format (e.g. "1430" for 14:30). Defaults to current time. |
| results | integer | Number of connections to return (1–10). Default: 6. |
| timesel | string | Whether the provided time is the desired departure time or arrival time. Default: depart. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"from",
"to"
],
"properties": {
"to": {
"type": "string",
"minLength": 2,
"description": "Arrival station name (e.g. \"Antwerpen-Centraal\", \"Brugge\"). Must match Belgian spelling."
},
"date": {
"type": "string",
"pattern": "^\\d{6}$",
"description": "Date in DDMMYY format (e.g. \"290626\" for 29 June 2026). Defaults to today."
},
"from": {
"type": "string",
"minLength": 2,
"description": "Departure station name (e.g. \"Brussel-Zuid\", \"Gent-Sint-Pieters\"). Must match Belgian spelling."
},
"lang": {
"enum": [
"en",
"nl",
"fr",
"de"
],
"type": "string",
"description": "Language for station and direction names. Default: en."
},
"time": {
"type": "string",
"pattern": "^\\d{4}$",
"description": "Time in HHMM format (e.g. \"1430\" for 14:30). Defaults to current time."
},
"results": {
"type": "integer",
"maximum": 10,
"minimum": 1,
"description": "Number of connections to return (1–10). Default: 6."
},
"timesel": {
"enum": [
"depart",
"arrive"
],
"type": "string",
"description": "Whether the provided time is the desired departure time or arrival time. Default: depart."
}
},
"additionalProperties": false
}Retrieve current service disruptions and alerts on the Belgian rail network — returns disturbance title, description (cause, affected lines, recovery status), type (disturbance or planned maintenance), timestamp, and a link for more information. Typically 0–50 active disturbances. No auth required. Data: iRail real-time SNCB/NMBS Belgium alerts.
| Argument | Type | Description |
|---|---|---|
| lang | string | Language for disturbance titles and descriptions. Default: en. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"lang": {
"enum": [
"en",
"nl",
"fr",
"de"
],
"type": "string",
"description": "Language for disturbance titles and descriptions. Default: en."
}
},
"additionalProperties": false
}Get real-time departures or arrivals for a Belgian railway station — returns train number, destination/origin, scheduled time, delay in minutes, platform, cancellation status, and passenger occupancy level. Defaults to departures from current time. No auth required. Data: iRail real-time SNCB/NMBS Belgium train data.
| Argument | Type | Description |
|---|---|---|
| date | string | Date in DDMMYY format (e.g. "290626" for 29 June 2026). Defaults to today. |
| lang | string | Language for station and direction names. Default: en. |
| time | string | Time in HHMM format (e.g. "0930" for 09:30). Defaults to current time. |
| arrdep | string | Show arrivals or departures at the station. Default: departure. |
| results | integer | Maximum number of trains to return. Default: 20, max: 50. |
| station* | string | Station name (e.g. "Gent-Sint-Pieters", "Brussel-Zuid", "Antwerpen-Centraal"). Must match the Belgian spelling. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"station"
],
"properties": {
"date": {
"type": "string",
"pattern": "^\\d{6}$",
"description": "Date in DDMMYY format (e.g. \"290626\" for 29 June 2026). Defaults to today."
},
"lang": {
"enum": [
"en",
"nl",
"fr",
"de"
],
"type": "string",
"description": "Language for station and direction names. Default: en."
},
"time": {
"type": "string",
"pattern": "^\\d{4}$",
"description": "Time in HHMM format (e.g. \"0930\" for 09:30). Defaults to current time."
},
"arrdep": {
"enum": [
"arrival",
"departure"
],
"type": "string",
"description": "Show arrivals or departures at the station. Default: departure."
},
"results": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of trains to return. Default: 20, max: 50."
},
"station": {
"type": "string",
"minLength": 2,
"description": "Station name (e.g. \"Gent-Sint-Pieters\", \"Brussel-Zuid\", \"Antwerpen-Centraal\"). Must match the Belgian spelling."
}
},
"additionalProperties": false
}Get the complete stop schedule for a specific Belgian train — returns all stations the train calls at with scheduled times, actual delays, platform numbers, occupancy levels, and whether the train has already departed each stop. Train IDs are returned by the liveboard and connections tools. No auth required. Data: iRail SNCB/NMBS Belgium.
| Argument | Type | Description |
|---|---|---|
| id* | string | Vehicle/train ID in iRail format (e.g. "BE.NMBS.IC1810", "BE.NMBS.S22308"). Obtain from liveboard or connections response. |
| date | string | Date in DDMMYY format (e.g. "290626" for 29 June 2026). Defaults to today. |
| lang | string | Language for station names. Default: en. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 3,
"description": "Vehicle/train ID in iRail format (e.g. \"BE.NMBS.IC1810\", \"BE.NMBS.S22308\"). Obtain from liveboard or connections response."
},
"date": {
"type": "string",
"pattern": "^\\d{6}$",
"description": "Date in DDMMYY format (e.g. \"290626\" for 29 June 2026). Defaults to today."
},
"lang": {
"enum": [
"en",
"nl",
"fr",
"de"
],
"type": "string",
"description": "Language for station names. Default: en."
}
},
"additionalProperties": false
}Search Indian Railways stations by name or partial code. Returns station code, full name, state. Use this to discover station codes for irctc.train_search/status.
| Argument | Type | Description |
|---|---|---|
| query* | string | Station name fragment or partial station code to search for. Case-insensitive. Examples: "Mumbai" returns CSMT/BCT/LTT/etc., "delhi" returns NDLS/DLI/NZM, "HWH" returns Howrah. Returns up to 20 matches. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"description": "Station name fragment or partial station code to search for. Case-insensitive. Examples: \"Mumbai\" returns CSMT/BCT/LTT/etc., \"delhi\" returns NDLS/DLI/NZM, \"HWH\" returns Howrah. Returns up to 20 matches."
}
},
"additionalProperties": false
}Search trains running between two Indian railway stations. Returns train number, name, departure/arrival time, distance, class availability (1A/2A/3A/SL/CC/EC), and running days (Mon-Sun).
| Argument | Type | Description |
|---|---|---|
| date_of_journey* | string | Journey date in YYYY-MM-DD format. Must be within the next 120 days from today. Example: 2026-05-15. |
| to_station_code* | string | Destination station code (3-5 uppercase letters, same format as from_station_code). Use irctc.station_search to discover codes by name. |
| from_station_code* | string | Origin station code (3-5 uppercase letters). Examples: NDLS (New Delhi), CSMT (Mumbai CST), HWH (Howrah Kolkata), MAS (Chennai Central), SBC (Bengaluru). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"from_station_code",
"to_station_code",
"date_of_journey"
],
"properties": {
"date_of_journey": {
"type": "string",
"description": "Journey date in YYYY-MM-DD format. Must be within the next 120 days from today. Example: 2026-05-15."
},
"to_station_code": {
"type": "string",
"description": "Destination station code (3-5 uppercase letters, same format as from_station_code). Use irctc.station_search to discover codes by name."
},
"from_station_code": {
"type": "string",
"description": "Origin station code (3-5 uppercase letters). Examples: NDLS (New Delhi), CSMT (Mumbai CST), HWH (Howrah Kolkata), MAS (Chennai Central), SBC (Bengaluru)."
}
},
"additionalProperties": false
}Get live running status of an Indian train for today or a specific date — current station, expected arrival/departure, delay in minutes, distance covered, full station-by-station schedule.
| Argument | Type | Description |
|---|---|---|
| start_day | integer | Day offset for the train journey start relative to today (0=today, 1=yesterday, 2=two days ago, up to 4). Use non-zero for multi-day trains that departed before today. |
| train_number* | string | 5-digit Indian Railways train number. Examples: '12951' (Mumbai Rajdhani Express), '12303' (Poorva Express), '22691' (Rajdhani Express Bangalore). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"train_number"
],
"properties": {
"start_day": {
"type": "integer",
"default": 0,
"maximum": 4,
"minimum": 0,
"description": "Day offset for the train journey start relative to today (0=today, 1=yesterday, 2=two days ago, up to 4). Use non-zero for multi-day trains that departed before today."
},
"train_number": {
"type": "string",
"description": "5-digit Indian Railways train number. Examples: '12951' (Mumbai Rajdhani Express), '12303' (Poorva Express), '22691' (Rajdhani Express Bangalore)."
}
},
"additionalProperties": false
}Query renewable and non-renewable electricity installed capacity (MW) for any country from the IRENA IRENASTAT database. Covers 226 countries and territories, 26 energy technologies (Total renewable energy, Solar photovoltaic, Wind, Hydropower, Bioenergy, Geothermal, etc.), on-grid and off-grid, from 2000 to 2025. Returns a time-series of MW values per year. Official IRENA data — the authoritative global source for renewable energy statistics used by the IPCC, IEA, and UN agencies.
| Argument | Type | Description |
|---|---|---|
| country* | string | ISO 3166-1 alpha-3 country code (e.g. USA, DEU, CHN, IND, BRA). Must be exactly 3 letters. |
| year_to | integer | End year (inclusive, 2000–2025, must be ≥ year_from). Default: 2025. |
| year_from | integer | Start year (inclusive, 2000–2025). Default: 2020. |
| technology | string | Energy technology to query. Default: "Total renewable energy". Renewable options: Total renewable energy, Solar energy, Solar photovoltaic, Wind energy, Onshore wind energy, Offshore wind energy, Renewable hydropower, Bioenergy, Geothermal energy. |
| grid_connection | string | Grid connection type. Default: "OnGrid". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country"
],
"properties": {
"country": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO 3166-1 alpha-3 country code (e.g. USA, DEU, CHN, IND, BRA). Must be exactly 3 letters."
},
"year_to": {
"type": "integer",
"maximum": 2025,
"minimum": 2000,
"description": "End year (inclusive, 2000–2025, must be ≥ year_from). Default: 2025."
},
"year_from": {
"type": "integer",
"maximum": 2025,
"minimum": 2000,
"description": "Start year (inclusive, 2000–2025). Default: 2020."
},
"technology": {
"enum": [
"Total renewable energy",
"Solar energy",
"Solar photovoltaic",
"Solar thermal energy",
"Wind energy",
"Onshore wind energy",
"Offshore wind energy",
"Renewable hydropower",
"Mixed hydropower",
"Marine energy",
"Bioenergy",
"Solid biofuels",
"Liquid biofuels",
"Gas biofuels",
"Renewable waste",
"Geothermal energy",
"Total non-renewable energy",
"Fossil fuels",
"Coal",
"Oil",
"Natural gas",
"Nuclear energy",
"Non-renewable waste",
"Pumped hydro"
],
"type": "string",
"description": "Energy technology to query. Default: \"Total renewable energy\". Renewable options: Total renewable energy, Solar energy, Solar photovoltaic, Wind energy, Onshore wind energy, Offshore wind energy, Renewable hydropower, Bioenergy, Geothermal energy."
},
"grid_connection": {
"enum": [
"OnGrid",
"OffGrid"
],
"type": "string",
"description": "Grid connection type. Default: \"OnGrid\"."
}
},
"additionalProperties": false
}Query renewable and non-renewable electricity installed capacity (MW) aggregated by IRENA world region from the IRENASTAT database. Regions: World, Africa, Asia, Europe, North America, South America, Middle East, Eurasia, Oceania, Central America and the Caribbean. Covers 13 technology categories from 2000 to 2025. Useful for comparing regional energy transition progress, identifying leading regions in solar/wind deployment, and tracking global renewable capacity milestones.
| Argument | Type | Description |
|---|---|---|
| region* | string | IRENA world region. One of: World, Africa, Asia, Central America and the Caribbean, Eurasia, Europe, Middle East, North America, Oceania, South America. |
| year_to | integer | End year (inclusive, 2000–2025, must be ≥ year_from). Default: 2025. |
| year_from | integer | Start year (inclusive, 2000–2025). Default: 2020. |
| technology | string | Energy technology to query. Default: "Total renewable energy". Options: Total renewable energy, Solar energy, Wind energy, Renewable hydropower, Pumped hydro, Marine energy, Bioenergy, Geothermal energy, Total non-renewable energy, Fossil fuels, Nuclear energy, Other non-renewable energy. |
| grid_connection | string | Grid connection type. Default: "OnGrid". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"region"
],
"properties": {
"region": {
"enum": [
"World",
"Africa",
"Asia",
"Central America and the Caribbean",
"Eurasia",
"Europe",
"Middle East",
"North America",
"Oceania",
"South America"
],
"type": "string",
"description": "IRENA world region. One of: World, Africa, Asia, Central America and the Caribbean, Eurasia, Europe, Middle East, North America, Oceania, South America."
},
"year_to": {
"type": "integer",
"maximum": 2025,
"minimum": 2000,
"description": "End year (inclusive, 2000–2025, must be ≥ year_from). Default: 2025."
},
"year_from": {
"type": "integer",
"maximum": 2025,
"minimum": 2000,
"description": "Start year (inclusive, 2000–2025). Default: 2020."
},
"technology": {
"enum": [
"Total renewable energy",
"Solar energy",
"Wind energy",
"Renewable hydropower",
"Pumped hydro",
"Marine energy",
"Bioenergy",
"Geothermal energy",
"Total non-renewable energy",
"Fossil fuels",
"Nuclear energy",
"Other non-renewable energy"
],
"type": "string",
"description": "Energy technology to query. Default: \"Total renewable energy\". Options: Total renewable energy, Solar energy, Wind energy, Renewable hydropower, Pumped hydro, Marine energy, Bioenergy, Geothermal energy, Total non-renewable energy, Fossil fuels, Nuclear energy, Other non-renewable energy."
},
"grid_connection": {
"enum": [
"OnGrid",
"OffGrid"
],
"type": "string",
"description": "Grid connection type. Default: \"OnGrid\"."
}
},
"additionalProperties": false
}Query electricity generation (GWh) by energy technology for any country from the IRENA IRENASTAT database. Covers 226 countries and territories, 21 technologies including Total renewable, Solar PV, Onshore and Offshore wind, Renewable hydropower, Bioenergy subcategories, Geothermal, Marine energy, and Total non-renewable. On-grid, off-grid, or combined. Annual data from 2000 to 2024. Essential for energy transition analysis, NDC tracking, and climate policy research.
| Argument | Type | Description |
|---|---|---|
| country* | string | ISO 3166-1 alpha-3 country code (e.g. USA, DEU, CHN, IND, BRA). Must be exactly 3 letters. |
| year_to | integer | End year (inclusive, 2000–2024, must be ≥ year_from). Default: 2024. |
| year_from | integer | Start year (inclusive, 2000–2024). Default: 2020. |
| technology | string | Energy technology to query. Default: "Total renewable". Options: Total renewable, Solar photovoltaic, Onshore wind energy, Offshore wind energy, Renewable hydropower, Bioenergy subcategories, Geothermal energy, Total non-renewable, etc. |
| grid_connection | string | Grid connection type. Default: "OnGrid". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country"
],
"properties": {
"country": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO 3166-1 alpha-3 country code (e.g. USA, DEU, CHN, IND, BRA). Must be exactly 3 letters."
},
"year_to": {
"type": "integer",
"maximum": 2024,
"minimum": 2000,
"description": "End year (inclusive, 2000–2024, must be ≥ year_from). Default: 2024."
},
"year_from": {
"type": "integer",
"maximum": 2024,
"minimum": 2000,
"description": "Start year (inclusive, 2000–2024). Default: 2020."
},
"technology": {
"enum": [
"Total renewable",
"Solar photovoltaic",
"Solar thermal energy",
"Onshore wind energy",
"Offshore wind energy",
"Renewable hydropower",
"Mixed Hydro Plants",
"Marine energy",
"Solid biofuels",
"Liquid biofuels",
"Biogas",
"Renewable municipal waste",
"Geothermal energy",
"Total non-renewable",
"Coal and peat",
"Oil",
"Natural gas",
"Nuclear",
"Pumped storage"
],
"type": "string",
"description": "Energy technology to query. Default: \"Total renewable\". Options: Total renewable, Solar photovoltaic, Onshore wind energy, Offshore wind energy, Renewable hydropower, Bioenergy subcategories, Geothermal energy, Total non-renewable, etc."
},
"grid_connection": {
"enum": [
"OnGrid",
"OffGrid",
"All"
],
"type": "string",
"description": "Grid connection type. Default: \"OnGrid\"."
}
},
"additionalProperties": false
}Query the share (%) of renewable energy in total electricity capacity or generation for any country or IRENA world region from the IRENASTAT database. Covers 233 countries/regions from 2000 to 2025. Choose indicator "generation" for the share of electricity actually produced from renewables, or "capacity" for the share of installed power plant capacity that is renewable. Key metric for energy transition tracking, SDG 7 (affordable clean energy) monitoring, and comparison against national climate targets (NDCs, net-zero commitments).
| Argument | Type | Description |
|---|---|---|
| year_to | integer | End year (inclusive, 2000–2025, must be ≥ year_from). Default: 2025. |
| indicator | string | Whether to return RE share of electricity generation or capacity. Default: "generation". |
| year_from | integer | Start year (inclusive, 2000–2025). Default: 2020. |
| country_or_region* | string | ISO 3166-1 alpha-3 country code (e.g. USA, DEU, CHN) OR IRENA region name (e.g. World, Europe, Asia, Africa, North America, South America, Middle East, Eurasia, Oceania, Central America and the Caribbean). Default: "World". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country_or_region"
],
"properties": {
"year_to": {
"type": "integer",
"maximum": 2025,
"minimum": 2000,
"description": "End year (inclusive, 2000–2025, must be ≥ year_from). Default: 2025."
},
"indicator": {
"enum": [
"generation",
"capacity"
],
"type": "string",
"description": "Whether to return RE share of electricity generation or capacity. Default: \"generation\"."
},
"year_from": {
"type": "integer",
"maximum": 2025,
"minimum": 2000,
"description": "Start year (inclusive, 2000–2025). Default: 2020."
},
"country_or_region": {
"type": "string",
"description": "ISO 3166-1 alpha-3 country code (e.g. USA, DEU, CHN) OR IRENA region name (e.g. World, Europe, Asia, Africa, North America, South America, Middle East, Eurasia, Oceania, Central America and the Caribbean). Default: \"World\"."
}
},
"additionalProperties": false
}Get the real-time position of the International Space Station — latitude, longitude, altitude (km), velocity (km/h), and daylight/eclipse visibility. ISS orbits at 28,000 km/h, completes one orbit every 90 minutes. Updates every ~60 seconds.
| Argument | Type | Description |
|---|---|---|
| units | string | Distance units: kilometers (default) or miles |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"units": {
"enum": [
"kilometers",
"miles"
],
"type": "string",
"description": "Distance units: kilometers (default) or miles"
}
},
"additionalProperties": false
}Get the Two-Line Element set (TLE) for the International Space Station — NORAD catalog #25544. Contains orbital parameters for trajectory prediction and satellite tracking calculations.
| Argument | Type | Description |
|---|---|---|
| format | string | Response format: json (default) or text (raw TLE two-line element) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"format": {
"enum": [
"json",
"text"
],
"type": "string",
"description": "Response format: json (default) or text (raw TLE two-line element)"
}
},
"additionalProperties": false
}Get the complete list of Japan Meteorological Agency (JMA) forecast area codes with Japanese and English names. Returns all 58 JMA offices/regions with 6-digit codes needed by jma-bosai.weather.forecast, jma-bosai.weather.overview, and jma-bosai.weather.warnings. Filter by English name keyword (e.g. "tokyo", "osaka") to find the right code. Example codes: 130000=Tokyo, 270000=Osaka, 230000=Aichi (Nagoya), 400000=Fukuoka. Data: JMA area constants — Japanese Government open data, no auth required.
| Argument | Type | Description |
|---|---|---|
| name_filter | string | Optional English keyword to filter offices by name (case-insensitive). E.g. "tokyo", "osaka". Leave empty to return all 58 offices. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"name_filter": {
"type": "string",
"description": "Optional English keyword to filter offices by name (case-insensitive). E.g. \"tokyo\", \"osaka\". Leave empty to return all 58 offices."
}
},
"additionalProperties": false
}Get the most recent earthquakes reported by the Japan Meteorological Agency (JMA). Returns epicenter name (English and Japanese), magnitude, JMA seismic intensity (Shindo scale 1–7), coordinates, depth (km), and occurrence time in ISO 8601. Filter by minimum magnitude to focus on significant events. JMA Shindo scale: 1=barely felt, 4=hanging objects swing strongly, 5+=damage possible, 7=catastrophic. Complements p2pquake.seismic.recent (community network) with the official government feed. Data: JMA official seismic data — Japanese Government open data, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of earthquakes to return (1–100). Defaults to 20. |
| min_magnitude | number | Filter — return only earthquakes with magnitude ≥ this value (e.g. 3.0). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of earthquakes to return (1–100). Defaults to 20."
},
"min_magnitude": {
"type": "number",
"maximum": 9.9,
"minimum": 0,
"description": "Filter — return only earthquakes with magnitude ≥ this value (e.g. 3.0)."
}
},
"additionalProperties": false
}Get the official 3-day weather forecast from the Japan Meteorological Agency (JMA) for a specified area code (prefecture/region). Returns weather descriptions, wind conditions, wave heights, precipitation probability (%), and temperature (°C) per time period. Pass a 6-digit JMA area code (e.g. 130000 for Tokyo, 270000 for Osaka). Use jma-bosai.reference.areas to look up valid area codes. Data: JMA official forecast — Japanese Government open data, no auth required.
| Argument | Type | Description |
|---|---|---|
| area_code | string | JMA 6-digit area (office) code. Use jma-bosai.reference.areas to look up valid codes. Common codes: 130000 (Tokyo), 270000 (Osaka), 230000 (Aichi/Nagoya), 400000 (Fukuoka). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"area_code": {
"type": "string",
"default": "130000",
"pattern": "^\\d{6}$",
"description": "JMA 6-digit area (office) code. Use jma-bosai.reference.areas to look up valid codes. Common codes: 130000 (Tokyo), 270000 (Osaka), 230000 (Aichi/Nagoya), 400000 (Fukuoka)."
}
},
"additionalProperties": false
}Get the official meteorological overview text from the Japan Meteorological Agency (JMA) for a specified area. Returns a headline and a full narrative weather summary in Japanese (the official JMA text as issued). Useful for understanding the weather situation context beyond just codes and temperatures. Pass a 6-digit JMA area code (e.g. 130000 for Tokyo, 270000 for Osaka). Data: JMA official overview — Japanese Government open data, no auth required.
| Argument | Type | Description |
|---|---|---|
| area_code | string | JMA 6-digit area (office) code. Use jma-bosai.reference.areas to look up valid codes. Common codes: 130000 (Tokyo), 270000 (Osaka), 230000 (Aichi/Nagoya), 400000 (Fukuoka). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"area_code": {
"type": "string",
"default": "130000",
"pattern": "^\\d{6}$",
"description": "JMA 6-digit area (office) code. Use jma-bosai.reference.areas to look up valid codes. Common codes: 130000 (Tokyo), 270000 (Osaka), 230000 (Aichi/Nagoya), 400000 (Fukuoka)."
}
},
"additionalProperties": false
}Get all currently active weather warnings and advisories issued by the Japan Meteorological Agency (JMA) for a specified area. Returns warning codes, statuses (issued / continuing / lifted), and a headline summary. Warning code meanings: 02=Wind, 03=Wave, 04=Thunderstorm, 05=Heavy Rain, 06=Windstorm, 10=Tsunami, 12=Snow, 14=Avalanche, 15=Flood, 20=High Wave, etc. Pass a 6-digit JMA area code (e.g. 130000 for Tokyo). Data: JMA official warnings — Japanese Government open data, no auth required.
| Argument | Type | Description |
|---|---|---|
| area_code | string | JMA 6-digit area (office) code. Use jma-bosai.reference.areas to look up valid codes. Common codes: 130000 (Tokyo), 270000 (Osaka), 230000 (Aichi/Nagoya), 400000 (Fukuoka). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"area_code": {
"type": "string",
"default": "130000",
"pattern": "^\\d{6}$",
"description": "JMA 6-digit area (office) code. Use jma-bosai.reference.areas to look up valid codes. Common codes: 130000 (Tokyo), 270000 (Osaka), 230000 (Aichi/Nagoya), 400000 (Fukuoka)."
}
},
"additionalProperties": false
}List all job categories available in a country — IT, Sales, Engineering, HR, Healthcare, Hospitality, and more. Use category tags to filter adzuna.search results (Adzuna)
| Argument | Type | Description |
|---|---|---|
| country | string | Country code (default us) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"country": {
"type": "string",
"default": "us",
"description": "Country code (default us)"
}
},
"additionalProperties": false
}Get salary distribution for a job title — returns histogram of salary buckets with job counts. Example: "python developer" in US → $20K-$140K distribution. Use for salary benchmarking and market research (Adzuna)
| Argument | Type | Description |
|---|---|---|
| what | string | Job title or keywords for salary histogram (e.g. "python developer", "data scientist") |
| where | string | Location for salary data |
| country | string | Country code (default us) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"what": {
"type": "string",
"description": "Job title or keywords for salary histogram (e.g. \"python developer\", \"data scientist\")"
},
"where": {
"type": "string",
"description": "Location for salary data"
},
"country": {
"type": "string",
"default": "us",
"description": "Country code (default us)"
}
},
"additionalProperties": false
}Search job listings across 16+ countries (US, UK, AU, CA, DE, FR, and more) by keyword, location, category, salary range. Returns job title, company, salary, location, and apply URL. 70K+ developer jobs in US alone (Adzuna)
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number |
| what | string | Job search keywords (e.g. "python developer", "marketing manager", "nurse") |
| limit | integer | Max results (1-20, default 10) |
| where | string | Location (e.g. "new york", "london", "berlin") |
| country | string | Country code: us, gb, au, ca, de, fr, nl, in, br, pl, nz, za, sg, at, ch, it, ru (default us) |
| category | string | Job category tag (e.g. "it-jobs", "sales-jobs", "engineering-jobs"). Get tags from adzuna.categories |
| full_time | boolean | Filter full-time jobs only |
| permanent | boolean | Filter permanent jobs only |
| salary_max | number | Maximum salary filter |
| salary_min | number | Minimum salary filter |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"default": 1,
"minimum": 1,
"description": "Page number"
},
"what": {
"type": "string",
"description": "Job search keywords (e.g. \"python developer\", \"marketing manager\", \"nurse\")"
},
"limit": {
"type": "integer",
"default": 10,
"maximum": 20,
"minimum": 1,
"description": "Max results (1-20, default 10)"
},
"where": {
"type": "string",
"description": "Location (e.g. \"new york\", \"london\", \"berlin\")"
},
"country": {
"type": "string",
"default": "us",
"description": "Country code: us, gb, au, ca, de, fr, nl, in, br, pl, nz, za, sg, at, ch, it, ru (default us)"
},
"category": {
"type": "string",
"description": "Job category tag (e.g. \"it-jobs\", \"sales-jobs\", \"engineering-jobs\"). Get tags from adzuna.categories"
},
"full_time": {
"type": "boolean",
"description": "Filter full-time jobs only"
},
"permanent": {
"type": "boolean",
"description": "Filter permanent jobs only"
},
"salary_max": {
"type": "number",
"description": "Maximum salary filter"
},
"salary_min": {
"type": "number",
"description": "Minimum salary filter"
}
},
"additionalProperties": false
}Browse European job listings — 100 jobs per page sorted by newest. Returns title, company, location, remote flag, tags, job types, direct link. Updated hourly. EU-focused: Germany, Austria, Switzerland, Netherlands, and more. Open public API (Arbeitnow)
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number (default 1). Each page returns ~100 EU job listings sorted by newest first. No server-side search — use page to browse |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"default": 1,
"minimum": 1,
"description": "Page number (default 1). Each page returns ~100 EU job listings sorted by newest first. No server-side search — use page to browse"
}
},
"additionalProperties": false
}Search aggregated job listings across 70+ countries — filter by keywords, location, radius, salary, company name. Returns title, company, location, salary, source, direct link. 9M+ active listings from thousands of job boards (Jooble)
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number (default 1) |
| limit | integer | Max results per page (1-20, default 10) |
| radius | string | Search radius in km from location: 0, 4, 8, 16, 26, 40, or 80 |
| salary | number | Minimum salary filter (numeric) |
| keywords | string | Job search keywords (e.g. "python developer", "marketing manager", "nurse") |
| location | string | Location (e.g. "New York", "London", "Berlin", "Remote") |
| company_search | boolean | Set true to search by company name instead of job title |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"default": 1,
"minimum": 1,
"description": "Page number (default 1)"
},
"limit": {
"type": "integer",
"default": 10,
"maximum": 20,
"minimum": 1,
"description": "Max results per page (1-20, default 10)"
},
"radius": {
"enum": [
"0",
"4",
"8",
"16",
"26",
"40",
"80"
],
"type": "string",
"description": "Search radius in km from location: 0, 4, 8, 16, 26, 40, or 80"
},
"salary": {
"type": "number",
"description": "Minimum salary filter (numeric)"
},
"keywords": {
"type": "string",
"description": "Job search keywords (e.g. \"python developer\", \"marketing manager\", \"nurse\")"
},
"location": {
"type": "string",
"description": "Location (e.g. \"New York\", \"London\", \"Berlin\", \"Remote\")"
},
"company_search": {
"type": "boolean",
"description": "Set true to search by company name instead of job title"
}
},
"additionalProperties": false
}Get full details of a UK job listing by ID — title, company, full salary info (min/max GBP, annual/hourly/daily), contract type, full/part time, application count, full HTML description, external apply URL. Use job IDs from reed.search results (Reed.co.uk)
| Argument | Type | Description |
|---|---|---|
| job_id* | integer | Reed job ID (from search results). Example: 56448344 |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"job_id"
],
"properties": {
"job_id": {
"type": "integer",
"description": "Reed job ID (from search results). Example: 56448344"
}
},
"additionalProperties": false
}Search UK job listings — filter by keywords, location, distance, salary range (GBP), contract type (permanent/contract/temp), full/part time. Returns title, company, salary, applications count, direct link. UK largest job board (Reed.co.uk)
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of results to skip for pagination (must be divisible by limit) |
| limit | integer | Max results (1-100, default 25) |
| contract | boolean | Filter contract positions only |
| distance | integer | Search radius in miles from location (default 10) |
| keywords | string | Job search keywords (e.g. "python developer", "data scientist", "nurse") |
| location | string | UK location — city, town, or postcode (e.g. "London", "Manchester", "SW1A 1AA") |
| full_time | boolean | Filter full-time positions only |
| part_time | boolean | Filter part-time positions only |
| permanent | boolean | Filter permanent positions only |
| salary_max | number | Maximum annual salary in GBP (e.g. 80000) |
| salary_min | number | Minimum annual salary in GBP (e.g. 30000) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"skip": {
"type": "integer",
"minimum": 0,
"description": "Number of results to skip for pagination (must be divisible by limit)"
},
"limit": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1,
"description": "Max results (1-100, default 25)"
},
"contract": {
"type": "boolean",
"description": "Filter contract positions only"
},
"distance": {
"type": "integer",
"minimum": 0,
"description": "Search radius in miles from location (default 10)"
},
"keywords": {
"type": "string",
"description": "Job search keywords (e.g. \"python developer\", \"data scientist\", \"nurse\")"
},
"location": {
"type": "string",
"description": "UK location — city, town, or postcode (e.g. \"London\", \"Manchester\", \"SW1A 1AA\")"
},
"full_time": {
"type": "boolean",
"description": "Filter full-time positions only"
},
"part_time": {
"type": "boolean",
"description": "Filter part-time positions only"
},
"permanent": {
"type": "boolean",
"description": "Filter permanent positions only"
},
"salary_max": {
"type": "number",
"description": "Maximum annual salary in GBP (e.g. 80000)"
},
"salary_min": {
"type": "number",
"description": "Minimum annual salary in GBP (e.g. 30000)"
}
},
"additionalProperties": false
}Search curated remote-only job listings — filter by keywords and category (software-dev, design, marketing, data, devops, etc.). Returns title, company, salary, job type, location requirements, tags. Global remote positions only (Remotive)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max results (1-50, default 20) |
| search | string | Job search keywords (e.g. "python", "react developer", "product manager") |
| category | string | Job category slug: software-dev, design, customer-support, writing, marketing, sales, product, business, data, devops, finance, hr, qa, all-others |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"default": 20,
"maximum": 50,
"minimum": 1,
"description": "Max results (1-50, default 20)"
},
"search": {
"type": "string",
"description": "Job search keywords (e.g. \"python\", \"react developer\", \"product manager\")"
},
"category": {
"type": "string",
"description": "Job category slug: software-dev, design, customer-support, writing, marketing, sales, product, business, data, devops, finance, hr, qa, all-others"
}
},
"additionalProperties": false
}Find companies by technology stack — filter by technologies (kubernetes, react, python...), country, minimum active jobs. Returns company name, URL, job count, tech stack. Identify employers using specific technologies (TheirStack)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max results (1-25, default 10) |
| country | string | ISO 3166-1 alpha-2 country code (e.g. "US", "DE", "IN") |
| min_jobs | integer | Minimum number of active job postings |
| technologies | string | Comma-separated tech stack filter (e.g. "kubernetes, docker, aws"). Find companies using these technologies |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"default": 10,
"maximum": 25,
"minimum": 1,
"description": "Max results (1-25, default 10)"
},
"country": {
"type": "string",
"description": "ISO 3166-1 alpha-2 country code (e.g. \"US\", \"DE\", \"IN\")"
},
"min_jobs": {
"type": "integer",
"minimum": 1,
"description": "Minimum number of active job postings"
},
"technologies": {
"type": "string",
"description": "Comma-separated tech stack filter (e.g. \"kubernetes, docker, aws\"). Find companies using these technologies"
}
},
"additionalProperties": false
}Search 181M+ job postings worldwide — filter by keywords, country, remote, tech stack, recency. Returns title, company, location, salary range, post date. Job market intelligence for hiring analysis and talent sourcing (TheirStack)
| Argument | Type | Description |
|---|---|---|
| days | integer | Max age in days (1-90). Only jobs posted within this window |
| limit | integer | Max results (1-25, default 10) |
| remote | boolean | Filter remote-only jobs |
| country | string | ISO 3166-1 alpha-2 country code (e.g. "US", "DE", "IN") |
| keywords | string | Comma-separated job title keywords (e.g. "python developer, backend engineer"). Matches job_title_or filter |
| technologies | string | Comma-separated tech stack filter (e.g. "kubernetes, python, react"). Matches technologies_or |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"days": {
"type": "integer",
"maximum": 90,
"minimum": 1,
"description": "Max age in days (1-90). Only jobs posted within this window"
},
"limit": {
"type": "integer",
"default": 10,
"maximum": 25,
"minimum": 1,
"description": "Max results (1-25, default 10)"
},
"remote": {
"type": "boolean",
"description": "Filter remote-only jobs"
},
"country": {
"type": "string",
"description": "ISO 3166-1 alpha-2 country code (e.g. \"US\", \"DE\", \"IN\")"
},
"keywords": {
"type": "string",
"description": "Comma-separated job title keywords (e.g. \"python developer, backend engineer\"). Matches job_title_or filter"
},
"technologies": {
"type": "string",
"description": "Comma-separated tech stack filter (e.g. \"kubernetes, python, react\"). Matches technologies_or"
}
},
"additionalProperties": false
}Get upcoming and past asteroid close approaches to Earth — distance, velocity, size, sorted by date or distance (NASA JPL)
| Argument | Type | Description |
|---|---|---|
| sort | string | Sort field (default: date) |
| h_max | number | Maximum absolute magnitude H (smaller H = larger object). Filter for brighter/bigger asteroids |
| limit | integer | Maximum number of results (default 20, max 100) |
| date_max | string | Maximum close-approach date in YYYY-MM-DD format (default: +60 days) |
| date_min | string | Minimum close-approach date in YYYY-MM-DD format (default: now) |
| dist_max | string | Maximum approach distance in AU (e.g. "0.05" = ~7.5M km). Default: 0.05 |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"sort": {
"enum": [
"date",
"dist",
"dist-min",
"h",
"v-inf",
"v-rel"
],
"type": "string",
"description": "Sort field (default: date)"
},
"h_max": {
"type": "number",
"description": "Maximum absolute magnitude H (smaller H = larger object). Filter for brighter/bigger asteroids"
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of results (default 20, max 100)"
},
"date_max": {
"type": "string",
"description": "Maximum close-approach date in YYYY-MM-DD format (default: +60 days)"
},
"date_min": {
"type": "string",
"description": "Minimum close-approach date in YYYY-MM-DD format (default: now)"
},
"dist_max": {
"type": "string",
"description": "Maximum approach distance in AU (e.g. \"0.05\" = ~7.5M km). Default: 0.05"
}
},
"additionalProperties": false
}Get asteroid impact risk assessments from the Sentry monitoring system — impact probability, Palermo/Torino scale, size estimates (NASA JPL)
| Argument | Type | Description |
|---|---|---|
| des | string | Asteroid designation to check specific object (e.g. "99942" for Apophis). Omit for full list |
| h_max | number | Maximum absolute magnitude H — filter for larger objects |
| ip_min | number | Minimum impact probability (e.g. 1e-7) |
| ps_min | number | Minimum Palermo Scale value (e.g. -3). Higher = more concerning |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"des": {
"type": "string",
"description": "Asteroid designation to check specific object (e.g. \"99942\" for Apophis). Omit for full list"
},
"h_max": {
"type": "number",
"description": "Maximum absolute magnitude H — filter for larger objects"
},
"ip_min": {
"type": "number",
"description": "Minimum impact probability (e.g. 1e-7)"
},
"ps_min": {
"type": "number",
"description": "Minimum Palermo Scale value (e.g. -3). Higher = more concerning"
}
},
"additionalProperties": false
}Look up asteroid or comet data by name/designation — orbital elements, physical parameters, discovery info, hazard classification (NASA JPL SBDB)
| Argument | Type | Description |
|---|---|---|
| des | string | SPK-ID or designation for exact lookup (e.g. "99942" for Apophis) |
| sstr | string | Search string — asteroid/comet name or designation (e.g. "Apophis", "2024 YR4", "Halley") |
| phys_par | boolean | Include physical parameters like diameter, albedo, rotation period (default true) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"des": {
"type": "string",
"description": "SPK-ID or designation for exact lookup (e.g. \"99942\" for Apophis)"
},
"sstr": {
"type": "string",
"description": "Search string — asteroid/comet name or designation (e.g. \"Apophis\", \"2024 YR4\", \"Halley\")"
},
"phys_par": {
"type": "boolean",
"description": "Include physical parameters like diameter, albedo, rotation period (default true)"
}
},
"additionalProperties": false
}Get reported fireball (bolide) events — atmospheric entry energy, velocity, altitude, geographic coordinates (NASA JPL CNEOS)
| Argument | Type | Description |
|---|---|---|
| sort | string | Sort field (default: date descending) |
| limit | integer | Maximum number of results (default 20, max 100) |
| date_max | string | Maximum event date in YYYY-MM-DD format |
| date_min | string | Minimum event date in YYYY-MM-DD format |
| energy_min | number | Minimum radiated energy in Joules (e.g. 1e10) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"sort": {
"enum": [
"date",
"energy",
"impact-e",
"vel",
"alt"
],
"type": "string",
"description": "Sort field (default: date descending)"
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of results (default 20, max 100)"
},
"date_max": {
"type": "string",
"description": "Maximum event date in YYYY-MM-DD format"
},
"date_min": {
"type": "string",
"description": "Minimum event date in YYYY-MM-DD format"
},
"energy_min": {
"type": "number",
"description": "Minimum radiated energy in Joules (e.g. 1e10)"
}
},
"additionalProperties": false
}Get structured data for a Wikidata entity by ID (e.g. Q42 = Douglas Adams). Returns labels, descriptions, aliases, and up to 20 property statements. 300+ languages supported. CC-0 (Wikidata)
| Argument | Type | Description |
|---|---|---|
| id* | string | Wikidata entity ID (e.g. "Q42" for Douglas Adams, "Q478214" for Tesla Inc). Get IDs from wikidata.search |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Wikidata entity ID (e.g. \"Q42\" for Douglas Adams, \"Q478214\" for Tesla Inc). Get IDs from wikidata.search"
}
},
"additionalProperties": false
}Search 100M+ structured entities in Wikidata — people, companies, places, concepts. Returns entity ID, label, description. Use IDs with wikidata.entity for full details. CC-0 public domain (Wikidata)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max results (1-20, default 10) |
| query* | string | Search query (e.g. "Tesla", "Barack Obama", "JavaScript", "Mount Everest") |
| language | string | Language code for labels (e.g. "en", "de", "fr", "ja"). Default: en |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"default": 10,
"maximum": 20,
"minimum": 1,
"description": "Max results (1-20, default 10)"
},
"query": {
"type": "string",
"description": "Search query (e.g. \"Tesla\", \"Barack Obama\", \"JavaScript\", \"Mount Everest\")"
},
"language": {
"type": "string",
"default": "en",
"description": "Language code for labels (e.g. \"en\", \"de\", \"fr\", \"ja\"). Default: en"
}
},
"additionalProperties": false
}Get word definition — phonetic pronunciation, part of speech, definitions with examples, synonyms, antonyms, audio URL. Supports 12 languages: en, es, fr, de, it, pt, ru, ar, hi, ja, ko, zh (Free Dictionary API)
| Argument | Type | Description |
|---|---|---|
| word* | string | Word to define (e.g. "algorithm", "serendipity", "ubuntu") |
| language | string | Language code: en, es, fr, de, it, pt, ru, ar, hi, ja, ko, zh (default: en) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"word"
],
"properties": {
"word": {
"type": "string",
"description": "Word to define (e.g. \"algorithm\", \"serendipity\", \"ubuntu\")"
},
"language": {
"type": "string",
"default": "en",
"description": "Language code: en, es, fr, de, it, pt, ru, ar, hi, ja, ko, zh (default: en)"
}
},
"additionalProperties": false
}Find words by meaning, sound, rhyme, or spelling pattern. "happy" → pleased, blissful. "algorithm" rhymes → rhythm, logarithm. Great for writing, creative tasks, word games (Datamuse)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max results (1-25, default 10) |
| meaning | string | Find words with this meaning (e.g. "happy" → pleased, blissful, content) |
| rhymes_with | string | Find words that rhyme with this (e.g. "algorithm" → rhythm, logarithm) |
| sounds_like | string | Find words that sound like this (e.g. "elefant" → elephant) |
| starts_with | string | Find words starting with these letters (e.g. "algor" → algorithm, algorithmic) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"default": 10,
"maximum": 25,
"minimum": 1,
"description": "Max results (1-25, default 10)"
},
"meaning": {
"type": "string",
"description": "Find words with this meaning (e.g. \"happy\" → pleased, blissful, content)"
},
"rhymes_with": {
"type": "string",
"description": "Find words that rhyme with this (e.g. \"algorithm\" → rhythm, logarithm)"
},
"sounds_like": {
"type": "string",
"description": "Find words that sound like this (e.g. \"elefant\" → elephant)"
},
"starts_with": {
"type": "string",
"description": "Find words starting with these letters (e.g. \"algor\" → algorithm, algorithmic)"
}
},
"additionalProperties": false
}List all 429 supported languages on Tatoeba with ISO 639-3 codes and sentence counts. Tatoeba CC-BY 2.0 FR
| Argument | Type | Description |
|---|---|---|
| refresh | boolean | Set to true to bypass cache and fetch the latest list of supported languages with sentence counts. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"refresh": {
"type": "boolean",
"description": "Set to true to bypass cache and fetch the latest list of supported languages with sentence counts."
}
},
"additionalProperties": false
}Search 13M parallel sentences across 429 languages (CC-BY 2.0 FR). Filter by source language, optional translation language, audio availability, and free-text keyword. Sort by relevance/random/created/modified. Tatoeba
| Argument | Type | Description |
|---|---|---|
| sort | string | Sort order — "relevance" (default), "words" (length), "created", "modified", or "random". |
| limit | integer | Max sentences to return (default 10, max 50). |
| query | string | Optional keyword search inside sentence text. |
| language | string | ISO 639-3 language code of the source sentence (default "eng"). Use tatoeba.languages to discover codes. |
| has_audio | boolean | Filter to sentences that have a human audio recording attached. |
| translation_lang | string | ISO 639-3 code of a target language — only return sentences that have a translation into this language. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"sort": {
"enum": [
"relevance",
"words",
"created",
"modified",
"random"
],
"type": "string",
"description": "Sort order — \"relevance\" (default), \"words\" (length), \"created\", \"modified\", or \"random\"."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Max sentences to return (default 10, max 50)."
},
"query": {
"type": "string",
"description": "Optional keyword search inside sentence text."
},
"language": {
"type": "string",
"description": "ISO 639-3 language code of the source sentence (default \"eng\"). Use tatoeba.languages to discover codes."
},
"has_audio": {
"type": "boolean",
"description": "Filter to sentences that have a human audio recording attached."
},
"translation_lang": {
"type": "string",
"description": "ISO 639-3 code of a target language — only return sentences that have a translation into this language."
}
},
"additionalProperties": false
}Get a single Tatoeba sentence by ID with all translations and audio recordings. Useful for language-learning agents. Tatoeba CC-BY 2.0 FR
| Argument | Type | Description |
|---|---|---|
| sentence_id* | integer | Tatoeba sentence ID. Returns the sentence with all translations and audio recordings. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"sentence_id"
],
"properties": {
"sentence_id": {
"type": "integer",
"minimum": 1,
"description": "Tatoeba sentence ID. Returns the sentence with all translations and audio recordings."
}
},
"additionalProperties": false
}Browse the Central Statistical Bureau of Latvia's statistics database tree by path. Top-level categories: POP (population), EMP (labour market), VES (social security and health), IZG (education, culture and science), VEK (economy), TIR (trade and services), ENT (business), IKT (information technologies), ENV (environment), FIN (indicators of well-being and equality). Returns child nodes (subcategories, type=l) or table descriptors at leaf nodes (type=t). Use empty path '' to get top-level categories. Navigate hierarchically until type=t nodes appear, then use latvia-statistics.table_metadata. Data: data.stat.gov.lv (PXWeb API), no auth required.
| Argument | Type | Description |
|---|---|---|
| path | string | Hierarchical path through the Latvia statistics taxonomy. Empty '' gets top-level categories. Examples: 'POP' (population), 'EMP' (labour market), 'VES' (social security and health), 'IZG' (education, culture and science), 'VEK' (economy), 'TIR' (trade and services), 'ENT' (business), 'IKT' (information technologies), 'ENV' (environment), 'FIN' (indicators of well-being and equality). Use latvia-statistics.catalog recursively to navigate until type=t (table leaf) nodes appear. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"path": {
"type": "string",
"default": "",
"description": "Hierarchical path through the Latvia statistics taxonomy. Empty '' gets top-level categories. Examples: 'POP' (population), 'EMP' (labour market), 'VES' (social security and health), 'IZG' (education, culture and science), 'VEK' (economy), 'TIR' (trade and services), 'ENT' (business), 'IKT' (information technologies), 'ENV' (environment), 'FIN' (indicators of well-being and equality). Use latvia-statistics.catalog recursively to navigate until type=t (table leaf) nodes appear."
}
},
"additionalProperties": false
}Get metadata for a specific Latvia statistics table — title, dimensions (e.g. INDICATOR, TIME, ContentsCode), valid value codes for each dimension, and latest update timestamp. Use this BEFORE latvia-statistics.table_query to discover accepted filter values. Example path: 'POP/IR/IRS/IRS010' (population at the beginning of year, key vital statistics). Data: data.stat.gov.lv, no auth required.
| Argument | Type | Description |
|---|---|---|
| table_path* | string | Full path to a leaf table (type='t' from latvia-statistics.catalog), e.g. 'POP/IR/IRS/IRS010' (population at the beginning of year, key vital statistics). Returns title, dimension codes, and valid values to use in latvia-statistics.table_query. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"table_path"
],
"properties": {
"table_path": {
"type": "string",
"description": "Full path to a leaf table (type='t' from latvia-statistics.catalog), e.g. 'POP/IR/IRS/IRS010' (population at the beginning of year, key vital statistics). Returns title, dimension codes, and valid values to use in latvia-statistics.table_query."
}
},
"additionalProperties": false
}Run a statistical query against a Latvia statistics table — specify dimension filters to slice data by indicator, time period, region, etc. Returns JSON-stat2 format with labeled dimensions and numeric values. Call latvia-statistics.table_metadata first to discover valid dimension codes and value codes. Example: population at start of year (INDICATOR='POP_SY'), latest year (TIME filter='top' values=['1']). Data: data.stat.gov.lv, no auth required, CC BY 4.0 (Central Statistical Bureau of Latvia).
| Argument | Type | Description |
|---|---|---|
| query* | array | Array of dimension filters. Each filter selects which values to include for one dimension. Example: [{code:'INDICATOR',selection:{filter:'item',values:['POP_SY']}}, {code:'ContentsCode',selection:{filter:'item',values:['IRS010']}}, {code:'TIME',selection:{filter:'top',values:['1']}}]. Response is JSON-stat2 format with dimension labels and numeric values array. |
| table_path* | string | Full path to the leaf table to query — same as latvia-statistics.table_metadata table_path. Example: 'POP/IR/IRS/IRS010'. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"table_path",
"query"
],
"properties": {
"query": {
"type": "array",
"items": {
"type": "object",
"required": [
"code",
"selection"
],
"properties": {
"code": {
"type": "string",
"description": "Dimension code from latvia-statistics.table_metadata variables[].code. Examples: 'INDICATOR', 'ContentsCode', 'TIME'."
},
"selection": {
"type": "object",
"required": [
"filter",
"values"
],
"properties": {
"filter": {
"type": "string",
"description": "Filter type. Common values: 'item' (select by exact code), 'top' (select N most recent — use with TIME/year dimensions), 'all' (all values). Use the valueSet codes from metadata."
},
"values": {
"type": "array",
"items": {
"type": "string"
},
"description": "Array of value codes to select. Get valid codes from latvia-statistics.table_metadata variables[].values. For filter='item': list codes like ['POP_SY']. For filter='top': list count like ['3'] (3 most recent years). For filter='all': use ['*']."
}
},
"description": "Selection criteria for this dimension.",
"additionalProperties": false
}
},
"description": "Filter for one dimension (variable) in the table.",
"additionalProperties": false
},
"description": "Array of dimension filters. Each filter selects which values to include for one dimension. Example: [{code:'INDICATOR',selection:{filter:'item',values:['POP_SY']}}, {code:'ContentsCode',selection:{filter:'item',values:['IRS010']}}, {code:'TIME',selection:{filter:'top',values:['1']}}]. Response is JSON-stat2 format with dimension labels and numeric values array."
},
"table_path": {
"type": "string",
"description": "Full path to the leaf table to query — same as latvia-statistics.table_metadata table_path. Example: 'POP/IR/IRS/IRS010'."
}
},
"additionalProperties": false
}Search space agencies and commercial launch operators by name — returns agency type (government/commercial/multinational), country, founding year, and description, optionally filtered by a free-text search. Data: ll.thespacedevs.com (The Space Devs), no auth required; free tier is throttled to 15 requests/hour shared across all APIbase agents, so results are cached for 24 hours.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max results to return, 1-20 (default 10) |
| search | string | Free-text search across name/mission/agency fields, e.g. "falcon" or "artemis" |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Max results to return, 1-20 (default 10)"
},
"search": {
"type": "string",
"maxLength": 100,
"minLength": 1,
"description": "Free-text search across name/mission/agency fields, e.g. \"falcon\" or \"artemis\""
}
},
"additionalProperties": false
}Search the global astronaut roster by name — returns astronaut name, active/retired status, and sponsoring space agency, optionally filtered by a free-text search. Data: ll.thespacedevs.com (The Space Devs), no auth required; free tier is throttled to 15 requests/hour shared across all APIbase agents, so results are cached for 24 hours.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max results to return, 1-20 (default 10) |
| search | string | Free-text search across name/mission/agency fields, e.g. "falcon" or "artemis" |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Max results to return, 1-20 (default 10)"
},
"search": {
"type": "string",
"maxLength": 100,
"minLength": 1,
"description": "Free-text search across name/mission/agency fields, e.g. \"falcon\" or \"artemis\""
}
},
"additionalProperties": false
}Get full detail for a single launch by its UUID (from launch-library-2.upcoming_launches results) — mission description, orbit, rocket and pad detail, launch provider, imagery, and probability/weather notes. Data: ll.thespacedevs.com (The Space Devs), no auth required; free tier is throttled to 15 requests/hour shared across all APIbase agents, so results are cached for 1 hour.
| Argument | Type | Description |
|---|---|---|
| id* | string | Launch UUID from launch-library-2.upcoming_launches results, e.g. "521f3a1c-f977-4306-9b7f-495858719adf" |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
"description": "Launch UUID from launch-library-2.upcoming_launches results, e.g. \"521f3a1c-f977-4306-9b7f-495858719adf\""
}
},
"additionalProperties": false
}List upcoming global orbital launches — mission name, launch service provider, rocket configuration, launch window, pad/location, and status — optionally filtered by a free-text search across mission/rocket/agency names. Data: ll.thespacedevs.com (The Space Devs), no auth required; free tier is throttled to 15 requests/hour shared across all APIbase agents, so results are cached for 30 minutes.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max results to return, 1-20 (default 10) |
| search | string | Free-text search across name/mission/agency fields, e.g. "falcon" or "artemis" |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Max results to return, 1-20 (default 10)"
},
"search": {
"type": "string",
"maxLength": 100,
"minLength": 1,
"description": "Free-text search across name/mission/agency fields, e.g. \"falcon\" or \"artemis\""
}
},
"additionalProperties": false
}Search PACER/RECAP federal court dockets — case filings, motions, orders. Filter by court. From the RECAP Archive (CourtListener / Free Law Project)
| Argument | Type | Description |
|---|---|---|
| court | string | Court filter |
| limit | integer | Number of results (default 10) |
| query* | string | Search query for RECAP dockets |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"court": {
"type": "string",
"description": "Court filter"
},
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of results (default 10)"
},
"query": {
"type": "string",
"description": "Search query for RECAP dockets"
}
},
"additionalProperties": false
}Get full text of a US court opinion by ID — author, type, date, download URL. Up to 5,000 characters of opinion text (CourtListener)
| Argument | Type | Description |
|---|---|---|
| opinion_id* | string | Opinion ID from search results |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"opinion_id"
],
"properties": {
"opinion_id": {
"type": "string",
"description": "Opinion ID from search results"
}
},
"additionalProperties": false
}Search US federal and state court opinions — filter by court (scotus, ca9, dcd...), date range, relevance. Largest free US case law archive. 7,000+ AI-related opinions (CourtListener / Free Law Project)
| Argument | Type | Description |
|---|---|---|
| type | string | Search type: "o" (opinions, default) or "r" (RECAP dockets) |
| court | string | Court filter (e.g. "scotus" for Supreme Court, "ca9" for 9th Circuit, "dcd" for DC District) |
| limit | integer | Number of results (default 10, max 20) |
| query* | string | Search query for US court opinions (e.g. "artificial intelligence liability", "Fourth Amendment digital privacy") |
| order_by | string | Sort: relevance (default), newest, oldest |
| filed_after | string | Only cases filed after this date (YYYY-MM-DD) |
| filed_before | string | Only cases filed before this date (YYYY-MM-DD) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"type": {
"enum": [
"o",
"r"
],
"type": "string",
"description": "Search type: \"o\" (opinions, default) or \"r\" (RECAP dockets)"
},
"court": {
"type": "string",
"description": "Court filter (e.g. \"scotus\" for Supreme Court, \"ca9\" for 9th Circuit, \"dcd\" for DC District)"
},
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of results (default 10, max 20)"
},
"query": {
"type": "string",
"description": "Search query for US court opinions (e.g. \"artificial intelligence liability\", \"Fourth Amendment digital privacy\")"
},
"order_by": {
"enum": [
"score desc",
"dateFiled desc",
"dateFiled asc"
],
"type": "string",
"description": "Sort: relevance (default), newest, oldest"
},
"filed_after": {
"type": "string",
"description": "Only cases filed after this date (YYYY-MM-DD)"
},
"filed_before": {
"type": "string",
"description": "Only cases filed before this date (YYYY-MM-DD)"
}
},
"additionalProperties": false
}Get full Federal Register document by number — title, abstract, agencies, effective date, PDF link, comment deadline (Federal Register)
| Argument | Type | Description |
|---|---|---|
| document_number* | string | Federal Register document number (e.g. "2026-12345") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"document_number"
],
"properties": {
"document_number": {
"type": "string",
"description": "Federal Register document number (e.g. \"2026-12345\")"
}
},
"additionalProperties": false
}Latest documents published in the Federal Register — filter by type (rules, proposed rules, notices, presidential). No search query needed (Federal Register)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of results (default 10, max 20) |
| document_type | string | Filter by type (default: all types) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of results (default 10, max 20)"
},
"document_type": {
"enum": [
"RULE",
"PRORULE",
"NOTICE",
"PRESDOCU"
],
"type": "string",
"description": "Filter by type (default: all types)"
}
},
"additionalProperties": false
}Search the US Federal Register — final rules, proposed rules, notices, executive orders. Filter by agency, type, date. 90+ years of official federal government records (Federal Register)
| Argument | Type | Description |
|---|---|---|
| sort | string | Sort order (default: newest) |
| limit | integer | Number of results (default 10, max 20) |
| query | string | Search keywords in Federal Register (e.g. "executive order", "cryptocurrency regulation") |
| agency | string | Agency slug (e.g. "environmental-protection-agency", "securities-and-exchange-commission") |
| document_type | string | Type: RULE (final rule), PRORULE (proposed rule), NOTICE, PRESDOCU (presidential document/executive order) |
| published_after | string | Only documents published after this date (MM/DD/YYYY) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"sort": {
"enum": [
"newest",
"oldest",
"relevance"
],
"type": "string",
"description": "Sort order (default: newest)"
},
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of results (default 10, max 20)"
},
"query": {
"type": "string",
"description": "Search keywords in Federal Register (e.g. \"executive order\", \"cryptocurrency regulation\")"
},
"agency": {
"type": "string",
"description": "Agency slug (e.g. \"environmental-protection-agency\", \"securities-and-exchange-commission\")"
},
"document_type": {
"enum": [
"RULE",
"PRORULE",
"NOTICE",
"PRESDOCU"
],
"type": "string",
"description": "Type: RULE (final rule), PRORULE (proposed rule), NOTICE, PRESDOCU (presidential document/executive order)"
},
"published_after": {
"type": "string",
"description": "Only documents published after this date (MM/DD/YYYY)"
}
},
"additionalProperties": false
}Get full details of a US federal regulatory document by ID — title, abstract, agency, comment count, docket, dates. Public domain (Regulations.gov)
| Argument | Type | Description |
|---|---|---|
| document_id* | string | Document ID from search results (e.g. "FDA-2024-N-0001-0001") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"document_id"
],
"properties": {
"document_id": {
"type": "string",
"description": "Document ID from search results (e.g. \"FDA-2024-N-0001-0001\")"
}
},
"additionalProperties": false
}Search US federal regulatory documents — rules, proposed rules, notices, presidential documents. Filter by agency (EPA, SEC, FDA...), document type, date. 7,500+ results for "artificial intelligence" (Regulations.gov)
| Argument | Type | Description |
|---|---|---|
| sort | string | Sort order (default: -postedDate, newest first) |
| limit | integer | Number of results (default 10, min 5, max 25) |
| query | string | Search keywords in federal regulatory documents (e.g. "artificial intelligence", "climate change") |
| agency | string | Filter by agency ID (e.g. "EPA", "SEC", "FDA") |
| posted_after | string | Only documents posted after this date (YYYY-MM-DD) |
| document_type | string | Filter by document type |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"sort": {
"enum": [
"postedDate",
"-postedDate",
"title",
"documentId"
],
"type": "string",
"description": "Sort order (default: -postedDate, newest first)"
},
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 5,
"description": "Number of results (default 10, min 5, max 25)"
},
"query": {
"type": "string",
"description": "Search keywords in federal regulatory documents (e.g. \"artificial intelligence\", \"climate change\")"
},
"agency": {
"type": "string",
"description": "Filter by agency ID (e.g. \"EPA\", \"SEC\", \"FDA\")"
},
"posted_after": {
"type": "string",
"description": "Only documents posted after this date (YYYY-MM-DD)"
},
"document_type": {
"enum": [
"Rule",
"Proposed Rule",
"Notice",
"Presidential Document"
],
"type": "string",
"description": "Filter by document type"
}
},
"additionalProperties": false
}Top N players in a chess variant (bullet, blitz, rapid, classical, ultraBullet, chess960, crazyhouse, antichess, atomic, horde, kingOfTheHill, racingKings, threeCheck). Returns username, rating, country.
| Argument | Type | Description |
|---|---|---|
| nb | integer | Number of top players to return (1–200). Defaults to 10. |
| perf_type* | string | Chess variant to rank players by. One of: bullet, blitz, rapid, classical, ultraBullet, chess960, crazyhouse, antichess, atomic, horde, kingOfTheHill, racingKings, threeCheck. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"perf_type"
],
"properties": {
"nb": {
"type": "integer",
"default": 10,
"maximum": 200,
"minimum": 1,
"description": "Number of top players to return (1–200). Defaults to 10."
},
"perf_type": {
"enum": [
"bullet",
"blitz",
"rapid",
"classical",
"ultraBullet",
"chess960",
"crazyhouse",
"antichess",
"atomic",
"horde",
"kingOfTheHill",
"racingKings",
"threeCheck"
],
"type": "string",
"description": "Chess variant to rank players by. One of: bullet, blitz, rapid, classical, ultraBullet, chess960, crazyhouse, antichess, atomic, horde, kingOfTheHill, racingKings, threeCheck."
}
},
"additionalProperties": false
}Get today's Lichess daily puzzle — puzzle ID, FEN position, solution moves, theme, rating difficulty.
| Argument | Type | Description |
|---|---|---|
| _unused | string | Reserved for future filtering — not currently used. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"_unused": {
"type": "string",
"description": "Reserved for future filtering — not currently used."
}
},
"additionalProperties": false
}Get a Lichess user's profile — username, ratings across variants (bullet/blitz/rapid/classical/correspondence/puzzle), games played, online status, profile bio, country, language.
| Argument | Type | Description |
|---|---|---|
| username* | string | Lichess username (2–30 characters, lowercase letters, digits, and underscores). Example: "DrNykterstein". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"username"
],
"properties": {
"username": {
"type": "string",
"maxLength": 30,
"minLength": 2,
"description": "Lichess username (2–30 characters, lowercase letters, digits, and underscores). Example: \"DrNykterstein\"."
}
},
"additionalProperties": false
}National weekly boxed beef cutout and individual cut prices (LM_XB459). Returns composite primal values (rib, chuck, round, loin, brisket, plate, flank), Choice and Select cutout values, individual box/cut prices by grade, ground beef, and trimming prices. Published Thursdays. Source: USDA LMPR Datamart, US Government public domain.
| Argument | Type | Description |
|---|---|---|
| report_date | string | Report date in YYYY-MM-DD or M/D/YYYY format (e.g. "2026-06-27"). Omit for the most recent published report. |
| all_sections | boolean | Return all report sections (price detail, primal values, etc.). Default true. Set false for summary only. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"report_date": {
"type": "string",
"description": "Report date in YYYY-MM-DD or M/D/YYYY format (e.g. \"2026-06-27\"). Omit for the most recent published report."
},
"all_sections": {
"type": "boolean",
"default": true,
"description": "Return all report sections (price detail, primal values, etc.). Default true. Set false for summary only."
}
},
"additionalProperties": false
}5-Area daily weighted-average direct slaughter cattle prices (LM_CT100). Returns head counts, price ranges ($/cwt), and weighted averages by class (steer/heifer) and selling basis (live FOB, dressed delivered, dressed FOB). Covers TX/OK/NM, Kansas, Nebraska, Colorado, and Iowa/Minnesota feedlot regions combined. Published daily on USDA business days. Source: USDA Livestock Mandatory Price Reporting Datamart, US Government public domain.
| Argument | Type | Description |
|---|---|---|
| report_date | string | Report date in YYYY-MM-DD or M/D/YYYY format (e.g. "2026-06-27"). Omit for the most recent published report. |
| all_sections | boolean | Return all report sections (price detail, primal values, etc.). Default true. Set false for summary only. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"report_date": {
"type": "string",
"description": "Report date in YYYY-MM-DD or M/D/YYYY format (e.g. \"2026-06-27\"). Omit for the most recent published report."
},
"all_sections": {
"type": "boolean",
"default": true,
"description": "Return all report sections (price detail, primal values, etc.). Default true. Set false for summary only."
}
},
"additionalProperties": false
}National weekly dairy products sales prices (DYWDAIRYPRODUCTSSALES). Returns mandatory-reporting prices and volumes for butter, 40-lb block cheddar cheese, 500-lb barrel cheddar, dry whey, and nonfat dry milk. Includes preliminary and final weekly prices used in FMMO pricing formulas. Published weekly by USDA Agricultural Marketing Service. Source: USDA LMPR Datamart, US Government public domain.
| Argument | Type | Description |
|---|---|---|
| report_date | string | Report date in YYYY-MM-DD or M/D/YYYY format (e.g. "2026-06-27"). Omit for the most recent published report. |
| all_sections | boolean | Return all report sections (price detail, primal values, etc.). Default true. Set false for summary only. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"report_date": {
"type": "string",
"description": "Report date in YYYY-MM-DD or M/D/YYYY format (e.g. \"2026-06-27\"). Omit for the most recent published report."
},
"all_sections": {
"type": "boolean",
"default": true,
"description": "Return all report sections (price detail, primal values, etc.). Default true. Set false for summary only."
}
},
"additionalProperties": false
}National daily prior-day slaughtered swine prices (LM_HG201). Returns barrows/gilts head counts, negotiated base prices ($/cwt), carcass weight ranges, net price distribution (lean value, fat, bone, yield adjustments), and 14-day scheduled swine commitments. Covers Corn Belt and national markets. Published daily on USDA business days. Source: USDA LMPR Datamart, US Government public domain.
| Argument | Type | Description |
|---|---|---|
| report_date | string | Report date in YYYY-MM-DD or M/D/YYYY format (e.g. "2026-06-27"). Omit for the most recent published report. |
| all_sections | boolean | Return all report sections (price detail, primal values, etc.). Default true. Set false for summary only. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"report_date": {
"type": "string",
"description": "Report date in YYYY-MM-DD or M/D/YYYY format (e.g. \"2026-06-27\"). Omit for the most recent published report."
},
"all_sections": {
"type": "boolean",
"default": true,
"description": "Return all report sections (price detail, primal values, etc.). Default true. Set false for summary only."
}
},
"additionalProperties": false
}National estimated lamb carcass cutout value (LM_XL502). Returns gross carcass value, foresaddle value (rib, shoulder, breast/neck), hindsaddle value (leg, loin), net carcass value, and other byproduct values (pelt, offal). Published daily on USDA business days. Source: USDA LMPR Datamart, US Government public domain.
| Argument | Type | Description |
|---|---|---|
| report_date | string | Report date in YYYY-MM-DD or M/D/YYYY format (e.g. "2026-06-27"). Omit for the most recent published report. |
| all_sections | boolean | Return all report sections (price detail, primal values, etc.). Default true. Set false for summary only. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"report_date": {
"type": "string",
"description": "Report date in YYYY-MM-DD or M/D/YYYY format (e.g. \"2026-06-27\"). Omit for the most recent published report."
},
"all_sections": {
"type": "boolean",
"default": true,
"description": "Return all report sections (price detail, primal values, etc.). Default true. Set false for summary only."
}
},
"additionalProperties": false
}Track a DHL shipment by tracking number — returns current status, delivery events timeline, origin/destination, estimated delivery date, and service type. Supports all DHL services: Express, Parcel, eCommerce, Freight. Official DHL data for 220+ countries (DHL)
| Argument | Type | Description |
|---|---|---|
| tracking_number* | string | DHL tracking number (e.g. "00340434292135100186" for DHL Paket, "1234567890" for DHL Express). Supports all DHL services: Express, Parcel, eCommerce, Freight |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"tracking_number"
],
"properties": {
"tracking_number": {
"type": "string",
"minLength": 1,
"description": "DHL tracking number (e.g. \"00340434292135100186\" for DHL Paket, \"1234567890\" for DHL Express). Supports all DHL services: Express, Parcel, eCommerce, Freight"
}
},
"additionalProperties": false
}List all connected shipping carriers with their IDs and codes. Shows which carriers are available for rate comparison (USPS, UPS, FedEx, DHL, etc.) (ShipEngine)
| Argument | Type | Description |
|---|---|---|
| filter | string | Optional filter on carrier name (e.g. "ups", "usps"). Returns all connected carriers if omitted |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"filter": {
"type": "string",
"description": "Optional filter on carrier name (e.g. \"ups\", \"usps\"). Returns all connected carriers if omitted"
}
},
"additionalProperties": false
}Compare shipping rates across multiple carriers (USPS, UPS, FedEx, DHL) for a package. Provide origin/destination ZIP codes, weight in pounds, and optional dimensions. Returns sorted rates with price, delivery time, and service type. Up to 84% off retail rates (ShipEngine)
| Argument | Type | Description |
|---|---|---|
| width | number | Package width in inches |
| height | number | Package height in inches |
| length | number | Package length in inches |
| to_zip* | string | Destination US ZIP code (e.g. "90210" for Beverly Hills) |
| from_zip* | string | Origin US ZIP code (e.g. "10001" for NYC) |
| weight_lb* | number | Package weight in pounds (e.g. 5) |
| to_country | string | Destination country code (default US) |
| from_country | string | Origin country code (default US) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"from_zip",
"to_zip",
"weight_lb"
],
"properties": {
"width": {
"type": "number",
"description": "Package width in inches"
},
"height": {
"type": "number",
"description": "Package height in inches"
},
"length": {
"type": "number",
"description": "Package length in inches"
},
"to_zip": {
"type": "string",
"minLength": 1,
"description": "Destination US ZIP code (e.g. \"90210\" for Beverly Hills)"
},
"from_zip": {
"type": "string",
"minLength": 1,
"description": "Origin US ZIP code (e.g. \"10001\" for NYC)"
},
"weight_lb": {
"type": "number",
"minimum": 0.1,
"description": "Package weight in pounds (e.g. 5)"
},
"to_country": {
"type": "string",
"default": "US",
"description": "Destination country code (default US)"
},
"from_country": {
"type": "string",
"default": "US",
"description": "Origin country code (default US)"
}
},
"additionalProperties": false
}Validate and standardize a US address — returns USPS-verified address with corrected spelling, ZIP+4, and validation status. Catches typos, missing info, and invalid addresses before shipping (ShipEngine)
| Argument | Type | Description |
|---|---|---|
| city | string | City name (e.g. "Bronx") |
| state | string | State code (e.g. "NY") |
| country | string | Country code (default US) |
| postal_code | string | ZIP code (e.g. "10451") |
| address_line1* | string | Street address (e.g. "1 E 161 St") |
| address_line2 | string | Apartment, suite, unit (e.g. "Apt 4B") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"address_line1"
],
"properties": {
"city": {
"type": "string",
"description": "City name (e.g. \"Bronx\")"
},
"state": {
"type": "string",
"description": "State code (e.g. \"NY\")"
},
"country": {
"type": "string",
"default": "US",
"description": "Country code (default US)"
},
"postal_code": {
"type": "string",
"description": "ZIP code (e.g. \"10451\")"
},
"address_line1": {
"type": "string",
"minLength": 1,
"description": "Street address (e.g. \"1 E 161 St\")"
},
"address_line2": {
"type": "string",
"description": "Apartment, suite, unit (e.g. \"Apt 4B\")"
}
},
"additionalProperties": false
}List all tracking numbers registered in your account with status summary — package status, latest event, transit days, registration time. Paginated. Filter by status: NotFound, InTransit, Delivered, Expired, Exception (17TRACK)
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number (default 1) |
| status | string | Filter by package status |
| page_size | integer | Results per page (1-100, default 20) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"default": 1,
"minimum": 1,
"description": "Page number (default 1)"
},
"status": {
"enum": [
"NotFound",
"InTransit",
"Delivered",
"Expired",
"Exception"
],
"type": "string",
"description": "Filter by package status"
},
"page_size": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1,
"description": "Results per page (1-100, default 20)"
}
},
"additionalProperties": false
}⚡ ACTION: Register a tracking number to begin monitoring shipment status. Auto-detects carrier from 3,200+ supported carriers worldwide (UPS, FedEx, DHL, USPS, China Post, Royal Mail, etc.). Must be called before tracking.status. Returns detected carrier and registration status. Consumes quota — 200 free/month (17TRACK)
| Argument | Type | Description |
|---|---|---|
| tag | string | Optional label for this shipment (e.g. order ID, customer reference). Up to 50 characters |
| tracking_number* | string | Package tracking number (e.g. "1Z999AA10123456784" for UPS, "9400111899560243888780" for USPS). Carrier is auto-detected from 3,200+ supported carriers |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"tracking_number"
],
"properties": {
"tag": {
"type": "string",
"maxLength": 50,
"description": "Optional label for this shipment (e.g. order ID, customer reference). Up to 50 characters"
},
"tracking_number": {
"type": "string",
"maxLength": 50,
"minLength": 3,
"description": "Package tracking number (e.g. \"1Z999AA10123456784\" for UPS, \"9400111899560243888780\" for USPS). Carrier is auto-detected from 3,200+ supported carriers"
}
},
"additionalProperties": false
}Get full tracking timeline for a registered package — latest status, all carrier scan events with timestamps and locations, delivery milestones, transit days, origin/destination countries. Supports 3,200+ carriers across 220 countries. Call tracking.register first if number is not yet registered (17TRACK)
| Argument | Type | Description |
|---|---|---|
| tracking_number* | string | Tracking number previously registered with tracking.register. Returns full event timeline, carrier info, milestones, and delivery status |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"tracking_number"
],
"properties": {
"tracking_number": {
"type": "string",
"maxLength": 50,
"minLength": 3,
"description": "Tracking number previously registered with tracking.register. Returns full event timeline, carrier info, milestones, and delivery status"
}
},
"additionalProperties": false
}Search worldwide stratigraphic columns (a summary of the rock units at one location) by point location (lat/lng), stratigraphic name, chronostratigraphic time interval, lithology, or geologic age (Ma). Returns column IDs, names, coordinates, area, and thickness — use the returned col_id with macrostrat.units_search or macrostrat.fossils_search. Data: macrostrat.org/api/v2, no auth required, CC BY 4.0.
| Argument | Type | Description |
|---|---|---|
| age | number | Numerical age in millions of years before present (Ma) |
| lat | number | Decimal degree latitude (WGS84) — must be supplied together with lng |
| lng | number | Decimal degree longitude (WGS84) — must be supplied together with lat |
| lith | string | Lithology name to filter by, e.g. "sandstone" or "shale" |
| age_top | number | Younger bound of an age range in Ma — must be used with age_bottom |
| adjacents | boolean | If lat+lng given, also return columns touching the same polygon (default false) |
| age_bottom | number | Older bound of an age range in Ma — must be used with age_top |
| strat_name | string | Fuzzy stratigraphic name to match, e.g. "mancos" or "jordan" |
| interval_name | string | Chronostratigraphic time interval name, e.g. "Permian" or "Cretaceous" |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"age": {
"type": "number",
"description": "Numerical age in millions of years before present (Ma)"
},
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Decimal degree latitude (WGS84) — must be supplied together with lng"
},
"lng": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Decimal degree longitude (WGS84) — must be supplied together with lat"
},
"lith": {
"type": "string",
"description": "Lithology name to filter by, e.g. \"sandstone\" or \"shale\""
},
"age_top": {
"type": "number",
"description": "Younger bound of an age range in Ma — must be used with age_bottom"
},
"adjacents": {
"type": "boolean",
"description": "If lat+lng given, also return columns touching the same polygon (default false)"
},
"age_bottom": {
"type": "number",
"description": "Older bound of an age range in Ma — must be used with age_top"
},
"strat_name": {
"type": "string",
"description": "Fuzzy stratigraphic name to match, e.g. \"mancos\" or \"jordan\""
},
"interval_name": {
"type": "string",
"description": "Chronostratigraphic time interval name, e.g. \"Permian\" or \"Cretaceous\""
}
},
"additionalProperties": false
}Get Paleobiology Database (PBDB) fossil collections matched to a Macrostrat stratigraphic column or rock unit, looked up by col_id or unit_id (from macrostrat.columns_search / macrostrat.units_search), optionally narrowed by chronostratigraphic interval name. Returns collection names, ages, and PBDB occurrence counts. Data: macrostrat.org/api/v2, no auth required, CC BY 4.0.
| Argument | Type | Description |
|---|---|---|
| col_id | integer | Macrostrat column ID (from macrostrat.columns_search) to find fossil collections in |
| unit_id | integer | Macrostrat unit ID (from macrostrat.units_search) to find fossil collections in |
| interval_name | string | Optional chronostratigraphic interval name to further narrow results within col_id/unit_id |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"col_id": {
"type": "integer",
"description": "Macrostrat column ID (from macrostrat.columns_search) to find fossil collections in"
},
"unit_id": {
"type": "integer",
"description": "Macrostrat unit ID (from macrostrat.units_search) to find fossil collections in"
},
"interval_name": {
"type": "string",
"description": "Optional chronostratigraphic interval name to further narrow results within col_id/unit_id"
}
},
"additionalProperties": false
}Get the bedrock geologic map unit(s) at a specific point location (surface geology): formation/unit name, dominant lithology, description, age range, and recommended map color, sourced from compiled state/national geologic maps. Data: macrostrat.org/api/v2 /geologic_units/map, no auth required, CC BY 4.0.
| Argument | Type | Description |
|---|---|---|
| lat* | number | Decimal degree latitude (WGS84) |
| lng* | number | Decimal degree longitude (WGS84) |
| scale | string | Geologic map source scale (default returns the best-available match) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lng"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Decimal degree latitude (WGS84)"
},
"lng": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Decimal degree longitude (WGS84)"
},
"scale": {
"enum": [
"small",
"medium",
"large"
],
"type": "string",
"description": "Geologic map source scale (default returns the best-available match)"
}
},
"additionalProperties": false
}Get the rock units (formation/member/group names, top/bottom age in millions of years, thickness, lithology, and depositional environment) that make up a stratigraphic column, looked up by col_id (from macrostrat.columns_search) or by a lat/lng point. Data: macrostrat.org/api/v2, no auth required, CC BY 4.0.
| Argument | Type | Description |
|---|---|---|
| lat | number | Decimal degree latitude (WGS84) — must be supplied together with lng |
| lng | number | Decimal degree longitude (WGS84) — must be supplied together with lat |
| col_id | integer | Macrostrat column ID (from macrostrat.columns_search) to list rock units for |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Decimal degree latitude (WGS84) — must be supplied together with lng"
},
"lng": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Decimal degree longitude (WGS84) — must be supplied together with lat"
},
"col_id": {
"type": "integer",
"description": "Macrostrat column ID (from macrostrat.columns_search) to list rock units for"
}
},
"additionalProperties": false
}Search Anopheles mosquito vector-occurrence records: collection site, survey period, species identification, and sampling method, optionally filtered by country and/or a species-name substring (e.g. "gambiae"). Data: Malaria Atlas Project GeoServer WFS (data.malariaatlas.org), no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of vector occurrence records to return (1-200). Defaults to 50. |
| country | string | ISO3166 alpha-3 country code to filter mosquito vector records (e.g. "SDN"). |
| species | string | Case-insensitive substring match on the Anopheles species name (e.g. "gambiae", "arabiensis"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Maximum number of vector occurrence records to return (1-200). Defaults to 50."
},
"country": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO3166 alpha-3 country code to filter mosquito vector records (e.g. \"SDN\")."
},
"species": {
"type": "string",
"maxLength": 60,
"minLength": 1,
"description": "Case-insensitive substring match on the Anopheles species name (e.g. \"gambiae\", \"arabiensis\")."
}
},
"additionalProperties": false
}Get modeled confirmed malaria case counts (P. falciparum or P. vivax) per admin1 region (state/province) and year for a country, covering 1980-2017, alongside total population for that region/year. Use malaria-atlas.country_list first to find a valid ISO3 country code. Data: Malaria Atlas Project GeoServer WFS (data.malariaatlas.org), no auth required.
| Argument | Type | Description |
|---|---|---|
| year | integer | Filter to a single calendar year (1980-2017). Omit to return all available years. |
| limit | integer | Maximum number of admin1-region/year rows to return (1-500). Defaults to 50. |
| country* | string | ISO3166 alpha-3 country code to get confirmed case estimates for (e.g. "IDN"). |
| species* | string | Malaria parasite species: "pf" (Plasmodium falciparum) or "pv" (Plasmodium vivax). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"species",
"country"
],
"properties": {
"year": {
"type": "integer",
"maximum": 2017,
"minimum": 1980,
"description": "Filter to a single calendar year (1980-2017). Omit to return all available years."
},
"limit": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Maximum number of admin1-region/year rows to return (1-500). Defaults to 50."
},
"country": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO3166 alpha-3 country code to get confirmed case estimates for (e.g. \"IDN\")."
},
"species": {
"enum": [
"pf",
"pv"
],
"type": "string",
"description": "Malaria parasite species: \"pf\" (Plasmodium falciparum) or \"pv\" (Plasmodium vivax)."
}
},
"additionalProperties": false
}Search point-level malaria parasite-rate survey records for P. falciparum (pf) or P. vivax (pv): site location, survey period, number examined, positive count, and parasite rate (pr), optionally filtered by country. Data: Malaria Atlas Project GeoServer WFS (data.malariaatlas.org), no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of survey records to return (1-200). Defaults to 50. |
| country | string | ISO3166 alpha-3 country code to filter surveys (e.g. "KEN"). Omit for all countries. |
| species* | string | Malaria parasite species: "pf" (Plasmodium falciparum) or "pv" (Plasmodium vivax). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"species"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Maximum number of survey records to return (1-200). Defaults to 50."
},
"country": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO3166 alpha-3 country code to filter surveys (e.g. \"KEN\"). Omit for all countries."
},
"species": {
"enum": [
"pf",
"pv"
],
"type": "string",
"description": "Malaria parasite species: \"pf\" (Plasmodium falciparum) or \"pv\" (Plasmodium vivax)."
}
},
"additionalProperties": false
}List countries covered by Malaria Atlas Project admin boundaries with their ISO3/ISO2 codes and name, optionally filtered by a name substring. Use the returned iso code as the `country` filter for the other malaria-atlas tools. Data: Malaria Atlas Project GeoServer WFS (data.malariaatlas.org), no auth required.
| Argument | Type | Description |
|---|---|---|
| name | string | Case-insensitive substring filter on the country name (e.g. "kenya"). |
| limit | integer | Maximum number of countries to return (1-250). Defaults to 50. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"name": {
"type": "string",
"maxLength": 60,
"minLength": 1,
"description": "Case-insensitive substring filter on the country name (e.g. \"kenya\")."
},
"limit": {
"type": "integer",
"maximum": 250,
"minimum": 1,
"description": "Maximum number of countries to return (1-250). Defaults to 50."
}
},
"additionalProperties": false
}Get recent earthquake reports relevant to Malaysia from MET Malaysia: time, location, depth, magnitude and distance to the nearest Malaysian and regional places.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of records to return (1-100, default 20) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of records to return (1-100, default 20)"
}
},
"additionalProperties": false
}Get Malaysian river water-level and rainfall station readings (JPS) with alert/warning/danger thresholds and trend, filterable by state and district.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of records to return (1-100, default 20) |
| state | string | Malaysian state in upper case (e.g. "PAHANG", "SELANGOR") |
| district | string | District name (e.g. "Raub", "Klang") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of records to return (1-100, default 20)"
},
"state": {
"type": "string",
"description": "Malaysian state in upper case (e.g. \"PAHANG\", \"SELANGOR\")"
},
"district": {
"type": "string",
"description": "District name (e.g. \"Raub\", \"Klang\")"
}
},
"additionalProperties": false
}Query any Malaysian government open dataset by ID from the data.gov.my data catalogue or OpenDOSM (fuel prices, CPI, population, trade and more) with filters, date range, sort and limit.
| Argument | Type | Description |
|---|---|---|
| id* | string | Dataset ID from data.gov.my catalogue (e.g. "fuelprice", "cpi_headline") |
| sort | string | Comma-separated columns to sort by; prefix "-" for descending (e.g. "-date") |
| limit | integer | Maximum number of records to return (1-100, default 20) |
| filter | string | Exact-match filter in "value@column" form (e.g. "overall@division") |
| source | string | Dataset source: "data-catalogue" (default) or "opendosm" (Dept. of Statistics) |
| contains | string | Partial-match filter in "value@column" form (e.g. "kuala@state") |
| date_end | string | End date filter, YYYY-MM-DD |
| date_start | string | Start date filter, YYYY-MM-DD |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "Dataset ID from data.gov.my catalogue (e.g. \"fuelprice\", \"cpi_headline\")"
},
"sort": {
"type": "string",
"description": "Comma-separated columns to sort by; prefix \"-\" for descending (e.g. \"-date\")"
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of records to return (1-100, default 20)"
},
"filter": {
"type": "string",
"description": "Exact-match filter in \"value@column\" form (e.g. \"overall@division\")"
},
"source": {
"enum": [
"data-catalogue",
"opendosm"
],
"type": "string",
"description": "Dataset source: \"data-catalogue\" (default) or \"opendosm\" (Dept. of Statistics)"
},
"contains": {
"type": "string",
"description": "Partial-match filter in \"value@column\" form (e.g. \"kuala@state\")"
},
"date_end": {
"type": "string",
"description": "End date filter, YYYY-MM-DD"
},
"date_start": {
"type": "string",
"description": "Start date filter, YYYY-MM-DD"
}
},
"additionalProperties": false
}Get the Malaysian Meteorological Department 7-day forecast by location: morning/afternoon/night conditions and min/max temperature (Malay-language summaries).
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of records to return (1-100, default 20) |
| date_end | string | Latest forecast date, YYYY-MM-DD |
| date_start | string | Earliest forecast date, YYYY-MM-DD |
| location_name | string | Location name to match (e.g. "Langkawi", "Kuala Lumpur", "Kota Kinabalu") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of records to return (1-100, default 20)"
},
"date_end": {
"type": "string",
"description": "Latest forecast date, YYYY-MM-DD"
},
"date_start": {
"type": "string",
"description": "Earliest forecast date, YYYY-MM-DD"
},
"location_name": {
"type": "string",
"description": "Location name to match (e.g. \"Langkawi\", \"Kuala Lumpur\", \"Kota Kinabalu\")"
}
},
"additionalProperties": false
}Get current Malaysian Meteorological Department weather warnings: strong winds, rough seas, thunderstorms and heavy rain with validity period and full text.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of records to return (1-100, default 20) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of records to return (1-100, default 20)"
}
},
"additionalProperties": false
}Full hourly marine forecast at any ocean coordinate up to 16 days ahead. Returns all marine variables: significant wave height (m), mean wave direction (°), mean wave period (s), swell wave height (m), swell direction (°), swell period (s), and sea surface temperature (°C). Data is sourced from CMEMS ERA5 reanalysis and global wave models (ERA5-Ocean, MEPS, GFS). Ideal for offshore operations, ship routing, marine research, and multi-variable coastal planning. Supply latitude/longitude of an open-ocean or coastal point; land coordinates return null values. Source: Open-Meteo Marine API, CC BY 4.0, no authentication required.
| Argument | Type | Description |
|---|---|---|
| latitude* | number | Latitude of the ocean location in decimal degrees (e.g. 51.5 for English Channel, 48.5 for Bay of Biscay). Must be over open water — land coordinates return null values. |
| timezone | string | Timezone for the returned time values (e.g. "UTC", "Europe/London", "America/New_York"). Defaults to UTC. |
| longitude* | number | Longitude of the ocean location in decimal degrees (e.g. -14.0 for Atlantic, 2.3 for North Sea). |
| forecast_days | integer | Number of days to forecast (1–16). Defaults to 7. Hourly data is returned for each day. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude"
],
"properties": {
"latitude": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude of the ocean location in decimal degrees (e.g. 51.5 for English Channel, 48.5 for Bay of Biscay). Must be over open water — land coordinates return null values."
},
"timezone": {
"type": "string",
"description": "Timezone for the returned time values (e.g. \"UTC\", \"Europe/London\", \"America/New_York\"). Defaults to UTC."
},
"longitude": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude of the ocean location in decimal degrees (e.g. -14.0 for Atlantic, 2.3 for North Sea)."
},
"forecast_days": {
"type": "integer",
"maximum": 16,
"minimum": 1,
"description": "Number of days to forecast (1–16). Defaults to 7. Hourly data is returned for each day."
}
},
"additionalProperties": false
}Hourly swell forecast at an ocean coordinate — swell wave height (m), swell direction (°), and swell period (s) for up to 16 days. Swell consists of wind-generated waves that have propagated far from their origin, typically with longer periods (>10s) and more regular patterns than wind-sea. High-period swell (>12s) is ideal for surfing; low-period swell (<6s) indicates local chop. Swell direction indicates where the swell is coming from (degrees clockwise from north). Useful for surf forecasting, sailing passage planning, and aquaculture site assessment. Source: Open-Meteo Marine API, CC BY 4.0, no authentication required.
| Argument | Type | Description |
|---|---|---|
| latitude* | number | Latitude of the ocean location in decimal degrees (e.g. 51.5 for English Channel, 48.5 for Bay of Biscay). Must be over open water — land coordinates return null values. |
| timezone | string | Timezone for the returned time values (e.g. "UTC", "Europe/London", "America/New_York"). Defaults to UTC. |
| longitude* | number | Longitude of the ocean location in decimal degrees (e.g. -14.0 for Atlantic, 2.3 for North Sea). |
| forecast_days | integer | Number of days to forecast (1–16). Defaults to 7. Hourly data is returned for each day. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude"
],
"properties": {
"latitude": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude of the ocean location in decimal degrees (e.g. 51.5 for English Channel, 48.5 for Bay of Biscay). Must be over open water — land coordinates return null values."
},
"timezone": {
"type": "string",
"description": "Timezone for the returned time values (e.g. \"UTC\", \"Europe/London\", \"America/New_York\"). Defaults to UTC."
},
"longitude": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude of the ocean location in decimal degrees (e.g. -14.0 for Atlantic, 2.3 for North Sea)."
},
"forecast_days": {
"type": "integer",
"maximum": 16,
"minimum": 1,
"description": "Number of days to forecast (1–16). Defaults to 7. Hourly data is returned for each day."
}
},
"additionalProperties": false
}Hourly sea surface temperature (SST) forecast in degrees Celsius at an ocean coordinate for up to 16 days. SST is the temperature of the top layer of the ocean (~1m depth) and affects weather patterns, marine ecosystems, and fishing conditions. Useful for coral bleaching risk assessment, fishery management, coastal tourism planning, and climate monitoring. Returns time-indexed hourly values; null indicates no data (land areas or model gaps). Source: Open-Meteo Marine API, CC BY 4.0, no authentication required.
| Argument | Type | Description |
|---|---|---|
| latitude* | number | Latitude of the ocean location in decimal degrees (e.g. 51.5 for English Channel, 48.5 for Bay of Biscay). Must be over open water — land coordinates return null values. |
| timezone | string | Timezone for the returned time values (e.g. "UTC", "Europe/London", "America/New_York"). Defaults to UTC. |
| longitude* | number | Longitude of the ocean location in decimal degrees (e.g. -14.0 for Atlantic, 2.3 for North Sea). |
| forecast_days | integer | Number of days to forecast (1–16). Defaults to 7. Hourly data is returned for each day. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude"
],
"properties": {
"latitude": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude of the ocean location in decimal degrees (e.g. 51.5 for English Channel, 48.5 for Bay of Biscay). Must be over open water — land coordinates return null values."
},
"timezone": {
"type": "string",
"description": "Timezone for the returned time values (e.g. \"UTC\", \"Europe/London\", \"America/New_York\"). Defaults to UTC."
},
"longitude": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude of the ocean location in decimal degrees (e.g. -14.0 for Atlantic, 2.3 for North Sea)."
},
"forecast_days": {
"type": "integer",
"maximum": 16,
"minimum": 1,
"description": "Number of days to forecast (1–16). Defaults to 7. Hourly data is returned for each day."
}
},
"additionalProperties": false
}Hourly wave conditions forecast at an ocean coordinate — wave height (m), wave direction (°), and wave period (s) for up to 16 days. Wave height is significant wave height (average of the highest third of waves). Wave direction is the mean direction from which waves are coming (degrees clockwise from north). Wave period is the mean time between successive wave crests in seconds. Useful for surfing spot reports, ferry/vessel routing, coastal engineering assessments, and storm monitoring. Source: Open-Meteo Marine API, CC BY 4.0, no authentication required.
| Argument | Type | Description |
|---|---|---|
| latitude* | number | Latitude of the ocean location in decimal degrees (e.g. 51.5 for English Channel, 48.5 for Bay of Biscay). Must be over open water — land coordinates return null values. |
| timezone | string | Timezone for the returned time values (e.g. "UTC", "Europe/London", "America/New_York"). Defaults to UTC. |
| longitude* | number | Longitude of the ocean location in decimal degrees (e.g. -14.0 for Atlantic, 2.3 for North Sea). |
| forecast_days | integer | Number of days to forecast (1–16). Defaults to 7. Hourly data is returned for each day. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude"
],
"properties": {
"latitude": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude of the ocean location in decimal degrees (e.g. 51.5 for English Channel, 48.5 for Bay of Biscay). Must be over open water — land coordinates return null values."
},
"timezone": {
"type": "string",
"description": "Timezone for the returned time values (e.g. \"UTC\", \"Europe/London\", \"America/New_York\"). Defaults to UTC."
},
"longitude": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude of the ocean location in decimal degrees (e.g. -14.0 for Atlantic, 2.3 for North Sea)."
},
"forecast_days": {
"type": "integer",
"maximum": 16,
"minimum": 1,
"description": "Number of days to forecast (1–16). Defaults to 7. Hourly data is returned for each day."
}
},
"additionalProperties": false
}Get active Boston MBTA service disruption alerts — delays, cancellations, detours, shuttle buses, station closures, and elevator/escalator outages. Returns alert header, effect type, cause, severity (0–10), lifecycle status, affected routes and stops, and active time period. Filter by route ID (e.g. "Red"), stop ID, minimum severity, lifecycle (ONGOING/UPCOMING/NEW), or effect type (DELAY/CANCELLATION/SHUTTLE/DETOUR/SUSPENSION). Severity 7+ = moderate disruption; 9–10 = major service change. MassDOT Open Data License, real-time data, no upstream cost.
| Argument | Type | Description |
|---|---|---|
| stop | string | Filter alerts by stop ID (e.g. "place-sstat" for South Station). Use mbta-transit.stops to get IDs. |
| limit | integer | Maximum number of alerts to return (default 20, max 50) |
| route | string | Filter alerts by route ID (e.g. "Red", "Green-B", "1", "CR-Providence"). Use mbta-transit.routes to get IDs. |
| effect | string | Filter by disruption effect type: "DELAY", "CANCELLATION", "SUSPENSION", "SHUTTLE", "DETOUR", "STATION_CLOSURE", etc. |
| severity | integer | Minimum severity level 0–10: 0–3=informational, 4–6=minor disruption, 7–8=moderate, 9–10=major/shutdown. Omit for all. |
| lifecycle | string | Filter by alert lifecycle: "ONGOING" (active now), "UPCOMING" (future planned), "NEW" (just created) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"stop": {
"type": "string",
"description": "Filter alerts by stop ID (e.g. \"place-sstat\" for South Station). Use mbta-transit.stops to get IDs."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of alerts to return (default 20, max 50)"
},
"route": {
"type": "string",
"description": "Filter alerts by route ID (e.g. \"Red\", \"Green-B\", \"1\", \"CR-Providence\"). Use mbta-transit.routes to get IDs."
},
"effect": {
"enum": [
"ACCESS_ISSUE",
"ADDITIONAL_SERVICE",
"CANCELLATION",
"DELAY",
"DETOUR",
"DOCK_CLOSURE",
"DOCK_ISSUE",
"EXTRA_SERVICE",
"FACILITY_ISSUE",
"MODIFIED_SERVICE",
"NO_SERVICE",
"OTHER_EFFECT",
"PARKING_CLOSURE",
"PARKING_ISSUE",
"POLICY_CHANGE",
"SCHEDULE_CHANGE",
"SERVICE_CHANGE",
"SHUTTLE",
"SNOW_ROUTE",
"STATION_CLOSURE",
"STATION_ISSUE",
"STOP_CLOSURE",
"STOP_MOVE",
"STOP_SHOVELING",
"SUMMARY",
"SUSPENSION",
"TRACK_CHANGE"
],
"type": "string",
"description": "Filter by disruption effect type: \"DELAY\", \"CANCELLATION\", \"SUSPENSION\", \"SHUTTLE\", \"DETOUR\", \"STATION_CLOSURE\", etc."
},
"severity": {
"type": "integer",
"maximum": 10,
"minimum": 0,
"description": "Minimum severity level 0–10: 0–3=informational, 4–6=minor disruption, 7–8=moderate, 9–10=major/shutdown. Omit for all."
},
"lifecycle": {
"enum": [
"NEW",
"ONGOING",
"ONGOING_UPCOMING",
"UPCOMING"
],
"type": "string",
"description": "Filter by alert lifecycle: \"ONGOING\" (active now), \"UPCOMING\" (future planned), \"NEW\" (just created)"
}
},
"additionalProperties": false
}Get real-time arrival and departure predictions for Boston MBTA stops — live vehicle tracking data for subway, bus, commuter rail, and ferry. Returns predicted arrival_time, departure_time (ISO 8601), direction, status (e.g. "Boarding"), schedule relationship (SCHEDULED/SKIPPED/NO_DATA), and associated route, stop, trip, and vehicle IDs. Requires at least one filter: stop ID (e.g. "place-sstat" for South Station, "place-pktrm" for Park Street) or route ID. Use direction_id to filter inbound (1) vs outbound (0). MassDOT Open Data License, real-time live data, no upstream cost.
| Argument | Type | Description |
|---|---|---|
| stop | string | Stop or station ID for arrival/departure predictions (e.g. "place-sstat" for South Station, "place-pktrm" for Park Street). Use mbta-transit.stops to find stop IDs. |
| limit | integer | Maximum number of predictions to return (default 10, max 50). Each prediction is one scheduled stop for one vehicle. |
| route | string | Route ID to get predictions for (e.g. "Red", "Green-B", "1"). At least one of stop or route is required. |
| direction_id | integer | Filter by direction: 0=outbound (away from downtown/terminus), 1=inbound (toward downtown/terminus). See mbta-transit.routes for direction names. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"stop": {
"type": "string",
"description": "Stop or station ID for arrival/departure predictions (e.g. \"place-sstat\" for South Station, \"place-pktrm\" for Park Street). Use mbta-transit.stops to find stop IDs."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of predictions to return (default 10, max 50). Each prediction is one scheduled stop for one vehicle."
},
"route": {
"type": "string",
"description": "Route ID to get predictions for (e.g. \"Red\", \"Green-B\", \"1\"). At least one of stop or route is required."
},
"direction_id": {
"type": "integer",
"maximum": 1,
"minimum": 0,
"description": "Filter by direction: 0=outbound (away from downtown/terminus), 1=inbound (toward downtown/terminus). See mbta-transit.routes for direction names."
}
},
"additionalProperties": false
}List Boston MBTA transit routes by type — subway (Red/Orange/Blue/Green lines), commuter rail (Providence, Fairmount, etc.), bus, and ferry. Returns route ID, long name, type label, direction names and destinations, fare class, and brand color. Route IDs returned here are used as filter inputs for mbta-transit.stops, mbta-transit.alerts, and mbta-transit.predictions. Filter by type: 0=Light Rail, 1=Heavy Rail/Subway, 2=Commuter Rail, 3=Bus, 4=Ferry. MassDOT Open Data License, no upstream cost.
| Argument | Type | Description |
|---|---|---|
| sort | string | Sort order: "sort_order" (default MBTA order), "long_name" alphabetical, prefix "-" for descending |
| type | string | Filter by route type: 0=Light Rail, 1=Heavy Rail/Subway, 2=Commuter Rail, 3=Bus, 4=Ferry. Omit for all types. |
| limit | integer | Maximum number of routes to return (default 50, max 100) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"sort": {
"enum": [
"long_name",
"-long_name",
"sort_order",
"-sort_order",
"type",
"-type"
],
"type": "string",
"description": "Sort order: \"sort_order\" (default MBTA order), \"long_name\" alphabetical, prefix \"-\" for descending"
},
"type": {
"enum": [
"0",
"1",
"2",
"3",
"4"
],
"type": "string",
"description": "Filter by route type: 0=Light Rail, 1=Heavy Rail/Subway, 2=Commuter Rail, 3=Bus, 4=Ferry. Omit for all types."
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of routes to return (default 50, max 100)"
}
},
"additionalProperties": false
}Find Boston MBTA stops and stations — filter by route ID or by geographic coordinates + radius. Returns stop ID, name, latitude/longitude, municipality, vehicle type, platform info, and wheelchair boarding status. Stop IDs returned here are used as filter inputs for mbta-transit.alerts and mbta-transit.predictions. Use location_type=1 to return only major stations (parent stops); location_type=0 for individual platforms. Example: route="Red" returns all 22 Red Line stops from Alewife to Braintree/Ashmont. MassDOT Open Data License, no upstream cost.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of stops to return (default 25, max 100) |
| route | string | Filter stops by route ID (e.g. "Red" for Red Line, "1" for Route 1 bus, "CR-Fairmount" for commuter rail). Use mbta-transit.routes to get route IDs. |
| radius | number | Search radius in degrees around lat/lon (approx 0.01° ≈ 1 km). Use with latitude+longitude. |
| latitude | number | Center latitude for proximity search. Must be paired with longitude and radius (e.g. 42.3601 for Boston) |
| longitude | number | Center longitude for proximity search. Must be paired with latitude and radius (e.g. -71.0589 for Boston) |
| location_type | string | Filter by location type: 0=individual stop/platform, 1=station (parent), 2=station entrance/exit |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of stops to return (default 25, max 100)"
},
"route": {
"type": "string",
"description": "Filter stops by route ID (e.g. \"Red\" for Red Line, \"1\" for Route 1 bus, \"CR-Fairmount\" for commuter rail). Use mbta-transit.routes to get route IDs."
},
"radius": {
"type": "number",
"maximum": 1,
"minimum": 0,
"description": "Search radius in degrees around lat/lon (approx 0.01° ≈ 1 km). Use with latitude+longitude."
},
"latitude": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Center latitude for proximity search. Must be paired with longitude and radius (e.g. 42.3601 for Boston)"
},
"longitude": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Center longitude for proximity search. Must be paired with latitude and radius (e.g. -71.0589 for Boston)"
},
"location_type": {
"enum": [
"0",
"1",
"2"
],
"type": "string",
"description": "Filter by location type: 0=individual stop/platform, 1=station (parent), 2=station entrance/exit"
}
},
"additionalProperties": false
}⚡ ACTION: Generate a captioned meme image from a template ID + top/bottom text. Returns direct image URL. Use imgflip.memes to find template IDs. 100K+ templates available (Imgflip)
| Argument | Type | Description |
|---|---|---|
| top_text | string | Top text on the meme |
| bottom_text | string | Bottom text on the meme |
| template_id* | string | Meme template ID from imgflip.memes (e.g. "181913649" for Drake Hotline Bling, "87743020" for Two Buttons) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"template_id"
],
"properties": {
"top_text": {
"type": "string",
"description": "Top text on the meme"
},
"bottom_text": {
"type": "string",
"description": "Bottom text on the meme"
},
"template_id": {
"type": "string",
"description": "Meme template ID from imgflip.memes (e.g. \"181913649\" for Drake Hotline Bling, \"87743020\" for Two Buttons)"
}
},
"additionalProperties": false
}Get top 100 popular meme templates — Drake Hotline Bling, Two Buttons, Distracted Boyfriend, and more. Returns template ID, name, image URL, box count. Use IDs with imgflip.caption to generate memes (Imgflip)
| Argument | Type | Description |
|---|---|---|
| search | string | Optional: filter memes by name (client-side). Returns top 100 popular meme templates. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"search": {
"type": "string",
"description": "Optional: filter memes by name (client-side). Returns top 100 popular meme templates."
}
},
"additionalProperties": false
}Browse Library of Congress digital collections — Civil War Photographs, Geography & Map Division, Rosa Parks Papers, etc. Returns collection slugs needed for filtered search. LOC public domain
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max collections to return (default 20, max 50). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Max collections to return (default 20, max 50)."
}
},
"additionalProperties": false
}Get full metadata + asset URLs (image, audio, PDF) for a Library of Congress item by its ID or full LOC URL. Includes rights, contributors, subjects, and digitized resource list. LOC public domain
| Argument | Type | Description |
|---|---|---|
| item_id* | string | Library of Congress item ID or full LOC URL (e.g. "item/2003675333" or "https://www.loc.gov/item/2003675333/"). Returns metadata + asset URLs. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"item_id"
],
"properties": {
"item_id": {
"type": "string",
"minLength": 1,
"description": "Library of Congress item ID or full LOC URL (e.g. \"item/2003675333\" or \"https://www.loc.gov/item/2003675333/\"). Returns metadata + asset URLs."
}
},
"additionalProperties": false
}Search 415K+ digitized historical items at LOC (photos, manuscripts, maps, newspapers, films, rare books). Filter by online format (image/audio/video/text/web archive) or collection slug. Public domain by US statute (17 USC §105)
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (1-based). |
| limit | integer | Results per page (default 20, max 50). |
| query* | string | Free-text search across LOC's 415K+ digitized items (e.g. "civil war", "suffrage", "lincoln"). |
| format | string | Optional filter by online format — image, audio, film/video, online text, or web archive. |
| collection | string | Optional collection slug to scope the search (e.g. "rosa-parks-papers"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (1-based)."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Results per page (default 20, max 50)."
},
"query": {
"type": "string",
"minLength": 1,
"description": "Free-text search across LOC's 415K+ digitized items (e.g. \"civil war\", \"suffrage\", \"lincoln\")."
},
"format": {
"enum": [
"image",
"audio",
"film, video",
"online text",
"web archive"
],
"type": "string",
"description": "Optional filter by online format — image, audio, film/video, online text, or web archive."
},
"collection": {
"type": "string",
"description": "Optional collection slug to scope the search (e.g. \"rosa-parks-papers\")."
}
},
"additionalProperties": false
}Hand-picked high-quality curated photos from Pexels — updated daily. Returns photographer, multiple sizes, Pexels URL. Perfect for featured images and hero sections (Pexels)
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number |
| limit | integer | Number of curated photos (default 10, max 80) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number"
},
"limit": {
"type": "integer",
"maximum": 80,
"minimum": 1,
"description": "Number of curated photos (default 10, max 80)"
}
},
"additionalProperties": false
}Search curated free stock photos by keyword — filter by orientation (landscape/portrait/square), color, size. Returns multiple resolutions (original to tiny), photographer name, Pexels URL. Free for commercial use (Pexels)
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination |
| size | string | Minimum photo size |
| color | string | Color filter (e.g. "red", "blue", "green", "yellow", "orange", "white", "black") |
| limit | integer | Results per page (default 10, max 80) |
| query* | string | Search term (e.g. "sunset beach", "office meeting", "technology") |
| orientation | string | Photo orientation filter |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination"
},
"size": {
"enum": [
"large",
"medium",
"small"
],
"type": "string",
"description": "Minimum photo size"
},
"color": {
"type": "string",
"description": "Color filter (e.g. \"red\", \"blue\", \"green\", \"yellow\", \"orange\", \"white\", \"black\")"
},
"limit": {
"type": "integer",
"maximum": 80,
"minimum": 1,
"description": "Results per page (default 10, max 80)"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Search term (e.g. \"sunset beach\", \"office meeting\", \"technology\")"
},
"orientation": {
"enum": [
"landscape",
"portrait",
"square"
],
"type": "string",
"description": "Photo orientation filter"
}
},
"additionalProperties": false
}Search free stock videos by keyword — returns HD/SD video files with dimensions, duration, download URLs. Free for commercial use (Pexels)
| Argument | Type | Description |
|---|---|---|
| size | string | Minimum video size |
| limit | integer | Results per page (default 10, max 80) |
| query* | string | Search term for videos (e.g. "nature timelapse", "city traffic", "cooking") |
| orientation | string | Video orientation |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"size": {
"enum": [
"large",
"medium",
"small"
],
"type": "string",
"description": "Minimum video size"
},
"limit": {
"type": "integer",
"maximum": 80,
"minimum": 1,
"description": "Results per page (default 10, max 80)"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Search term for videos (e.g. \"nature timelapse\", \"city traffic\", \"cooking\")"
},
"orientation": {
"enum": [
"landscape",
"portrait",
"square"
],
"type": "string",
"description": "Video orientation"
}
},
"additionalProperties": false
}Full metadata for a single podcast — title, author, description, RSS URL, artwork, language, categories, episode count, last update time, funding links (PodcastIndex)
| Argument | Type | Description |
|---|---|---|
| id* | integer | PodcastIndex feed ID to retrieve full metadata for |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"description": "PodcastIndex feed ID to retrieve full metadata for"
}
},
"additionalProperties": false
}List recent episodes for a podcast by feed ID — title, description, publish date, audio URL, duration, season/episode numbers. Use feed ID from search or trending results (PodcastIndex)
| Argument | Type | Description |
|---|---|---|
| id* | integer | PodcastIndex feed ID (from search or trending results) |
| max | integer | Number of episodes to return (default 20, max 100) |
| since | integer | Unix timestamp — only return episodes published after this time |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"description": "PodcastIndex feed ID (from search or trending results)"
},
"max": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of episodes to return (default 20, max 100)"
},
"since": {
"type": "integer",
"description": "Unix timestamp — only return episodes published after this time"
}
},
"additionalProperties": false
}Search 4M+ podcasts by keyword — returns title, author, description, artwork, episode count, language, categories, RSS feed URL. Open directory covering all languages and countries (PodcastIndex)
| Argument | Type | Description |
|---|---|---|
| q* | string | Search term or phrase (e.g. "artificial intelligence", "Lex Fridman", "true crime") |
| cat | string | Filter by category name (e.g. "Technology", "News", "Comedy", "Business") |
| max | integer | Max results to return (default 20, max 100) |
| lang | string | Filter by language code (e.g. "en", "de", "es", "ja") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"minLength": 2,
"description": "Search term or phrase (e.g. \"artificial intelligence\", \"Lex Fridman\", \"true crime\")"
},
"cat": {
"type": "string",
"description": "Filter by category name (e.g. \"Technology\", \"News\", \"Comedy\", \"Business\")"
},
"max": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Max results to return (default 20, max 100)"
},
"lang": {
"type": "string",
"description": "Filter by language code (e.g. \"en\", \"de\", \"es\", \"ja\")"
}
},
"additionalProperties": false
}Currently trending podcasts globally — ranked by recent episode engagement. Filter by language and category. Returns title, author, artwork, trending score, episode count (PodcastIndex)
| Argument | Type | Description |
|---|---|---|
| cat | string | Filter by category (e.g. "Technology", "News") |
| max | integer | Number of trending podcasts (default 20, max 100) |
| lang | string | Filter by language code (e.g. "en") |
| since | integer | Unix timestamp — only include podcasts with new episodes since this time |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"cat": {
"type": "string",
"description": "Filter by category (e.g. \"Technology\", \"News\")"
},
"max": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of trending podcasts (default 20, max 100)"
},
"lang": {
"type": "string",
"description": "Filter by language code (e.g. \"en\")"
},
"since": {
"type": "integer",
"description": "Unix timestamp — only include podcasts with new episodes since this time"
}
},
"additionalProperties": false
}Look up patient-friendly health information for an ICD-10-CM diagnosis code via the NLM MedlinePlus Connect service. Returns MedlinePlus topic titles, URLs, and plain-language summaries for conditions matching the code (e.g. E11 → Type 2 Diabetes, J18.9 → Pneumonia, I21 → Myocardial Infarction). Supports English and Spanish responses (language=es). Used in EHR/clinical contexts to link clinical codes to patient education materials. Source: US NLM MedlinePlus Connect — public domain, no auth, unlimited free.
| Argument | Type | Description |
|---|---|---|
| code* | string | ICD-10-CM diagnosis code to look up (e.g. E11 for Type 2 Diabetes, J18.9 for Pneumonia). |
| language | string | Response language: en (English) or es (Spanish). Default: en. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"code"
],
"properties": {
"code": {
"type": "string",
"description": "ICD-10-CM diagnosis code to look up (e.g. E11 for Type 2 Diabetes, J18.9 for Pneumonia)."
},
"language": {
"enum": [
"en",
"es"
],
"type": "string",
"default": "en",
"description": "Response language: en (English) or es (Spanish). Default: en."
}
},
"additionalProperties": false
}Look up patient-friendly health information for an ICD-9-CM diagnosis code via the NLM MedlinePlus Connect service. Returns MedlinePlus topic titles, URLs, and plain-language summaries for conditions matching the code (e.g. 250 → Diabetes mellitus, 410 → Acute myocardial infarction). Useful for legacy EHR systems still using ICD-9-CM coding. Supports English and Spanish responses (language=es). Source: US NLM MedlinePlus Connect — public domain, no auth, unlimited free.
| Argument | Type | Description |
|---|---|---|
| code* | string | ICD-9-CM diagnosis code to look up (e.g. 250 for Diabetes mellitus). |
| language | string | Response language: en (English) or es (Spanish). Default: en. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"code"
],
"properties": {
"code": {
"type": "string",
"description": "ICD-9-CM diagnosis code to look up (e.g. 250 for Diabetes mellitus)."
},
"language": {
"enum": [
"en",
"es"
],
"type": "string",
"default": "en",
"description": "Response language: en (English) or es (Spanish). Default: en."
}
},
"additionalProperties": false
}Look up patient-friendly drug information for an RxNorm concept ID (RXCUI) via the NLM MedlinePlus Connect service. Returns MedlinePlus drug topic titles, URLs, and plain-language summaries for medications matching the concept (e.g. 161 → Aspirin, 5640 → Ibuprofen, 723 → Metformin, 29046 → Lisinopril, 41493 → Atorvastatin). Provide the optional display_name to improve match accuracy. Supports English and Spanish responses (language=es). Source: US NLM MedlinePlus Connect — public domain, no auth, unlimited free.
| Argument | Type | Description |
|---|---|---|
| rxcui* | string | RxNorm concept unique identifier (RXCUI) for the drug (e.g. 161 for Aspirin, 5640 for Ibuprofen, 723 for Metformin). |
| language | string | Response language: en (English) or es (Spanish). Default: en. |
| display_name | string | Human-readable drug name (optional, improves matching). Example: "Metformin". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"rxcui"
],
"properties": {
"rxcui": {
"type": "string",
"description": "RxNorm concept unique identifier (RXCUI) for the drug (e.g. 161 for Aspirin, 5640 for Ibuprofen, 723 for Metformin)."
},
"language": {
"enum": [
"en",
"es"
],
"type": "string",
"default": "en",
"description": "Response language: en (English) or es (Spanish). Default: en."
},
"display_name": {
"type": "string",
"description": "Human-readable drug name (optional, improves matching). Example: \"Metformin\"."
}
},
"additionalProperties": false
}Look up patient-friendly health information for a SNOMED CT clinical concept via the NLM MedlinePlus Connect service. Returns MedlinePlus topic titles, URLs, and plain-language summaries for conditions matching the concept (e.g. 44054006 → Diabetes mellitus type 2, 22298006 → Myocardial infarction, 195967001 → Asthma). Provide the optional display_name to improve match accuracy. Supports English and Spanish responses (language=es). Source: US NLM MedlinePlus Connect — public domain, no auth, unlimited free.
| Argument | Type | Description |
|---|---|---|
| code* | string | SNOMED CT concept ID to look up (e.g. 44054006 for Diabetes mellitus type 2, 22298006 for Myocardial infarction). |
| language | string | Response language: en (English) or es (Spanish). Default: en. |
| display_name | string | Human-readable SNOMED concept name (optional, improves matching). Example: "Diabetes mellitus". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"code"
],
"properties": {
"code": {
"type": "string",
"description": "SNOMED CT concept ID to look up (e.g. 44054006 for Diabetes mellitus type 2, 22298006 for Myocardial infarction)."
},
"language": {
"enum": [
"en",
"es"
],
"type": "string",
"default": "en",
"description": "Response language: en (English) or es (Spanish). Default: en."
},
"display_name": {
"type": "string",
"description": "Human-readable SNOMED concept name (optional, improves matching). Example: \"Diabetes mellitus\"."
}
},
"additionalProperties": false
}Get info about a Telegram chat — title, type (private/group/supergroup/channel), description, member count, invite link, username (Telegram Bot API)
| Argument | Type | Description |
|---|---|---|
| chat_id* | string | number | Chat ID or @username to get info about |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"chat_id"
],
"properties": {
"chat_id": {
"type": [
"string",
"number"
],
"description": "Chat ID or @username to get info about"
}
},
"additionalProperties": false
}Get recent incoming messages and events for the bot — new messages, user info, chat type. Use offset to get only new updates since last check (Telegram Bot API)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of updates to retrieve (default 10, max 100) |
| offset | integer | Update ID offset — pass last update_id + 1 to get only new updates |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of updates to retrieve (default 10, max 100)"
},
"offset": {
"type": "integer",
"description": "Update ID offset — pass last update_id + 1 to get only new updates"
}
},
"additionalProperties": false
}⚡ ACTION: Send a file/document to a Telegram chat — PDF, CSV, ZIP, any format up to 50MB. Perfect for sending reports, data exports, generated files (Telegram Bot API)
| Argument | Type | Description |
|---|---|---|
| caption | string | Document caption |
| chat_id* | string | number | Target chat ID or @channel_username |
| document* | string | Document URL (https://...) — PDF, CSV, ZIP, etc. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"chat_id",
"document"
],
"properties": {
"caption": {
"type": "string",
"maxLength": 1024,
"description": "Document caption"
},
"chat_id": {
"type": [
"string",
"number"
],
"description": "Target chat ID or @channel_username"
},
"document": {
"type": "string",
"description": "Document URL (https://...) — PDF, CSV, ZIP, etc."
}
},
"additionalProperties": false
}⚡ ACTION: Send a text message to a Telegram user or group chat. Supports Markdown (*bold*, _italic_, `code`, [link](url)) and HTML formatting. Max 4096 chars. Perfect for alerts, notifications, reports (Telegram Bot API)
| Argument | Type | Description |
|---|---|---|
| text* | string | Message text (max 4096 chars). Supports Markdown: *bold*, _italic_, `code`, [link](url) |
| chat_id* | string | number | Telegram chat ID (number) or @channel_username (string). Get from get_updates or manually |
| parse_mode | string | Text formatting: "Markdown" or "HTML" (default plain text) |
| disable_notification | boolean | Send silently without notification sound (default false) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"chat_id",
"text"
],
"properties": {
"text": {
"type": "string",
"maxLength": 4096,
"minLength": 1,
"description": "Message text (max 4096 chars). Supports Markdown: *bold*, _italic_, `code`, [link](url)"
},
"chat_id": {
"type": [
"string",
"number"
],
"description": "Telegram chat ID (number) or @channel_username (string). Get from get_updates or manually"
},
"parse_mode": {
"enum": [
"Markdown",
"HTML"
],
"type": "string",
"description": "Text formatting: \"Markdown\" or \"HTML\" (default plain text)"
},
"disable_notification": {
"type": "boolean",
"description": "Send silently without notification sound (default false)"
}
},
"additionalProperties": false
}⚡ ACTION: Send a photo to a Telegram chat with optional caption. Provide image URL — supports JPG, PNG, GIF up to 10MB (Telegram Bot API)
| Argument | Type | Description |
|---|---|---|
| photo* | string | Photo URL (https://...) or Telegram file_id from previous upload |
| caption | string | Photo caption (max 1024 chars) |
| chat_id* | string | number | Target chat ID or @channel_username |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"chat_id",
"photo"
],
"properties": {
"photo": {
"type": "string",
"description": "Photo URL (https://...) or Telegram file_id from previous upload"
},
"caption": {
"type": "string",
"maxLength": 1024,
"description": "Photo caption (max 1024 chars)"
},
"chat_id": {
"type": [
"string",
"number"
],
"description": "Target chat ID or @channel_username"
}
},
"additionalProperties": false
}Get full details for a Met Museum artwork by object ID — title, artist, date, medium, dimensions, department, culture, provenance, high-res image URLs, public domain status. Use met.search to find object IDs first (Met Museum, CC0)
| Argument | Type | Description |
|---|---|---|
| object_id* | integer | Met Museum object ID (e.g. 436524 for Van Gogh Sunflowers, 45734 for Washington Crossing the Delaware). Use met.search to find IDs. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"object_id"
],
"properties": {
"object_id": {
"type": "integer",
"minimum": 1,
"description": "Met Museum object ID (e.g. 436524 for Van Gogh Sunflowers, 45734 for Washington Crossing the Delaware). Use met.search to find IDs."
}
},
"additionalProperties": false
}Search 470,000+ artworks at The Metropolitan Museum of Art by keyword, artist, medium, department, date range, or geography. Returns object IDs — use met.details for full metadata and images. CC0 public domain (Met Museum)
| Argument | Type | Description |
|---|---|---|
| query* | string | Search keyword — artist, title, medium, or subject (e.g. "monet", "sunflowers", "greek vase", "armor") |
| medium | string | Medium filter (e.g. "Paintings", "Sculpture", "Photographs", "Ceramics") |
| date_end | integer | End year for date range filter (e.g. 1900). Use with date_begin. |
| date_begin | integer | Start year for date range filter (e.g. 1800). Use with date_end. |
| has_images | boolean | Only return artworks with images (default: true) |
| geo_location | string | Geographic location filter (e.g. "France", "Japan", "Egypt") |
| department_id | integer | Department filter: 1=American Decorative Arts, 3=Ancient Near Eastern Art, 6=Asian Art, 9=Drawings and Prints, 11=European Paintings, 13=Greek and Roman Art, 17=Medieval Art, 21=Modern Art |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"minLength": 1,
"description": "Search keyword — artist, title, medium, or subject (e.g. \"monet\", \"sunflowers\", \"greek vase\", \"armor\")"
},
"medium": {
"type": "string",
"description": "Medium filter (e.g. \"Paintings\", \"Sculpture\", \"Photographs\", \"Ceramics\")"
},
"date_end": {
"type": "integer",
"description": "End year for date range filter (e.g. 1900). Use with date_begin."
},
"date_begin": {
"type": "integer",
"description": "Start year for date range filter (e.g. 1800). Use with date_end."
},
"has_images": {
"type": "boolean",
"description": "Only return artworks with images (default: true)"
},
"geo_location": {
"type": "string",
"description": "Geographic location filter (e.g. \"France\", \"Japan\", \"Egypt\")"
},
"department_id": {
"type": "integer",
"description": "Department filter: 1=American Decorative Arts, 3=Ancient Near Eastern Art, 6=Asian Art, 9=Drawings and Prints, 11=European Paintings, 13=Greek and Roman Art, 17=Medieval Art, 21=Modern Art"
}
},
"additionalProperties": false
}Browse all artworks in a Met Museum department by department ID, with pagination. Returns a page of object IDs — use met.details to fetch full artwork metadata for each ID. Use met.departments to get department IDs (e.g. 10=Egyptian Art, 11=European Paintings, 21=Modern Art). CC0 public domain (Met Museum)
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (1-based, default 1). Each page returns up to 100 object IDs. |
| per_page | integer | Number of object IDs per page (1–100, default 50). Use with met.details to fetch artwork metadata. |
| department_id* | integer | Department ID to browse. Use met.departments to get IDs. Examples: 10=Egyptian Art, 11=European Paintings, 13=Greek and Roman Art, 21=Modern Art |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"department_id"
],
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (1-based, default 1). Each page returns up to 100 object IDs."
},
"per_page": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of object IDs per page (1–100, default 50). Use with met.details to fetch artwork metadata."
},
"department_id": {
"type": "integer",
"minimum": 1,
"description": "Department ID to browse. Use met.departments to get IDs. Examples: 10=Egyptian Art, 11=European Paintings, 13=Greek and Roman Art, 21=Modern Art"
}
},
"additionalProperties": false
}List all 19 curatorial departments at The Metropolitan Museum of Art with their IDs and names — American Decorative Arts, Egyptian Art, European Paintings, Greek and Roman Art, Modern Art, and more. Use department IDs with met.browse to explore a collection area or with met.search to filter searches. CC0 public domain (Met Museum)
| Argument | Type | Description |
|---|---|---|
| sort_by | string | Sort order for the department list: "id" (numeric, default) or "name" (alphabetical) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"sort_by": {
"enum": [
"id",
"name"
],
"type": "string",
"description": "Sort order for the department list: \"id\" (numeric, default) or \"name\" (alphabetical)"
}
},
"additionalProperties": false
}Get a full calendar year of daily weather observations (temperature, precipitation, wind, pressure, sunshine, cloud cover) for a Meteostat weather station. Station ID comes from meteostat.stations_nearby. Data: Meteostat, aggregated from national weather services (CC BY 4.0), no auth required.
| Argument | Type | Description |
|---|---|---|
| year* | integer | Calendar year to fetch daily observations for (e.g. 2024). |
| station_id* | string | Meteostat weather station ID, obtained from meteostat.stations_nearby. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"station_id",
"year"
],
"properties": {
"year": {
"type": "integer",
"minimum": 1900,
"description": "Calendar year to fetch daily observations for (e.g. 2024)."
},
"station_id": {
"type": "string",
"maxLength": 20,
"minLength": 1,
"description": "Meteostat weather station ID, obtained from meteostat.stations_nearby."
}
},
"additionalProperties": false
}Get hourly weather observations (temperature, humidity, precipitation, wind, pressure, cloud cover, weather condition code) for a Meteostat weather station over a date range of up to 7 days within a single calendar year. Station ID comes from meteostat.stations_nearby. Use meteostat.daily_data for longer time spans. Data: Meteostat (CC BY 4.0), no auth required.
| Argument | Type | Description |
|---|---|---|
| end_date* | string | End of the date range in YYYY-MM-DD format (inclusive). Must be within 7 days of start_date and in the same calendar year — use meteostat.daily_data for longer spans. |
| start_date* | string | Start of the date range in YYYY-MM-DD format (inclusive). |
| station_id* | string | Meteostat weather station ID, obtained from meteostat.stations_nearby. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"station_id",
"start_date",
"end_date"
],
"properties": {
"end_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "End of the date range in YYYY-MM-DD format (inclusive). Must be within 7 days of start_date and in the same calendar year — use meteostat.daily_data for longer spans."
},
"start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Start of the date range in YYYY-MM-DD format (inclusive)."
},
"station_id": {
"type": "string",
"maxLength": 20,
"minLength": 1,
"description": "Meteostat weather station ID, obtained from meteostat.stations_nearby."
}
},
"additionalProperties": false
}Get the full monthly weather history (mean/min/max temperature, precipitation, pressure, sunshine) for a Meteostat weather station — can span many decades for long-running stations. Station ID comes from meteostat.stations_nearby. Data: Meteostat (CC BY 4.0), no auth required.
| Argument | Type | Description |
|---|---|---|
| station_id* | string | Meteostat weather station ID, obtained from meteostat.stations_nearby. Returns the full monthly history available for the station (may span decades). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"station_id"
],
"properties": {
"station_id": {
"type": "string",
"maxLength": 20,
"minLength": 1,
"description": "Meteostat weather station ID, obtained from meteostat.stations_nearby. Returns the full monthly history available for the station (may span decades)."
}
},
"additionalProperties": false
}Get metadata for a Meteostat weather station by ID: name, country/region, coordinates, timezone, and the date ranges of available hourly/daily/monthly data. Station ID comes from meteostat.stations_nearby. Data: Meteostat (CC BY 4.0), no auth required.
| Argument | Type | Description |
|---|---|---|
| station_id* | string | Meteostat weather station ID (e.g. "10637" for Frankfurt Airport), obtained from meteostat.stations_nearby. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"station_id"
],
"properties": {
"station_id": {
"type": "string",
"maxLength": 20,
"minLength": 1,
"description": "Meteostat weather station ID (e.g. \"10637\" for Frankfurt Airport), obtained from meteostat.stations_nearby."
}
},
"additionalProperties": false
}Find Meteostat weather stations near a latitude/longitude coordinate, sorted by distance. Returns station IDs to use with station_info and the daily/monthly/hourly observation tools. Data: Meteostat open station directory (CC BY 4.0), no auth required.
| Argument | Type | Description |
|---|---|---|
| lat* | number | Latitude of the search point (WGS84 decimal degrees). |
| lon* | number | Longitude of the search point (WGS84 decimal degrees). |
| limit | integer | Maximum number of stations to return, nearest first (default 10, max 50). |
| radius_km | number | Search radius in kilometers (default 100, max 500). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude of the search point (WGS84 decimal degrees)."
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude of the search point (WGS84 decimal degrees)."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of stations to return, nearest first (default 10, max 50)."
},
"radius_km": {
"type": "number",
"maximum": 500,
"minimum": 1,
"description": "Search radius in kilometers (default 100, max 500)."
}
},
"additionalProperties": false
}Get precise sunrise, sunset, solar noon, and solar midnight times for any global coordinate and date from the Norwegian Meteorological Institute Sunrise 3.0 API. For the Sun: returns sunrise time + azimuth, sunset time + azimuth, solar noon elevation and visibility. For the Moon: returns moonrise, moonset, high moon, low moon, and lunar phase (0–360°). Supports UTC offset for local time output. Global coverage; handles polar day/night (midnight sun / polar night). CC BY 4.0 + NLOD 2.0, no auth, no upstream cost.
| Argument | Type | Description |
|---|---|---|
| lat* | number | Latitude in decimal degrees (e.g. 59.91 for Oslo, 51.5 for London) |
| lon* | number | Longitude in decimal degrees (e.g. 10.75 for Oslo, -0.12 for London) |
| body | string | Celestial body: "sun" returns sunrise/sunset/solarnoon (default), "moon" returns moonrise/moonset/phase. |
| date* | string | Date to compute times for in ISO 8601 format YYYY-MM-DD (e.g. "2026-06-24") |
| offset | string | UTC offset for local time output in ±HH:MM format (e.g. "+02:00" for CEST). Defaults to UTC. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lon",
"date"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude in decimal degrees (e.g. 59.91 for Oslo, 51.5 for London)"
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude in decimal degrees (e.g. 10.75 for Oslo, -0.12 for London)"
},
"body": {
"enum": [
"sun",
"moon"
],
"type": "string",
"description": "Celestial body: \"sun\" returns sunrise/sunset/solarnoon (default), \"moon\" returns moonrise/moonset/phase."
},
"date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Date to compute times for in ISO 8601 format YYYY-MM-DD (e.g. \"2026-06-24\")"
},
"offset": {
"type": "string",
"description": "UTC offset for local time output in ±HH:MM format (e.g. \"+02:00\" for CEST). Defaults to UTC."
}
},
"additionalProperties": false
}Get all active weather alerts issued by the Norwegian Meteorological Institute for Norway. Alerts cover events such as gale, storm, heavy rain, snow, ice, avalanche, and fog. Each alert includes event type, awareness level (green/yellow/orange/red), severity, certainty, affected counties, description, consequences, and valid time interval. Filter by event type slug (wind, rain, snow, ice, fog, avalanche) or by county name. Returns English or Norwegian text. CC BY 4.0 + NLOD 2.0, no auth, no upstream cost.
| Argument | Type | Description |
|---|---|---|
| lang | string | Language for alert text. "en" = English (default), "no" = Norwegian. |
| county | string | Filter alerts by Norwegian county name substring (e.g. "Oslo", "Viken", "Troms"). Case-insensitive partial match. |
| event_type | string | Filter by event type slug (e.g. "wind", "rain", "snow", "ice", "fog", "avalanche"). Leave empty for all active alerts. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"lang": {
"enum": [
"en",
"no"
],
"type": "string",
"description": "Language for alert text. \"en\" = English (default), \"no\" = Norwegian."
},
"county": {
"type": "string",
"description": "Filter alerts by Norwegian county name substring (e.g. \"Oslo\", \"Viken\", \"Troms\"). Case-insensitive partial match."
},
"event_type": {
"type": "string",
"description": "Filter by event type slug (e.g. \"wind\", \"rain\", \"snow\", \"ice\", \"fog\", \"avalanche\"). Leave empty for all active alerts."
}
},
"additionalProperties": false
}Get a 9-day (216-hour) hourly weather forecast for any global lat/lon point from the Norwegian Meteorological Institute Locationforecast 2.0 model. Returns air temperature, wind speed/direction/gusts, cloud cover, humidity, pressure, UV index, precipitation amounts and probability, and symbolic weather codes (e.g. clearsky_day, rain). Global coverage. CC BY 4.0 + NLOD 2.0, no auth, no upstream cost.
| Argument | Type | Description |
|---|---|---|
| lat* | number | Latitude in decimal degrees (e.g. 59.91 for Oslo, -33.87 for Sydney) |
| lon* | number | Longitude in decimal degrees (e.g. 10.75 for Oslo, 151.21 for Sydney) |
| hours | integer | Number of hourly forecast entries to return (1–216, default 48). Full 9-day range = 216. |
| altitude | integer | Station altitude in metres above sea level. Improves pressure correction. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude in decimal degrees (e.g. 59.91 for Oslo, -33.87 for Sydney)"
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude in decimal degrees (e.g. 10.75 for Oslo, 151.21 for Sydney)"
},
"hours": {
"type": "integer",
"maximum": 216,
"minimum": 1,
"description": "Number of hourly forecast entries to return (1–216, default 48). Full 9-day range = 216."
},
"altitude": {
"type": "integer",
"maximum": 9000,
"minimum": 0,
"description": "Station altitude in metres above sea level. Improves pressure correction."
}
},
"additionalProperties": false
}Get a short-term precipitation nowcast with 5-minute intervals for the next ~2 hours from the Norwegian Meteorological Institute Nowcast 2.0 radar model. Returns precipitation rate, air temperature, wind speed/direction/gusts, relative humidity, UV index, and weather symbol codes. Coverage: Norway and Scandinavia (approx 53–90°N, 20°W–40°E). Ideal for hyperlocal outdoor activity planning, event logistics, and real-time rainfall monitoring. CC BY 4.0 + NLOD 2.0, no auth, no upstream cost.
| Argument | Type | Description |
|---|---|---|
| lat* | number | Latitude in decimal degrees. Coverage: Norway and Scandinavia (approx 53–90°N). |
| lon* | number | Longitude in decimal degrees. Coverage: Norway and Scandinavia (approx −20–40°E). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": 53,
"description": "Latitude in decimal degrees. Coverage: Norway and Scandinavia (approx 53–90°N)."
},
"lon": {
"type": "number",
"maximum": 40,
"minimum": -20,
"description": "Longitude in decimal degrees. Coverage: Norway and Scandinavia (approx −20–40°E)."
}
},
"additionalProperties": false
}Get historical Net Asset Value (NAV) records for an India mutual fund scheme, most recent first. Returns daily NAV values in Indian Rupees (INR) with dates. Some schemes have 20+ years of history. Useful for performance analysis, CAGR calculations, SIP return modelling, and trend visualization. Limit parameter controls how many records are returned (default 100, max 1000). Use mfapi.schemes.search to find the scheme_code for a fund by name. Data source: MFAPI (api.mfapi.in), MIT license, no authentication required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of historical NAV records to return, most recent first (1–1000, default 100) |
| scheme_code* | integer | AMFI scheme code (integer). Use mfapi.scheme_search to find the code for a fund. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"scheme_code"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Maximum number of historical NAV records to return, most recent first (1–1000, default 100)"
},
"scheme_code": {
"type": "integer",
"description": "AMFI scheme code (integer). Use mfapi.scheme_search to find the code for a fund.",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Get the most recent Net Asset Value (NAV) for an India mutual fund scheme by its AMFI scheme code. Returns the NAV in Indian Rupees (INR), the date of the NAV, and full scheme metadata including fund house, scheme type (Open/Close Ended), scheme category (Equity/Debt/Hybrid), and ISIN. NAVs are published by AMFI daily on business days; the returned date reflects the last published value. Use mfapi.schemes.search to find the scheme_code for a fund by name. Data source: MFAPI (api.mfapi.in), MIT license, no authentication required.
| Argument | Type | Description |
|---|---|---|
| scheme_code* | integer | AMFI scheme code (integer). Use mfapi.scheme_search to find the code for a fund. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"scheme_code"
],
"properties": {
"scheme_code": {
"type": "integer",
"description": "AMFI scheme code (integer). Use mfapi.scheme_search to find the code for a fund.",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Paginated list of all 37,000+ AMFI-registered India mutual fund schemes. Returns scheme codes, names, and ISIN identifiers for each page. Useful for bulk enumeration or building fund directories. Use mfapi.schemes.search for keyword-based lookup instead of iterating all pages. Data source: MFAPI (api.mfapi.in), MIT license, no authentication required.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default 1) |
| per_page | integer | Number of schemes per page (1–200, default 50) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)"
},
"per_page": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Number of schemes per page (1–200, default 50)"
}
},
"additionalProperties": false
}Search across 37,000+ AMFI-registered India mutual fund schemes by name keyword. Returns matching scheme codes, names, and ISIN identifiers. Use the returned scheme_code to fetch current or historical NAV data. Supports partial matches — searching "HDFC" returns all HDFC schemes; "mid cap" returns all mid-cap funds. Data source: MFAPI (api.mfapi.in), MIT license, no authentication required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of results to return (1–100, default 20) |
| query* | string | Keyword to filter scheme names (e.g. "HDFC", "SBI Bluechip", "mid cap") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of results to return (1–100, default 20)"
},
"query": {
"type": "string",
"description": "Keyword to filter scheme names (e.g. \"HDFC\", \"SBI Bluechip\", \"mid cap\")"
}
},
"additionalProperties": false
}Get real-time Air Quality Health Index (AQHI, 1-10+ scale) observations for a Canadian monitoring location by location_id, or the latest reading from every monitored location across Canada if location_id is omitted. Data: api.weather.gc.ca (MSC GeoMet OGC API - Features), no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max records to return (1-50). Defaults to 20. |
| location_id | string | AQHI monitoring location ID, e.g. "CAPHL" (Halifax Downtown). Omit to return the latest observation from every monitored location across Canada. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"description": "Max records to return (1-50). Defaults to 20.",
"exclusiveMinimum": 0
},
"location_id": {
"type": "string",
"description": "AQHI monitoring location ID, e.g. \"CAPHL\" (Halifax Downtown). Omit to return the latest observation from every monitored location across Canada."
}
},
"additionalProperties": false
}Get daily climate observations (mean/min/max temperature, precipitation, rain, snow, snow on ground, max wind gust, heating/cooling degree days) for a Canadian station by CLIMATE_IDENTIFIER (from msc-geomet.climate_stations), optionally scoped to a start_date/ end_date range. Data: api.weather.gc.ca (MSC GeoMet OGC API - Features), no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max records to return (1-366). Defaults to 30. |
| end_date | string | End of the date range, format YYYY-MM-DD. Must be paired with start_date. |
| start_date | string | Start of the date range, format YYYY-MM-DD. Must be paired with end_date. |
| climate_identifier* | string | Station CLIMATE_IDENTIFIER, e.g. "6158731" (Toronto Intl A). Get station IDs from msc-geomet.climate_stations. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"climate_identifier"
],
"properties": {
"limit": {
"type": "integer",
"description": "Max records to return (1-366). Defaults to 30.",
"exclusiveMinimum": 0
},
"end_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "End of the date range, format YYYY-MM-DD. Must be paired with start_date."
},
"start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Start of the date range, format YYYY-MM-DD. Must be paired with end_date."
},
"climate_identifier": {
"type": "string",
"minLength": 1,
"description": "Station CLIMATE_IDENTIFIER, e.g. \"6158731\" (Toronto Intl A). Get station IDs from msc-geomet.climate_stations."
}
},
"additionalProperties": false
}Search the Environment and Climate Change Canada climate station catalog by province/ territory or bounding box. Returns each station's CLIMATE_IDENTIFIER (needed for msc-geomet.climate_daily), coordinates, elevation, and its daily/hourly record date ranges. Data: api.weather.gc.ca (MSC GeoMet OGC API - Features), no auth required.
| Argument | Type | Description |
|---|---|---|
| bbox | string | Bounding box filter as "minLon,minLat,maxLon,maxLat" in decimal degrees (e.g. "-80,43,-79,44" for the Toronto area). |
| limit | integer | Max records to return (1-100). Defaults to 20. |
| province | string | Filter to a Canadian province/territory by 2-letter code (e.g. "ON" Ontario, "BC" British Columbia). Omit to search all provinces. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"bbox": {
"type": "string",
"description": "Bounding box filter as \"minLon,minLat,maxLon,maxLat\" in decimal degrees (e.g. \"-80,43,-79,44\" for the Toronto area)."
},
"limit": {
"type": "integer",
"description": "Max records to return (1-100). Defaults to 20.",
"exclusiveMinimum": 0
},
"province": {
"enum": [
"AB",
"BC",
"MB",
"NB",
"NL",
"NS",
"NT",
"NU",
"ON",
"PE",
"QC",
"SK",
"YT"
],
"type": "string",
"description": "Filter to a Canadian province/territory by 2-letter code (e.g. \"ON\" Ontario, \"BC\" British Columbia). Omit to search all provinces."
}
},
"additionalProperties": false
}Get real-time water level (m) and discharge (m3/s) readings for a Canadian river or lake by hydrometric station_number, sorted most-recent-first. Readings are typically reported every 5 minutes for stations with real-time telemetry. Data: api.weather.gc.ca (MSC GeoMet OGC API - Features, sourced from HYDAT/WSC), no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max records to return (1-288). Defaults to 20. |
| station_number* | string | Hydrometric station number, e.g. "01AD003" (St. Francis River, NB). Readings are reported roughly every 5 minutes for stations with real-time telemetry. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"station_number"
],
"properties": {
"limit": {
"type": "integer",
"description": "Max records to return (1-288). Defaults to 20.",
"exclusiveMinimum": 0
},
"station_number": {
"type": "string",
"minLength": 1,
"description": "Hydrometric station number, e.g. \"01AD003\" (St. Francis River, NB). Readings are reported roughly every 5 minutes for stations with real-time telemetry."
}
},
"additionalProperties": false
}Get detailed artist info by MusicBrainz ID — tags, ratings, external links, life span, area (MusicBrainz)
| Argument | Type | Description |
|---|---|---|
| mbid* | string | MusicBrainz artist ID (UUID format, e.g. "a74b1b7f-71a5-4011-9441-d0b5e4122711") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"mbid"
],
"properties": {
"mbid": {
"type": "string",
"format": "uuid",
"description": "MusicBrainz artist ID (UUID format, e.g. \"a74b1b7f-71a5-4011-9441-d0b5e4122711\")"
}
},
"additionalProperties": false
}Search for music artists by name across 2M+ artists — biography, country, tags, aliases (MusicBrainz)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max results to return (1-100, default 25) |
| query* | string | Search query for artist name (e.g. "Radiohead", "Miles Davis") |
| offset | integer | Pagination offset for results |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Max results to return (1-100, default 25)"
},
"query": {
"type": "string",
"description": "Search query for artist name (e.g. \"Radiohead\", \"Miles Davis\")"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset for results"
}
},
"additionalProperties": false
}Search for song lyrics by artist name, song title, or both. Returns full lyrics text, artist, title, and metadata. Query examples: "imagine john lennon", "bohemian rhapsody", "taylor swift love story" (AudD)
| Argument | Type | Description |
|---|---|---|
| q* | string | Search query for lyrics — artist name, song title, or both (e.g. "imagine john lennon", "bohemian rhapsody", "taylor swift love story") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"minLength": 1,
"description": "Search query for lyrics — artist name, song title, or both (e.g. \"imagine john lennon\", \"bohemian rhapsody\", \"taylor swift love story\")"
}
},
"additionalProperties": false
}Identify a song from an audio file URL — like Shazam for AI agents. Analyzes audio fingerprint against 80M+ tracks and returns artist, title, album, release date, plus Spotify and Apple Music links. Accepts MP3, WAV, OGG, or any audio URL (AudD)
| Argument | Type | Description |
|---|---|---|
| url* | string | URL of audio file to identify (MP3, WAV, OGG, etc.). The API analyzes the audio and matches it against 80M+ tracks. Example: "https://example.com/song.mp3" |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "URL of audio file to identify (MP3, WAV, OGG, etc.). The API analyzes the audio and matches it against 80M+ tracks. Example: \"https://example.com/song.mp3\""
}
},
"additionalProperties": false
}Discover recently released albums and singles from the past N days — trending new music (ListenBrainz)
| Argument | Type | Description |
|---|---|---|
| days | integer | Number of days to look back for fresh releases (1-90, default 7) |
| limit | integer | Max releases to return (1-200, default 50) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"days": {
"type": "integer",
"maximum": 90,
"minimum": 1,
"description": "Number of days to look back for fresh releases (1-90, default 7)"
},
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Max releases to return (1-200, default 50)"
}
},
"additionalProperties": false
}Search 40K+ internet radio stations by name, genre, country, or language — streaming URLs, bitrate, codec (RadioBrowser)
| Argument | Type | Description |
|---|---|---|
| tag | string | Tag/genre filter (e.g. "rock", "jazz", "classical", "news") |
| name | string | Station name to search for (e.g. "BBC Radio", "Jazz FM") |
| limit | integer | Max stations to return (1-100, default 25) |
| order | string | Sort order for results |
| country | string | Country name filter (e.g. "Germany", "United States") |
| language | string | Language filter (e.g. "english", "german", "spanish") |
| hidebroken | boolean | Hide broken/offline stations (recommended: true) |
| countrycode | string | ISO 3166-1 alpha-2 country code (e.g. "US", "DE", "GB") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"tag": {
"type": "string",
"description": "Tag/genre filter (e.g. \"rock\", \"jazz\", \"classical\", \"news\")"
},
"name": {
"type": "string",
"description": "Station name to search for (e.g. \"BBC Radio\", \"Jazz FM\")"
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Max stations to return (1-100, default 25)"
},
"order": {
"enum": [
"name",
"url",
"homepage",
"favicon",
"tags",
"country",
"state",
"language",
"votes",
"codec",
"bitrate",
"lastcheckok",
"lastchecktime",
"clicktimestamp",
"clickcount",
"clicktrend",
"changetimestamp",
"random"
],
"type": "string",
"description": "Sort order for results"
},
"country": {
"type": "string",
"description": "Country name filter (e.g. \"Germany\", \"United States\")"
},
"language": {
"type": "string",
"description": "Language filter (e.g. \"english\", \"german\", \"spanish\")"
},
"hidebroken": {
"type": "boolean",
"description": "Hide broken/offline stations (recommended: true)"
},
"countrycode": {
"type": "string",
"description": "ISO 3166-1 alpha-2 country code (e.g. \"US\", \"DE\", \"GB\")"
}
},
"additionalProperties": false
}Search for songs and recordings by title or artist — duration, release history, artist credits (MusicBrainz)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max results to return (1-100, default 25) |
| query* | string | Search query for song/recording title (e.g. "Creep", "So What"). Supports Lucene syntax: artist:"Radiohead" AND recording:"Creep" |
| offset | integer | Pagination offset for results |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Max results to return (1-100, default 25)"
},
"query": {
"type": "string",
"description": "Search query for song/recording title (e.g. \"Creep\", \"So What\"). Supports Lucene syntax: artist:\"Radiohead\" AND recording:\"Creep\""
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset for results"
}
},
"additionalProperties": false
}Get full release details by MusicBrainz ID — artist credits, labels, media formats (MusicBrainz)
| Argument | Type | Description |
|---|---|---|
| mbid* | string | MusicBrainz release ID (UUID format). Returns artist credits and label info |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"mbid"
],
"properties": {
"mbid": {
"type": "string",
"format": "uuid",
"description": "MusicBrainz release ID (UUID format). Returns artist credits and label info"
}
},
"additionalProperties": false
}Search for albums, singles, and EPs across 50M+ recordings — title, artist, date (MusicBrainz)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max results to return (1-100, default 25) |
| query* | string | Search query for release/album title (e.g. "OK Computer", "Kind of Blue"). Supports Lucene syntax: artist:"Radiohead" AND release:"OK Computer" |
| offset | integer | Pagination offset for results |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Max results to return (1-100, default 25)"
},
"query": {
"type": "string",
"description": "Search query for release/album title (e.g. \"OK Computer\", \"Kind of Blue\"). Supports Lucene syntax: artist:\"Radiohead\" AND release:\"OK Computer\""
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset for results"
}
},
"additionalProperties": false
}Retrieve comprehensive annotation for a single chemical compound by its InChIKey (e.g. "BSYNRYMUTXBXSQ-UHFFFAOYSA-N"), ChEMBL ID (e.g. "CHEMBL25"), PubChem CID (e.g. "CID2244"), or DrugBank ID (e.g. "DB00945"). Returns complete annotation from 16+ integrated databases: ChEBI chemical definition, IUPAC name, and synonyms; ChEMBL clinical development phase (0–4), molecule type, ATC therapeutic classification, Lipinski Ro5 properties (MW, XLogP, HBD, HBA, PSA, rotatable bonds), black-box warning flag, and withdrawal status; PubChem structural identifiers (CID, molecular formula, molecular weight, InChI, SMILES, heavy atom count, complexity score); DrugBank approved indication, mechanism of action, drug targets with gene names and pharmacological actions; PharmGKB clinical pharmacogenomics annotation count; SIDER reported side effects; and NDC product codes. Essential for drug discovery, cheminformatics pipelines, pharmacogenomics analysis, and clinical safety review.
| Argument | Type | Description |
|---|---|---|
| fields | string | Comma-separated annotation fields to retrieve. Default: chebi.name, chebi.definition, chebi.formula, chebi.mass, chembl.pref_name, chembl.max_phase, chembl.molecule_properties, pubchem.cid, pubchem.molecular_formula, pubchem.molecular_weight, drugbank.name, drugbank.groups, pharmgkb.name. For drug targets, add "drugbank.targets". For full ChEBI annotations, add "chebi". Use "all" for complete annotation from all 16 sources including SIDER (side effects), DrugCentral (clinical info), PharmGKB (pharmacogenomics), and NDC (drug codes). |
| chem_id* | string | Chemical identifier to look up. Accepts: InChIKey (primary ID, e.g. "BSYNRYMUTXBXSQ-UHFFFAOYSA-N"), ChEMBL ID (e.g. "CHEMBL25"), PubChem CID (e.g. "CID2244"), or DrugBank ID (e.g. "DB00945"). InChIKey is the most stable identifier — obtain from mychem.search results or external databases (ChEMBL, PubChem, ChEBI). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"chem_id"
],
"properties": {
"fields": {
"type": "string",
"description": "Comma-separated annotation fields to retrieve. Default: chebi.name, chebi.definition, chebi.formula, chebi.mass, chembl.pref_name, chembl.max_phase, chembl.molecule_properties, pubchem.cid, pubchem.molecular_formula, pubchem.molecular_weight, drugbank.name, drugbank.groups, pharmgkb.name. For drug targets, add \"drugbank.targets\". For full ChEBI annotations, add \"chebi\". Use \"all\" for complete annotation from all 16 sources including SIDER (side effects), DrugCentral (clinical info), PharmGKB (pharmacogenomics), and NDC (drug codes)."
},
"chem_id": {
"type": "string",
"minLength": 1,
"description": "Chemical identifier to look up. Accepts: InChIKey (primary ID, e.g. \"BSYNRYMUTXBXSQ-UHFFFAOYSA-N\"), ChEMBL ID (e.g. \"CHEMBL25\"), PubChem CID (e.g. \"CID2244\"), or DrugBank ID (e.g. \"DB00945\"). InChIKey is the most stable identifier — obtain from mychem.search results or external databases (ChEMBL, PubChem, ChEBI)."
}
},
"additionalProperties": false
}Retrieve annotations for up to 100 chemical compounds in a single request by providing an array of chemical names or identifiers. Returns ChEBI name, ChEMBL preferred name and clinical phase, PubChem CID, molecular formula and weight, DrugBank drug groups, and PharmGKB name for each compound in one call. Ideal for enriching compound lists from drug screening assays, annotating molecule libraries, building pharmacology databases, or cross-referencing chemicals across naming conventions (INN, brand names, IUPAC names). Compounds not found in any database are marked with found=false. Mix different name formats and identifiers freely in a single batch request.
| Argument | Type | Description |
|---|---|---|
| q* | array | Array of chemical queries to look up in a single request. Each element can be a chemical name, synonym, or identifier (up to 100 entries). Example: ["aspirin", "ibuprofen", "acetaminophen"]. Each query is matched against common names, synonyms, and identifiers. Returns one best-match annotation per query. |
| fields | string | Comma-separated annotation fields to return for each chemical. Default: chebi.name, chebi.definition, chebi.formula, chebi.mass, chembl.pref_name, chembl.max_phase, chembl.molecule_properties, pubchem.cid, pubchem.molecular_formula, pubchem.molecular_weight, drugbank.name, drugbank.groups, pharmgkb.name. Limit fields for large batches to reduce response size. |
| scopes | string | Comma-separated fields to search within for each query in the batch. Default: chebi.name,chembl.pref_name,drugbank.name,pubchem.cid — searches across common name fields. Use "chebi.inchikey" to match exact InChIKeys. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"q"
],
"properties": {
"q": {
"type": "array",
"items": {
"type": "string",
"description": "A chemical name, synonym, or identifier to look up."
},
"maxItems": 100,
"minItems": 1,
"description": "Array of chemical queries to look up in a single request. Each element can be a chemical name, synonym, or identifier (up to 100 entries). Example: [\"aspirin\", \"ibuprofen\", \"acetaminophen\"]. Each query is matched against common names, synonyms, and identifiers. Returns one best-match annotation per query."
},
"fields": {
"type": "string",
"description": "Comma-separated annotation fields to return for each chemical. Default: chebi.name, chebi.definition, chebi.formula, chebi.mass, chembl.pref_name, chembl.max_phase, chembl.molecule_properties, pubchem.cid, pubchem.molecular_formula, pubchem.molecular_weight, drugbank.name, drugbank.groups, pharmgkb.name. Limit fields for large batches to reduce response size."
},
"scopes": {
"type": "string",
"default": "chebi.name,chembl.pref_name,drugbank.name,pubchem.cid",
"description": "Comma-separated fields to search within for each query in the batch. Default: chebi.name,chembl.pref_name,drugbank.name,pubchem.cid — searches across common name fields. Use \"chebi.inchikey\" to match exact InChIKeys."
}
},
"additionalProperties": false
}Retrieve build metadata and data source statistics for the MyChem.info API. Returns the current database build version (e.g. "20260525"), build date, total number of chemical records (197M+), and a list of integrated annotation sources with their versions, URLs, and license information. Sources include DrugBank, ChEMBL, ChEBI, PubChem, PharmGKB, SIDER, DrugCentral, UMLS, NDC, UniChem, GSRS, FDA Orphan Drug, GtoPdb (pharmacology), AEOLUS (adverse events), GINAS, and UNII. Use to verify data currency before large annotation jobs or to cite specific source versions in research publications.
| Argument | Type | Description |
|---|---|---|
| detail | boolean | If true, include full source metadata with download dates, record counts per source, code repository links, and license URLs. If false (default), return only build version, build date, total chemical count, and a summary list of source names. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"detail": {
"type": "boolean",
"default": false,
"description": "If true, include full source metadata with download dates, record counts per source, code repository links, and license URLs. If false (default), return only build version, build date, total chemical count, and a summary list of source names."
}
},
"additionalProperties": false
}Search the MyChem.info database of 197M+ annotated chemical compounds using a flexible query syntax. Query by: common name (e.g. "aspirin"), IUPAC name (e.g. "acetylsalicylic acid"), InChIKey (e.g. "BSYNRYMUTXBXSQ-UHFFFAOYSA-N"), molecular formula (e.g. "C9H8O4"), ChEMBL ID (e.g. "CHEMBL25"), PubChem CID (e.g. "pubchem.cid:2244"), DrugBank ID (e.g. "DB00945"), or field-scoped queries (e.g. "drugbank.groups:approved AND chembl.max_phase:4"). Each result includes chemical names across databases (ChEBI, ChEMBL, DrugBank, PharmGKB), structural properties (molecular formula, weight, XLogP, H-bond donors/acceptors, TPSA, rotatable bonds), drug development phase, ATC classification codes, and approval status. Integrates DrugBank, ChEMBL, ChEBI, PubChem, PharmGKB, SIDER, DrugCentral, NDC, and 16+ annotation sources.
| Argument | Type | Description |
|---|---|---|
| q* | string | Chemical search query. Supports: common name (e.g. "aspirin"), IUPAC name (e.g. "acetylsalicylic acid"), InChIKey (e.g. "BSYNRYMUTXBXSQ-UHFFFAOYSA-N"), molecular formula (e.g. "C9H8O4"), ChEMBL ID (e.g. "CHEMBL25"), PubChem CID (e.g. "pubchem.cid:2244"), DrugBank ID (e.g. "DB00945"), or field-scoped queries (e.g. "chebi.name:ibuprofen", "drugbank.groups:approved", "chembl.max_phase:4"). Supports Lucene boolean operators AND/OR/NOT. |
| size | integer | Maximum number of chemical results to return (1–50, default 10). |
| fields | string | Comma-separated annotation fields to return per hit. Default: chebi.name, chebi.definition, chebi.formula, chebi.mass, chembl.pref_name, chembl.max_phase, chembl.molecule_properties, pubchem.cid, pubchem.molecular_formula, pubchem.molecular_weight, pubchem.xlogp, drugbank.name, drugbank.groups, pharmgkb.name. Use "all" for every source. |
| scopes | string | Comma-separated fields to search within. Default: searches all text fields. Examples: "chebi.name,chembl.pref_name,drugbank.name" to search only common names, or "chebi.inchikey" to search by exact InChIKey structure. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"minLength": 1,
"description": "Chemical search query. Supports: common name (e.g. \"aspirin\"), IUPAC name (e.g. \"acetylsalicylic acid\"), InChIKey (e.g. \"BSYNRYMUTXBXSQ-UHFFFAOYSA-N\"), molecular formula (e.g. \"C9H8O4\"), ChEMBL ID (e.g. \"CHEMBL25\"), PubChem CID (e.g. \"pubchem.cid:2244\"), DrugBank ID (e.g. \"DB00945\"), or field-scoped queries (e.g. \"chebi.name:ibuprofen\", \"drugbank.groups:approved\", \"chembl.max_phase:4\"). Supports Lucene boolean operators AND/OR/NOT."
},
"size": {
"type": "integer",
"default": 10,
"maximum": 50,
"minimum": 1,
"description": "Maximum number of chemical results to return (1–50, default 10)."
},
"fields": {
"type": "string",
"description": "Comma-separated annotation fields to return per hit. Default: chebi.name, chebi.definition, chebi.formula, chebi.mass, chembl.pref_name, chembl.max_phase, chembl.molecule_properties, pubchem.cid, pubchem.molecular_formula, pubchem.molecular_weight, pubchem.xlogp, drugbank.name, drugbank.groups, pharmgkb.name. Use \"all\" for every source."
},
"scopes": {
"type": "string",
"description": "Comma-separated fields to search within. Default: searches all text fields. Examples: \"chebi.name,chembl.pref_name,drugbank.name\" to search only common names, or \"chebi.inchikey\" to search by exact InChIKey structure."
}
},
"additionalProperties": false
}Retrieve annotation data for up to 1000 genes in a single request by providing a comma-separated list of NCBI Entrez Gene IDs or Ensembl gene IDs. Returns the same fields as mygene.genes.info for each gene: symbol, name, gene type, taxon, summary, Ensembl IDs, UniProt accession, genomic coordinates, and pathway memberships. Ideal for enriching gene lists from RNA-seq experiments, GWAS results, or drug target panels. Mix of NCBI Entrez and Ensembl IDs is supported in the same request.
| Argument | Type | Description |
|---|---|---|
| ids* | string | Comma-separated list of NCBI Entrez Gene IDs or Ensembl gene IDs to retrieve in one request (e.g. "1017,1018,1019" for CDK2/CDK3/CDK4, or "ENSG00000123374,ENSG00000012048"). Maximum 1000 IDs per call. |
| fields | string | Comma-separated fields to return for each gene. Default: symbol, name, taxid, entrezgene, type_of_gene, summary, ensembl, uniprot, alias, genomic_pos, pathway. Limit fields to reduce response size for large batches. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"ids"
],
"properties": {
"ids": {
"type": "string",
"minLength": 1,
"description": "Comma-separated list of NCBI Entrez Gene IDs or Ensembl gene IDs to retrieve in one request (e.g. \"1017,1018,1019\" for CDK2/CDK3/CDK4, or \"ENSG00000123374,ENSG00000012048\"). Maximum 1000 IDs per call."
},
"fields": {
"type": "string",
"description": "Comma-separated fields to return for each gene. Default: symbol, name, taxid, entrezgene, type_of_gene, summary, ensembl, uniprot, alias, genomic_pos, pathway. Limit fields to reduce response size for large batches."
}
},
"additionalProperties": false
}Retrieve comprehensive annotation data for a single gene by its NCBI Entrez Gene ID or Ensembl gene ID. Returns the full gene record including: official symbol and name, gene type (protein-coding, ncRNA, pseudo, etc.), species taxon, gene summary, Ensembl transcript and protein IDs, UniProt Swiss-Prot accession, gene aliases, genomic coordinates (chromosome, start, end, strand), KEGG and Reactome pathway memberships, and Gene Ontology (GO) annotations across biological process, cellular component, and molecular function. Use mygene.genes.search or mygene.genes.symbol to discover Entrez Gene IDs first.
| Argument | Type | Description |
|---|---|---|
| fields | string | Comma-separated fields to return. Default includes: symbol, name, taxid, entrezgene, type_of_gene, summary, ensembl, uniprot, alias, genomic_pos, pathway. Use "all" to fetch every available annotation (includes GO terms, RefSeq, PDB, OMIM, etc.). |
| gene_id* | string | Gene identifier — NCBI Entrez Gene ID (e.g. "1017" for CDK2, "672" for BRCA1) or Ensembl gene ID (e.g. "ENSG00000123374"). Obtain Entrez Gene IDs from mygene.search or mygene.query_by_symbol results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"gene_id"
],
"properties": {
"fields": {
"type": "string",
"description": "Comma-separated fields to return. Default includes: symbol, name, taxid, entrezgene, type_of_gene, summary, ensembl, uniprot, alias, genomic_pos, pathway. Use \"all\" to fetch every available annotation (includes GO terms, RefSeq, PDB, OMIM, etc.)."
},
"gene_id": {
"type": "string",
"minLength": 1,
"description": "Gene identifier — NCBI Entrez Gene ID (e.g. \"1017\" for CDK2, \"672\" for BRCA1) or Ensembl gene ID (e.g. \"ENSG00000123374\"). Obtain Entrez Gene IDs from mygene.search or mygene.query_by_symbol results."
}
},
"additionalProperties": false
}Search the MyGene.info gene database by keyword, gene symbol, gene name, GO term, or any other gene annotation. Backed by NCBI Entrez Gene, Ensembl, UniProt, and other authoritative databases aggregated by the BioThings project. Returns NCBI Gene IDs, symbols, names, gene type, taxon, and summary text. Supports wildcard queries (e.g. "CDK*" returns all CDK family members) and species filtering. Use the returned Entrez Gene IDs with mygene.genes.info or mygene.genes.batch for full annotations including GO terms, KEGG/Reactome pathways, UniProt accessions, and genomic coordinates.
| Argument | Type | Description |
|---|---|---|
| q* | string | Gene query string. Supports full-text search by gene symbol (e.g. "BRCA1"), gene name (e.g. "breast cancer 1"), keyword (e.g. "kinase"), GO term ID (e.g. "GO:0006915"), or Entrez Gene ID (e.g. "1017"). Wildcards supported: "CDK*" matches CDK1, CDK2, etc. |
| size | integer | Maximum number of gene results to return (1–50, default 10). |
| fields | string | Comma-separated fields to return per hit. Default: symbol,name,taxid,entrezgene,type_of_gene,summary. Other useful fields: ensembl.gene, uniprot, alias, genomic_pos, go, pathway. Use "all" for every available field. |
| species | string | Filter by species. Common values: "human" (Homo sapiens, taxid 9606), "mouse" (Mus musculus, taxid 10090), "rat" (Rattus norvegicus), "fruitfly" (Drosophila melanogaster), "zebrafish" (Danio rerio). Can also use NCBI taxid directly (e.g. "9606"). Use "all" to search across all species. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"minLength": 1,
"description": "Gene query string. Supports full-text search by gene symbol (e.g. \"BRCA1\"), gene name (e.g. \"breast cancer 1\"), keyword (e.g. \"kinase\"), GO term ID (e.g. \"GO:0006915\"), or Entrez Gene ID (e.g. \"1017\"). Wildcards supported: \"CDK*\" matches CDK1, CDK2, etc."
},
"size": {
"type": "integer",
"default": 10,
"maximum": 50,
"minimum": 1,
"description": "Maximum number of gene results to return (1–50, default 10)."
},
"fields": {
"type": "string",
"description": "Comma-separated fields to return per hit. Default: symbol,name,taxid,entrezgene,type_of_gene,summary. Other useful fields: ensembl.gene, uniprot, alias, genomic_pos, go, pathway. Use \"all\" for every available field."
},
"species": {
"type": "string",
"default": "human",
"description": "Filter by species. Common values: \"human\" (Homo sapiens, taxid 9606), \"mouse\" (Mus musculus, taxid 10090), \"rat\" (Rattus norvegicus), \"fruitfly\" (Drosophila melanogaster), \"zebrafish\" (Danio rerio). Can also use NCBI taxid directly (e.g. \"9606\"). Use \"all\" to search across all species."
}
},
"additionalProperties": false
}Find a gene by its official gene symbol with an exact match for a specific species. Returns a single best-matching gene with full annotation: NCBI Entrez Gene ID, Ensembl gene ID, gene name, type, taxon, summary, UniProt accession, genomic coordinates, pathway memberships, and GO terms. Faster and more precise than full-text search when the official symbol is known. Case-insensitive (BRCA1, brca1, Brca1 all match). For human genes, use HGNC symbols (e.g. "TP53", "EGFR", "KRAS", "VEGFA"). Results can be used directly with mygene.genes.batch for comparative multi-gene analysis.
| Argument | Type | Description |
|---|---|---|
| fields | string | Comma-separated fields to include in the response. Default includes: symbol, name, taxid, entrezgene, type_of_gene, summary, ensembl, uniprot, alias, genomic_pos, pathway. Use "all" for complete gene annotations. |
| symbol* | string | Official HGNC gene symbol (for human) or equivalent gene symbol in the target species. Case-insensitive (e.g. "BRCA1", "TP53", "EGFR", "KRAS"). Performs an exact symbol match and returns the single best-matching gene. |
| species | string | Target species for the symbol lookup. Common values: "human", "mouse", "rat", "fruitfly", "zebrafish", "chicken", "pig", "dog". Can also use NCBI taxid (e.g. "9606" for human). Defaults to "human". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"symbol"
],
"properties": {
"fields": {
"type": "string",
"description": "Comma-separated fields to include in the response. Default includes: symbol, name, taxid, entrezgene, type_of_gene, summary, ensembl, uniprot, alias, genomic_pos, pathway. Use \"all\" for complete gene annotations."
},
"symbol": {
"type": "string",
"minLength": 1,
"description": "Official HGNC gene symbol (for human) or equivalent gene symbol in the target species. Case-insensitive (e.g. \"BRCA1\", \"TP53\", \"EGFR\", \"KRAS\"). Performs an exact symbol match and returns the single best-matching gene."
},
"species": {
"type": "string",
"default": "human",
"description": "Target species for the symbol lookup. Common values: \"human\", \"mouse\", \"rat\", \"fruitfly\", \"zebrafish\", \"chicken\", \"pig\", \"dog\". Can also use NCBI taxid (e.g. \"9606\" for human). Defaults to \"human\"."
}
},
"additionalProperties": false
}Retrieve annotations for up to 1000 genetic variants in a single request by providing a comma-separated list of dbSNP rsIDs or HGVS variant IDs. Returns ClinVar significance, CADD scores, gnomAD allele frequencies, and functional consequence predictions for each variant in one call. Ideal for annotating VCF files, enriching GWAS hit lists, building polygenic risk score pipelines, or bulk pharmacogenomics analysis. Variants not found in the database are marked with found=false. Mix rsIDs from different chromosomes freely — no grouping by position required.
| Argument | Type | Description |
|---|---|---|
| ids* | string | Comma-separated list of variant identifiers to retrieve in a single request. Accepts dbSNP rsIDs (e.g. "rs58991260,rs671,rs1801133") or HGVS genomic IDs. Mix of rsIDs is supported. Maximum 1000 IDs per call. Returns annotation for each variant including ClinVar significance, CADD score, gnomAD allele frequencies, and functional consequences. |
| fields | string | Comma-separated annotation fields to return for each variant. Default: dbsnp,clinvar,cadd,gnomad_exome,gnomad_genome,snpeff,vcf,chrom,hg19. Limit fields for large batches to reduce response size. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"ids"
],
"properties": {
"ids": {
"type": "string",
"minLength": 1,
"description": "Comma-separated list of variant identifiers to retrieve in a single request. Accepts dbSNP rsIDs (e.g. \"rs58991260,rs671,rs1801133\") or HGVS genomic IDs. Mix of rsIDs is supported. Maximum 1000 IDs per call. Returns annotation for each variant including ClinVar significance, CADD score, gnomAD allele frequencies, and functional consequences."
},
"fields": {
"type": "string",
"description": "Comma-separated annotation fields to return for each variant. Default: dbsnp,clinvar,cadd,gnomad_exome,gnomad_genome,snpeff,vcf,chrom,hg19. Limit fields for large batches to reduce response size."
}
},
"additionalProperties": false
}Retrieve comprehensive annotation for a single genetic variant by its dbSNP rsID (e.g. "rs671") or HGVS genomic notation. Returns complete annotation from 30+ integrated databases: ClinVar clinical significance and disease conditions, CADD pathogenicity scores (raw + PHRED), gnomAD exome and genome allele frequencies across ancestry groups (AFR, EUR, EAS, AMR, ASJ), SnpEff predicted functional consequences with HGVS coding and protein notations, dbSNP allele frequency data, COSMIC somatic mutation records, CIViC clinical interpretations, and genomic coordinates in both GRCh37 (hg19) and GRCh38 (hg38). Essential for variant interpretation pipelines, pharmacogenomics analysis, and clinical variant classification (ACMG guidelines).
| Argument | Type | Description |
|---|---|---|
| fields | string | Comma-separated annotation fields to retrieve. Default: dbsnp,clinvar,cadd,gnomad_exome,gnomad_genome,snpeff,vcf,chrom,hg19. Optional: dbnsfp (functional predictions), cosmic (somatic), civic (clinical), gwassnps (GWAS associations), hg38 (GRCh38 coordinates). Use "all" for complete annotation. |
| variant_id* | string | Variant identifier — dbSNP rsID (e.g. "rs58991260"), or HGVS genomic notation (e.g. "chr7:g.140453134A>T" — use URL-encoded form when needed). rsIDs are preferred as they are stable across assemblies. Obtain IDs from myvariant.search results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"variant_id"
],
"properties": {
"fields": {
"type": "string",
"description": "Comma-separated annotation fields to retrieve. Default: dbsnp,clinvar,cadd,gnomad_exome,gnomad_genome,snpeff,vcf,chrom,hg19. Optional: dbnsfp (functional predictions), cosmic (somatic), civic (clinical), gwassnps (GWAS associations), hg38 (GRCh38 coordinates). Use \"all\" for complete annotation."
},
"variant_id": {
"type": "string",
"minLength": 1,
"description": "Variant identifier — dbSNP rsID (e.g. \"rs58991260\"), or HGVS genomic notation (e.g. \"chr7:g.140453134A>T\" — use URL-encoded form when needed). rsIDs are preferred as they are stable across assemblies. Obtain IDs from myvariant.search results."
}
},
"additionalProperties": false
}Retrieve build metadata and data source statistics for the MyVariant.info API. Returns the current database build version (e.g. "20250624"), build date, total number of variant records, and a list of integrated annotation sources with their versions, URLs, and license information. Sources include ClinVar, gnomAD, CADD, dbSNP v156, COSMIC, CIViC, ExAC, GWAS Catalog, SnpEff, EVS, EMV, and 20+ additional variant databases. Use to verify data currency before running large annotation jobs or to cite specific source versions in research.
| Argument | Type | Description |
|---|---|---|
| detail | boolean | If true, include full source metadata (download dates, record counts per source, code repository links). If false (default), return only build version, build date, and a list of source names and URLs. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"detail": {
"type": "boolean",
"default": false,
"description": "If true, include full source metadata (download dates, record counts per source, code repository links). If false (default), return only build version, build date, and a list of source names and URLs."
}
},
"additionalProperties": false
}Search the MyVariant.info database of 450M+ annotated human genetic variants using a flexible query syntax. Query by: dbSNP rsID (e.g. "rs58991260"), gene symbol (e.g. "dbsnp.gene.symbol:BRCA1"), ClinVar clinical significance (e.g. "clinvar.rcv.clinical_significance:Pathogenic"), CADD pathogenicity score (e.g. "cadd.phred:>30"), chromosomal position range (e.g. "chrom:17 AND hg19.start:[41196312 TO 41277500]"), or disease/phenotype keywords (e.g. "clinvar.rcv.conditions.name:breast cancer"). Each hit includes chromosome, genomic position (hg19/hg38), rsID, reference/alternate alleles, CADD PHRED score, ClinVar clinical significance, gnomAD allele frequency, and predicted functional consequences (SnpEff). Data integrates ClinVar, gnomAD, CADD, dbSNP, COSMIC, CIViC, ExAC, and 30+ annotation sources.
| Argument | Type | Description |
|---|---|---|
| q* | string | Variant query string. Supports: rsID (e.g. "rs58991260"), gene symbol (e.g. "dbsnp.gene.symbol:BRCA1"), CADD score filter (e.g. "cadd.phred:>20"), ClinVar significance (e.g. "clinvar.rcv.clinical_significance:Pathogenic"), chromosome position (e.g. "chrom:7 AND hg19.start:[140453000 TO 140454000]"), or disease/phenotype keywords (e.g. "clinvar.rcv.conditions.name:breast cancer"). |
| size | integer | Maximum number of variant results to return (1–50, default 10). |
| fields | string | Comma-separated fields to return per hit. Default: dbsnp,clinvar,cadd,gnomad_exome,gnomad_genome,snpeff,vcf,chrom,hg19. Other useful fields: dbnsfp,cosmic,civic,gwassnps,hg38. Use "all" for every available annotation source. |
| assembly | string | Genome assembly for coordinate fields in results. "hg19" (GRCh37) or "hg38" (GRCh38). Defaults to hg19. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"minLength": 1,
"description": "Variant query string. Supports: rsID (e.g. \"rs58991260\"), gene symbol (e.g. \"dbsnp.gene.symbol:BRCA1\"), CADD score filter (e.g. \"cadd.phred:>20\"), ClinVar significance (e.g. \"clinvar.rcv.clinical_significance:Pathogenic\"), chromosome position (e.g. \"chrom:7 AND hg19.start:[140453000 TO 140454000]\"), or disease/phenotype keywords (e.g. \"clinvar.rcv.conditions.name:breast cancer\")."
},
"size": {
"type": "integer",
"default": 10,
"maximum": 50,
"minimum": 1,
"description": "Maximum number of variant results to return (1–50, default 10)."
},
"fields": {
"type": "string",
"description": "Comma-separated fields to return per hit. Default: dbsnp,clinvar,cadd,gnomad_exome,gnomad_genome,snpeff,vcf,chrom,hg19. Other useful fields: dbnsfp,cosmic,civic,gwassnps,hg38. Use \"all\" for every available annotation source."
},
"assembly": {
"enum": [
"hg19",
"hg38"
],
"type": "string",
"description": "Genome assembly for coordinate fields in results. \"hg19\" (GRCh37) or \"hg38\" (GRCh38). Defaults to hg19."
}
},
"additionalProperties": false
}Retrieve full UMM (Universal Metadata Model) metadata for a specific NASA CMR collection identified by its concept ID (e.g. "C2515837343-GES_DISC"). Returns abstract, version, processing level, temporal extents, observing platforms and instruments, science keywords (GCMD taxonomy: category/topic/term), DOI, related URLs, and data center information. Concept IDs are obtained from nasa-cmr.datasets.search results. Essential for understanding dataset scope, instrument provenance, and citation details before downloading granules. Source: NASA CMR — US Gov public domain, no auth required.
| Argument | Type | Description |
|---|---|---|
| concept_id* | string | CMR concept ID of the collection to retrieve full UMM metadata for (e.g. "C2515837343-GES_DISC"). Obtain concept IDs from nasa-cmr.datasets.search results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"concept_id"
],
"properties": {
"concept_id": {
"type": "string",
"description": "CMR concept ID of the collection to retrieve full UMM metadata for (e.g. \"C2515837343-GES_DISC\"). Obtain concept IDs from nasa-cmr.datasets.search results."
}
},
"additionalProperties": false
}Search NASA Common Metadata Repository (CMR) for Earth science satellite datasets and collections. Filter by keyword, data provider (ORNL_DAAC, GES_DISC, LPDAAC_ECS, PODAAC, NSIDC_ECS), temporal range, spatial bounding box, and processing level. Returns concept IDs, titles, summaries, data centers, temporal coverage, and access flags. CMR indexes 45,000+ collections covering climate, land, atmosphere, ocean, cryosphere, and biosphere from 60+ NASA data archives. Concept IDs from results feed into nasa-cmr.datasets.detail and nasa-cmr.granules.search. Source: NASA CMR — US Gov public domain, no auth required.
| Argument | Type | Description |
|---|---|---|
| bbox | string | Bounding box spatial filter as "west,south,east,north" decimal degrees (e.g. "-180,-90,180,90" for global, "-125,24,-66,50" for continental US). Returns collections with spatial coverage intersecting the box. |
| keyword | string | Free-text keyword to search collection titles, summaries, and metadata (e.g. "sea surface temperature", "MODIS land cover", "global precipitation"). |
| provider | string | Filter by NASA data center / archive provider ID (e.g. "GES_DISC", "ORNL_DAAC", "LPDAAC_ECS", "PODAAC", "NSIDC_ECS"). Use nasa-cmr.providers.list to discover available provider IDs. |
| sort_key | string | Sort order for results: "-score" (relevance, default), "entry_title" / "-entry_title" (alphabetical), "start_date" / "-start_date" (temporal coverage start date). |
| page_size | integer | Number of collections to return per page (1–20, default 10). |
| short_name | string | Exact collection short name identifier (e.g. "MOD13A2", "GPM_3IMERGHHE"). Use when you know the specific dataset short name. |
| temporal_end | string | End of temporal coverage filter in ISO 8601 UTC format (e.g. "2023-12-31T23:59:59Z"). Returns collections whose temporal extent overlaps this range. |
| temporal_start | string | Start of temporal coverage filter in ISO 8601 UTC format (e.g. "2020-01-01T00:00:00Z"). Returns collections whose temporal extent overlaps this range. |
| processing_level | string | NASA data processing level filter (e.g. "1B", "2", "3", "4"). Level 1 = raw/calibrated; Level 2 = geophysical retrievals; Level 3 = gridded; Level 4 = model output. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"bbox": {
"type": "string",
"description": "Bounding box spatial filter as \"west,south,east,north\" decimal degrees (e.g. \"-180,-90,180,90\" for global, \"-125,24,-66,50\" for continental US). Returns collections with spatial coverage intersecting the box."
},
"keyword": {
"type": "string",
"description": "Free-text keyword to search collection titles, summaries, and metadata (e.g. \"sea surface temperature\", \"MODIS land cover\", \"global precipitation\")."
},
"provider": {
"type": "string",
"description": "Filter by NASA data center / archive provider ID (e.g. \"GES_DISC\", \"ORNL_DAAC\", \"LPDAAC_ECS\", \"PODAAC\", \"NSIDC_ECS\"). Use nasa-cmr.providers.list to discover available provider IDs."
},
"sort_key": {
"enum": [
"-score",
"entry_title",
"-entry_title",
"start_date",
"-start_date"
],
"type": "string",
"description": "Sort order for results: \"-score\" (relevance, default), \"entry_title\" / \"-entry_title\" (alphabetical), \"start_date\" / \"-start_date\" (temporal coverage start date)."
},
"page_size": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of collections to return per page (1–20, default 10)."
},
"short_name": {
"type": "string",
"description": "Exact collection short name identifier (e.g. \"MOD13A2\", \"GPM_3IMERGHHE\"). Use when you know the specific dataset short name."
},
"temporal_end": {
"type": "string",
"description": "End of temporal coverage filter in ISO 8601 UTC format (e.g. \"2023-12-31T23:59:59Z\"). Returns collections whose temporal extent overlaps this range."
},
"temporal_start": {
"type": "string",
"description": "Start of temporal coverage filter in ISO 8601 UTC format (e.g. \"2020-01-01T00:00:00Z\"). Returns collections whose temporal extent overlaps this range."
},
"processing_level": {
"type": "string",
"description": "NASA data processing level filter (e.g. \"1B\", \"2\", \"3\", \"4\"). Level 1 = raw/calibrated; Level 2 = geophysical retrievals; Level 3 = gridded; Level 4 = model output."
}
},
"additionalProperties": false
}Search for individual data granules (files) within a NASA CMR collection. Filter by collection concept ID or short name (e.g. "MOD09GA"), temporal range, spatial bounding box, and day/night acquisition flag. Returns granule IDs, titles, acquisition times, cloud cover percentage, file size (MB), online access status, browse image availability, and direct download URLs. Granules are the individual science data files (HDF, NetCDF, GeoTIFF) that agents can download for analysis. Use nasa-cmr.datasets.search first to find the collection concept ID, then use this tool to locate specific files by time/area. Source: NASA CMR — US Gov public domain, no auth required.
| Argument | Type | Description |
|---|---|---|
| bbox | string | Bounding box spatial filter as "west,south,east,north" decimal degrees (e.g. "-10.0,35.0,30.0,60.0" for Europe). Returns granules with spatial coverage intersecting the box. |
| page_size | integer | Number of granules to return per page (1–20, default 10). |
| short_name | string | Collection short name to search granules for (e.g. "MOD09GA", "GPM_3IMERGHHE"). Alternative to collection_concept_id for well-known datasets. |
| temporal_end | string | End of temporal filter in ISO 8601 UTC format (e.g. "2023-01-31T23:59:59Z"). Returns granules with data acquisition time overlapping this range. |
| day_night_flag | string | Filter granules by illumination condition during acquisition: "day" (daylight pass), "night" (nighttime pass), or "unspecified". |
| temporal_start | string | Start of temporal filter in ISO 8601 UTC format (e.g. "2023-01-01T00:00:00Z"). Returns granules with data acquisition time overlapping this range. |
| collection_concept_id | string | CMR concept ID of the parent collection to search granules within (e.g. "C2515837343-GES_DISC"). Obtain from nasa-cmr.datasets.search results. Provide this or short_name to scope the search. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"bbox": {
"type": "string",
"description": "Bounding box spatial filter as \"west,south,east,north\" decimal degrees (e.g. \"-10.0,35.0,30.0,60.0\" for Europe). Returns granules with spatial coverage intersecting the box."
},
"page_size": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of granules to return per page (1–20, default 10)."
},
"short_name": {
"type": "string",
"description": "Collection short name to search granules for (e.g. \"MOD09GA\", \"GPM_3IMERGHHE\"). Alternative to collection_concept_id for well-known datasets."
},
"temporal_end": {
"type": "string",
"description": "End of temporal filter in ISO 8601 UTC format (e.g. \"2023-01-31T23:59:59Z\"). Returns granules with data acquisition time overlapping this range."
},
"day_night_flag": {
"enum": [
"day",
"night",
"unspecified"
],
"type": "string",
"description": "Filter granules by illumination condition during acquisition: \"day\" (daylight pass), \"night\" (nighttime pass), or \"unspecified\"."
},
"temporal_start": {
"type": "string",
"description": "Start of temporal filter in ISO 8601 UTC format (e.g. \"2023-01-01T00:00:00Z\"). Returns granules with data acquisition time overlapping this range."
},
"collection_concept_id": {
"type": "string",
"description": "CMR concept ID of the parent collection to search granules within (e.g. \"C2515837343-GES_DISC\"). Obtain from nasa-cmr.datasets.search results. Provide this or short_name to scope the search."
}
},
"additionalProperties": false
}List all data centers and archive providers registered in the NASA CMR system. Returns provider IDs (e.g. GES_DISC, ORNL_DAAC, LPDAAC_ECS, PODAAC, NSIDC_ECS, LAADS, ASDC, GHRC_DAAC), organization names, URLs, roles, and consortium memberships. Use provider IDs as the "provider" parameter in nasa-cmr.datasets.search to scope dataset discovery to a specific NASA archive center. There are approximately 60 active providers covering distinct Earth science disciplines. Source: NASA CMR — US Gov public domain, no auth required.
| Argument | Type | Description |
|---|---|---|
| page_size | integer | Number of providers to return (1–100, default 50). There are approximately 60 active NASA CMR data centers. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page_size": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of providers to return (1–100, default 50). There are approximately 60 active NASA CMR data centers."
}
},
"additionalProperties": false
}Get full parameters for a specific exoplanet by exact name from NASA Exoplanet Archive. Returns orbital period, radius, mass, equilibrium temperature, insolation flux, semi-major axis, host star spectral type and temperature, sky coordinates (RA/Dec), and last parameter update date. Example planets: "HD 209458 b", "TRAPPIST-1 e", "Kepler-452 b" (NASA Exoplanet Archive).
| Argument | Type | Description |
|---|---|---|
| planet_name* | string | Exact planet name for detail lookup (e.g. "HD 209458 b", "TRAPPIST-1 e", "Kepler-452 b") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"planet_name"
],
"properties": {
"planet_name": {
"type": "string",
"description": "Exact planet name for detail lookup (e.g. \"HD 209458 b\", \"TRAPPIST-1 e\", \"Kepler-452 b\")"
}
},
"additionalProperties": false
}Find potentially habitable exoplanets in the conservative habitable zone — planets with Earth-like radius (0.5–2.0 R⊕) and equilibrium temperature suitable for liquid water (180–310 K). Sorted by radius ascending. Returns radius, mass, orbital period, equilibrium temperature, insolation flux, and host star details. Customisable temperature and radius bounds for optimistic or strict filtering (NASA Exoplanet Archive — pscomppars table).
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of candidates to return (default 20, max 100) |
| temp_max | number | Maximum equilibrium temperature in Kelvin (default 310 — conservative habitable zone upper bound) |
| temp_min | number | Minimum equilibrium temperature in Kelvin (default 180 — conservative habitable zone lower bound) |
| radius_max | number | Maximum planet radius in Earth radii (default 2.0 — upper limit for rocky planets) |
| radius_min | number | Minimum planet radius in Earth radii (default 0.5 — filters sub-Earth bodies) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of candidates to return (default 20, max 100)"
},
"temp_max": {
"type": "number",
"minimum": 0,
"description": "Maximum equilibrium temperature in Kelvin (default 310 — conservative habitable zone upper bound)"
},
"temp_min": {
"type": "number",
"minimum": 0,
"description": "Minimum equilibrium temperature in Kelvin (default 180 — conservative habitable zone lower bound)"
},
"radius_max": {
"type": "number",
"minimum": 0,
"description": "Maximum planet radius in Earth radii (default 2.0 — upper limit for rocky planets)"
},
"radius_min": {
"type": "number",
"minimum": 0,
"description": "Minimum planet radius in Earth radii (default 0.5 — filters sub-Earth bodies)"
}
},
"additionalProperties": false
}Search NASA Exoplanet Archive for confirmed exoplanets by name, host star, discovery method, year range, radius, or mass. Returns orbital period, radius, mass, equilibrium temperature, discovery year and facility, and system distance. 6,298+ confirmed planets from Transit, Radial Velocity, Imaging, and Microlensing surveys (NASA Exoplanet Archive).
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of results to return (default 20, max 100) |
| mass_max | number | Maximum planet mass in Earth masses (e.g. 318 ≈ 1 Jupiter mass) |
| mass_min | number | Minimum planet mass in Earth masses (e.g. 0.1 for sub-Earths) |
| host_name | string | Host star name or partial name (e.g. "51 Peg", "Kepler-442") |
| radius_max | number | Maximum planet radius in Earth radii (e.g. 2.0 for super-Earths; 11 ≈ Jupiter) |
| radius_min | number | Minimum planet radius in Earth radii (e.g. 0.5 for sub-Earths and above) |
| planet_name | string | Planet name or partial name to search (e.g. "Kepler-22 b", "TOI-700") |
| disc_year_max | integer | Maximum discovery year (e.g. 2020 to filter planets found before 2021) |
| disc_year_min | integer | Minimum discovery year (e.g. 2010 to filter planets found in 2010 or later) |
| discovery_method | string | Discovery method filter (e.g. "Transit", "Radial Velocity", "Imaging") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of results to return (default 20, max 100)"
},
"mass_max": {
"type": "number",
"minimum": 0,
"description": "Maximum planet mass in Earth masses (e.g. 318 ≈ 1 Jupiter mass)"
},
"mass_min": {
"type": "number",
"minimum": 0,
"description": "Minimum planet mass in Earth masses (e.g. 0.1 for sub-Earths)"
},
"host_name": {
"type": "string",
"description": "Host star name or partial name (e.g. \"51 Peg\", \"Kepler-442\")"
},
"radius_max": {
"type": "number",
"minimum": 0,
"description": "Maximum planet radius in Earth radii (e.g. 2.0 for super-Earths; 11 ≈ Jupiter)"
},
"radius_min": {
"type": "number",
"minimum": 0,
"description": "Minimum planet radius in Earth radii (e.g. 0.5 for sub-Earths and above)"
},
"planet_name": {
"type": "string",
"description": "Planet name or partial name to search (e.g. \"Kepler-22 b\", \"TOI-700\")"
},
"disc_year_max": {
"type": "integer",
"maximum": 2030,
"minimum": 1988,
"description": "Maximum discovery year (e.g. 2020 to filter planets found before 2021)"
},
"disc_year_min": {
"type": "integer",
"maximum": 2030,
"minimum": 1988,
"description": "Minimum discovery year (e.g. 2010 to filter planets found in 2010 or later)"
},
"discovery_method": {
"enum": [
"Transit",
"Radial Velocity",
"Microlensing",
"Imaging",
"Astrometry",
"Transit Timing Variations",
"Orbital Brightness Modulation",
"Pulsar Timing",
"Pulsation Timing Variations",
"Disk Kinematics",
"Eclipse Timing Variations"
],
"type": "string",
"description": "Discovery method filter (e.g. \"Transit\", \"Radial Velocity\", \"Imaging\")"
}
},
"additionalProperties": false
}Get discovery statistics for confirmed exoplanets aggregated by method, year, or facility. Group by "method" to see Transit vs Radial Velocity vs Imaging counts, "year" for annual discovery trends since 1988, or "facility" to rank observatories and missions (Kepler, TESS, Keck, etc.) by total discoveries (NASA Exoplanet Archive).
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of groups to return (default 50, max 100) |
| group_by | string | Dimension to aggregate by: "method" (discovery method counts), "year" (annual discoveries), or "facility" (telescope/observatory counts). Default: method |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of groups to return (default 50, max 100)"
},
"group_by": {
"enum": [
"method",
"year",
"facility"
],
"type": "string",
"description": "Dimension to aggregate by: \"method\" (discovery method counts), \"year\" (annual discoveries), or \"facility\" (telescope/observatory counts). Default: method"
}
},
"additionalProperties": false
}Get the full citation and metadata for a specific NASA technical report by its numeric NTRS ID. Returns complete record: title, full abstract, all authors with organizational affiliations, document type, NASA center, publication and submission dates, subject categories, keywords, report numbers, and direct PDF/fulltext download URLs. Use nasantrs.reports.search or nasantrs.reports.recent to find NTRS IDs, or extract the ID from the URL at ntrs.nasa.gov/citations/{id}. PDF download links point directly to the NASA server — freely accessible without authentication.
| Argument | Type | Description |
|---|---|---|
| report_id* | integer | Numeric NTRS submission/citation ID (e.g. 20140017767). Obtain from nasantrs.reports.search or nasantrs.reports.recent results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"report_id"
],
"properties": {
"report_id": {
"type": "integer",
"description": "Numeric NTRS submission/citation ID (e.g. 20140017767). Obtain from nasantrs.reports.search or nasantrs.reports.recent results."
}
},
"additionalProperties": false
}Retrieve the most recently published NASA technical reports, sorted by public release date (newest first). Optionally filter by NASA center to monitor new publications from JPL, GSFC, JSC, MSFC, LaRC, ARC, GRC, or KSC. Returns title, release date, NASA center, document type, and NTRS ID for each report. Useful for tracking the latest NASA research across any discipline — space exploration, aeronautics, Earth science, technology development, and more. All documents are open access under US Government public domain.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default 1). |
| limit | integer | Number of recent reports to return (1–25, default 10). |
| center | string | Filter by NASA center code to see only recent publications from a specific center (e.g. JPL, GSFC, JSC, MSFC, LaRC, ARC, GRC, KSC). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)."
},
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Number of recent reports to return (1–25, default 10)."
},
"center": {
"type": "string",
"description": "Filter by NASA center code to see only recent publications from a specific center (e.g. JPL, GSFC, JSC, MSFC, LaRC, ARC, GRC, KSC)."
}
},
"additionalProperties": false
}Full-text search across 645,000+ NASA technical reports, conference papers, contractor reports, presentations, and memoranda spanning 1915 to present. Filter by NASA center (JPL, GSFC, JSC, MSFC, LaRC, ARC, GRC, KSC) and sort by relevance or date. Returns title, abstract, authors with affiliations, document type, publication date, subject categories, keywords, and direct PDF download URLs. Covers aeronautics, space exploration, Earth science, astrophysics, propulsion, materials science, robotics, and all NASA research domains. Free and open access — US Government public domain.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default 1). Use with limit to browse large result sets. |
| sort | string | Sort order: "score" (relevance, default), "releaseDate" (public release date), "submittedDate" (submission date). |
| limit | integer | Number of results to return per page (1–25, default 10). |
| order | string | Sort direction: "asc" (ascending) or "desc" (descending, default for date sorts). |
| query | string | Full-text search query. Searches titles, abstracts, keywords, and author names (e.g. "solar wind", "lunar lander", "propulsion system"). Leave empty to browse all documents. |
| center | string | Filter by NASA center code. Examples: JPL (Jet Propulsion Laboratory), GSFC (Goddard Space Flight Center), JSC (Johnson), MSFC (Marshall), LaRC (Langley), ARC (Ames), GRC (Glenn), KSC (Kennedy). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1). Use with limit to browse large result sets."
},
"sort": {
"enum": [
"score",
"releaseDate",
"submittedDate"
],
"type": "string",
"description": "Sort order: \"score\" (relevance, default), \"releaseDate\" (public release date), \"submittedDate\" (submission date)."
},
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Number of results to return per page (1–25, default 10)."
},
"order": {
"enum": [
"asc",
"desc"
],
"type": "string",
"description": "Sort direction: \"asc\" (ascending) or \"desc\" (descending, default for date sorts)."
},
"query": {
"type": "string",
"description": "Full-text search query. Searches titles, abstracts, keywords, and author names (e.g. \"solar wind\", \"lunar lander\", \"propulsion system\"). Leave empty to browse all documents."
},
"center": {
"type": "string",
"description": "Filter by NASA center code. Examples: JPL (Jet Propulsion Laboratory), GSFC (Goddard Space Flight Center), JSC (Johnson), MSFC (Marshall), LaRC (Langley), ARC (Ames), GRC (Glenn), KSC (Kennedy)."
}
},
"additionalProperties": false
}Get aggregate statistics for the entire NASA Technical Reports Server corpus. Returns total document count (645,000+) and breakdowns by: document type (conference paper, contractor report, technical memorandum, presentation, reprint, etc.), subject category (astrophysics, aerodynamics, geophysics, propulsion, etc.), and NASA center (JPL, GSFC, LaRC, MSFC, ARC, JSC, etc.). Also returns the top research keywords across the corpus. Useful for understanding the scope and distribution of NASA's documented research output.
| Argument | Type | Description |
|---|---|---|
| detail | boolean | When true, returns full aggregation breakdowns by document type, subject category, NASA center, and top keywords. Always true — parameter reserved for future use. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"detail": {
"type": "boolean",
"description": "When true, returns full aggregation breakdowns by document type, subject category, NASA center, and top keywords. Always true — parameter reserved for future use."
}
},
"additionalProperties": false
}Retrieve the full NBI record for a specific US highway bridge identified by state FIPS code and NBI structure number. Returns all inspection and inventory fields: condition ratings (deck, superstructure, substructure, channel, culvert), load ratings (operating and inventory, in tons), structural evaluation, waterway adequacy, posting/closure status, scour-critical rating, deck area (m²), approach details, owner and maintenance agency, functional classification, design load, deck structure/surface/membrane type, improvement costs, inspection frequency and date, fracture-critical designation, federal lands flag, and skew angle. Use nbi.search or nbi.nearby to discover structure numbers before calling this tool. Data: FHWA NBI as of June 2023. No auth required — USDOT public domain.
| Argument | Type | Description |
|---|---|---|
| state_code* | string | Two-digit FIPS state code (e.g. "06" for California, "48" for Texas, "36" for New York, "17" for Illinois). Leading zero required for single-digit states (e.g. "01" for Alabama). |
| structure_number* | string | NBI structure number — the unique bridge identifier within the state (e.g. "06 0021", "27 0052"). Obtainable from the structure_number field in nbi.search or nbi.nearby results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"state_code",
"structure_number"
],
"properties": {
"state_code": {
"type": "string",
"pattern": "^\\d{2}$",
"maxLength": 2,
"minLength": 2,
"description": "Two-digit FIPS state code (e.g. \"06\" for California, \"48\" for Texas, \"36\" for New York, \"17\" for Illinois). Leading zero required for single-digit states (e.g. \"01\" for Alabama)."
},
"structure_number": {
"type": "string",
"maxLength": 15,
"minLength": 1,
"description": "NBI structure number — the unique bridge identifier within the state (e.g. \"06 0021\", \"27 0052\"). Obtainable from the structure_number field in nbi.search or nbi.nearby results."
}
},
"additionalProperties": false
}Get aggregated bridge condition statistics for all highway bridges in a given US state. Returns counts and percentages for each condition category: Good, Fair, Poor, and Unknown/Not-applicable. This summary matches the metrics used in the FHWA annual Bridge Conditions report and Congressional infrastructure reporting. A bridge is classified as Structurally Deficient if rated Poor. As of June 2023, ~7% of US bridges (43,000+) are in Poor condition. Useful for state-level infrastructure health dashboards, policy analysis, and funding prioritization. Data: FHWA NBI June 2023. No auth required — USDOT public domain.
| Argument | Type | Description |
|---|---|---|
| state_code* | string | Two-digit FIPS state code (e.g. "06" for California, "48" for Texas, "36" for New York, "17" for Illinois). Leading zero required for single-digit states (e.g. "01" for Alabama). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"state_code"
],
"properties": {
"state_code": {
"type": "string",
"pattern": "^\\d{2}$",
"maxLength": 2,
"minLength": 2,
"description": "Two-digit FIPS state code (e.g. \"06\" for California, \"48\" for Texas, \"36\" for New York, \"17\" for Illinois). Leading zero required for single-digit states (e.g. \"01\" for Alabama)."
}
},
"additionalProperties": false
}Find US highway bridges within a specified radius (up to 50 miles) of a latitude/longitude coordinate. Results are sorted by lowest sufficiency rating ascending (most at-risk bridges first). Returns the same core fields as nbi.search: structure number, location, feature below, coordinates, condition (Good/Fair/Poor), deck/superstructure/substructure ratings, operating load rating, max span length, deck width, average daily traffic, open/posted/closed status, and scour classification. Useful for infrastructure planning, site assessments, disaster response routing, and proximity analysis. Covers all 621,000+ US highway bridges. No auth required — USDOT/FHWA public domain data.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of nearby bridges to return (1–100, default 25). Sorted by lowest sufficiency rating ascending. |
| latitude* | number | Center latitude of the search area in decimal degrees (e.g. 37.7749 for San Francisco). |
| longitude* | number | Center longitude of the search area in decimal degrees (e.g. -122.4194 for San Francisco). |
| radius_miles | number | Search radius in miles from the center point (0.1–50, default 10). Larger radii may return up to 100 results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of nearby bridges to return (1–100, default 25). Sorted by lowest sufficiency rating ascending."
},
"latitude": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Center latitude of the search area in decimal degrees (e.g. 37.7749 for San Francisco)."
},
"longitude": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Center longitude of the search area in decimal degrees (e.g. -122.4194 for San Francisco)."
},
"radius_miles": {
"type": "number",
"maximum": 50,
"minimum": 0.1,
"description": "Search radius in miles from the center point (0.1–50, default 10). Larger radii may return up to 100 results."
}
},
"additionalProperties": false
}Search the National Bridge Inventory (NBI) for highway bridges in a US state, with optional filter by overall condition (Good / Fair / Poor). Returns up to 200 bridges per call, sorted by lowest sufficiency rating first. Each result includes: structure number, location, feature below (river/road), facility carried, coordinates, year built/reconstructed, overall bridge condition, deck/superstructure/substructure ratings (0–9 scale), operating load rating (tons), max span length (m), deck width (m), average daily traffic, open/posted/closed status, sufficiency rating, and scour-critical classification. Covers 621,000+ bridges on public roads across all 50 states plus territories. Data: FHWA NBI as of June 2023, updated annually. No auth required — USDOT public domain.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of bridges to return (1–200, default 50). Sorted by lowest sufficiency rating ascending. |
| condition | string | Filter by overall bridge condition: G = Good, F = Fair, P = Poor. Omit to return all conditions. |
| state_code* | string | Two-digit FIPS state code (e.g. "06" for California, "48" for Texas, "36" for New York, "17" for Illinois). Leading zero required for single-digit states (e.g. "01" for Alabama). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"state_code"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Maximum number of bridges to return (1–200, default 50). Sorted by lowest sufficiency rating ascending."
},
"condition": {
"enum": [
"G",
"F",
"P"
],
"type": "string",
"description": "Filter by overall bridge condition: G = Good, F = Fair, P = Poor. Omit to return all conditions."
},
"state_code": {
"type": "string",
"pattern": "^\\d{2}$",
"maxLength": 2,
"minLength": 2,
"description": "Two-digit FIPS state code (e.g. \"06\" for California, \"48\" for Texas, \"36\" for New York, \"17\" for Illinois). Leading zero required for single-digit states (e.g. \"01\" for Alabama)."
}
},
"additionalProperties": false
}Get the full taxonomic classification tree for one NCBI TaxID — every ancestor rank from domain/kingdom down to the organism itself (e.g. Eukaryota > Metazoa > Chordata > Mammalia > Carnivora > Felidae > Panthera > Panthera leo), plus scientific name, common name, and parent TaxID. Use ncbi-eutils.taxonomy_search first to find a tax_id. Data: eutils.ncbi.nlm.nih.gov, no auth required.
| Argument | Type | Description |
|---|---|---|
| tax_id* | string | NCBI Taxonomy ID (e.g. "9689" for Panthera leo), from ncbi-eutils.taxonomy_search results |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"tax_id"
],
"properties": {
"tax_id": {
"type": "string",
"pattern": "^\\d+$",
"description": "NCBI Taxonomy ID (e.g. \"9689\" for Panthera leo), from ncbi-eutils.taxonomy_search results"
}
},
"additionalProperties": false
}Search the NCBI Taxonomy database by organism scientific or common name (e.g. "Panthera leo" or "African elephant"). Returns matching NCBI TaxIDs plus the query translation NCBI actually ran. Use a returned tax_id with ncbi-eutils.taxonomy_summary or ncbi-eutils.taxonomy_lineage. Data: eutils.ncbi.nlm.nih.gov (US National Library of Medicine, public domain), no auth required.
| Argument | Type | Description |
|---|---|---|
| query* | string | Organism name to search NCBI Taxonomy for — scientific (e.g. "Panthera leo") or common name (e.g. "African elephant") |
| retmax | integer | Maximum number of matching TaxIDs to return (1-50, default 20) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"minLength": 1,
"description": "Organism name to search NCBI Taxonomy for — scientific (e.g. \"Panthera leo\") or common name (e.g. \"African elephant\")"
},
"retmax": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of matching TaxIDs to return (1-50, default 20)"
}
},
"additionalProperties": false
}Get the scientific name, common name, taxonomic rank, and division for one NCBI TaxID. Use ncbi-eutils.taxonomy_search first to find a tax_id. For the full kingdom-to-species classification tree, use ncbi-eutils.taxonomy_lineage instead. Data: eutils.ncbi.nlm.nih.gov, no auth required.
| Argument | Type | Description |
|---|---|---|
| tax_id* | string | NCBI Taxonomy ID (e.g. "9689" for Panthera leo), from ncbi-eutils.taxonomy_search results |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"tax_id"
],
"properties": {
"tax_id": {
"type": "string",
"pattern": "^\\d+$",
"description": "NCBI Taxonomy ID (e.g. \"9689\" for Panthera leo), from ncbi-eutils.taxonomy_search results"
}
},
"additionalProperties": false
}Retrieve historical daily weather observations from NOAA NCEI — max/min temperature, precipitation, snowfall, wind speed. 260+ years of records from global stations. Values in tenths of °C (temp) and tenths of mm (precip). Source: GHCND dataset.
| Argument | Type | Description |
|---|---|---|
| end_date* | string | End date in YYYY-MM-DD format (e.g. 2025-01-31). Max 1 year range. |
| datatypes | string | Comma-separated data types: TMAX (max temp), TMIN (min temp), PRCP (precipitation), SNOW, AWND (avg wind). Default: all. |
| start_date* | string | Start date in YYYY-MM-DD format (e.g. 2025-01-01) |
| station_id* | string | NCEI station ID (e.g. GHCND:USW00094728 for Central Park, NY). Get from ncei.stations tool. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"station_id",
"start_date",
"end_date"
],
"properties": {
"end_date": {
"type": "string",
"description": "End date in YYYY-MM-DD format (e.g. 2025-01-31). Max 1 year range."
},
"datatypes": {
"type": "string",
"description": "Comma-separated data types: TMAX (max temp), TMIN (min temp), PRCP (precipitation), SNOW, AWND (avg wind). Default: all."
},
"start_date": {
"type": "string",
"description": "Start date in YYYY-MM-DD format (e.g. 2025-01-01)"
},
"station_id": {
"type": "string",
"minLength": 1,
"description": "NCEI station ID (e.g. GHCND:USW00094728 for Central Park, NY). Get from ncei.stations tool."
}
},
"additionalProperties": false
}Search 100K+ global weather stations from NOAA NCEI by location (state FIPS, ZIP, country). Returns station ID, name, coordinates, elevation, and data coverage dates (some from 1700s). Use station IDs with ncei.daily_data for historical climate records.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of stations to return (1-25, default 10) |
| location_id* | string | Location ID: FIPS:06 (California), FIPS:36 (New York), ZIP:10001, CITY:US360019, or CNTRY:US |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"location_id"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Number of stations to return (1-25, default 10)"
},
"location_id": {
"type": "string",
"minLength": 1,
"description": "Location ID: FIPS:06 (California), FIPS:36 (New York), ZIP:10001, CITY:US360019, or CNTRY:US"
}
},
"additionalProperties": false
}Get a single Dutch cadastral parcel by its feature id (from search_percelen results). Returns municipality, section, parcel number, registered size (m²), validity status, and boundary geometry. Data: PDOK / Kadaster (api.pdok.nl), open data, no auth required.
| Argument | Type | Description |
|---|---|---|
| id* | string | Feature id (UUID) of a cadastral parcel, e.g. from netherlands-pdok-kadaster.search_percelen results |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "Feature id (UUID) of a cadastral parcel, e.g. from netherlands-pdok-kadaster.search_percelen results"
}
},
"additionalProperties": false
}Search Dutch building outlines (bebouwing) near a point, from the Kadaster Basisregistratie Kadaster (BRK) cadastral map. Returns each building's BAG pand identifier, status, source holder (bronhouder), relative height level, and outline geometry. Data: PDOK / Kadaster (api.pdok.nl), open data, no auth required.
| Argument | Type | Description |
|---|---|---|
| lat | number | Decimal degree latitude (WGS84) — must be supplied together with lng. Omit both for full Netherlands coverage. |
| lng | number | Decimal degree longitude (WGS84) — must be supplied together with lat. |
| limit | integer | Maximum building outlines to return (default 10, max 30) |
| radius_km | number | Search radius in kilometres around lat/lng (default 1, max 20) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Decimal degree latitude (WGS84) — must be supplied together with lng. Omit both for full Netherlands coverage."
},
"lng": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Decimal degree longitude (WGS84) — must be supplied together with lat."
},
"limit": {
"type": "integer",
"maximum": 30,
"minimum": 1,
"description": "Maximum building outlines to return (default 10, max 30)"
},
"radius_km": {
"type": "number",
"maximum": 20,
"minimum": 0.1,
"description": "Search radius in kilometres around lat/lng (default 1, max 20)"
}
},
"additionalProperties": false
}Search Dutch cadastral parcels (kadastrale percelen) near a point, from the Kadaster Basisregistratie Kadaster (BRK) cadastral map. Returns each matching parcel's municipality, section, parcel number, registered size (m²), and boundary geometry. Call netherlands-pdok-kadaster.get_perceel for a single parcel's full detail by id. Data: PDOK / Kadaster (api.pdok.nl), open data, no auth required.
| Argument | Type | Description |
|---|---|---|
| lat | number | Decimal degree latitude (WGS84) — must be supplied together with lng. Omit both for full Netherlands coverage. |
| lng | number | Decimal degree longitude (WGS84) — must be supplied together with lat. |
| limit | integer | Maximum cadastral parcels to return (default 10, max 30) |
| radius_km | number | Search radius in kilometres around lat/lng (default 1, max 20) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Decimal degree latitude (WGS84) — must be supplied together with lng. Omit both for full Netherlands coverage."
},
"lng": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Decimal degree longitude (WGS84) — must be supplied together with lat."
},
"limit": {
"type": "integer",
"maximum": 30,
"minimum": 1,
"description": "Maximum cadastral parcels to return (default 10, max 30)"
},
"radius_km": {
"type": "number",
"maximum": 20,
"minimum": 0.1,
"description": "Search radius in kilometres around lat/lng (default 1, max 20)"
}
},
"additionalProperties": false
}Cryptocurrency and blockchain news feed — filter by coin (Bitcoin, Ethereum, Solana...), keyword, language. Dedicated crypto news index from specialized sources (NewsData.io)
| Argument | Type | Description |
|---|---|---|
| q | string | Search keywords in crypto news (e.g. "Bitcoin ETF", "DeFi") |
| coin | string | Specific coin filter (e.g. "Bitcoin", "Ethereum", "Solana") |
| size | integer | Number of articles (default 10, max 50) |
| language | string | Language code (e.g. "en") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"q": {
"type": "string",
"description": "Search keywords in crypto news (e.g. \"Bitcoin ETF\", \"DeFi\")"
},
"coin": {
"type": "string",
"description": "Specific coin filter (e.g. \"Bitcoin\", \"Ethereum\", \"Solana\")"
},
"size": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of articles (default 10, max 50)"
},
"language": {
"type": "string",
"description": "Language code (e.g. \"en\")"
}
},
"additionalProperties": false
}Latest news from 180,000+ sources across 200+ countries in 70+ languages. Filter by keyword, country, category, language, domain, and recency. Returns title, link, description, source, sentiment, keywords (NewsData.io)
| Argument | Type | Description |
|---|---|---|
| q | string | Search keywords in article title and content (e.g. "AI agents", "climate change") |
| size | integer | Number of articles to return (default 10, max 50) |
| domain | string | Filter by source domain (e.g. "bbc.co.uk", "nytimes.com") |
| country | string | Country code filter, comma-separated (e.g. "us", "gb,de,fr"). 200+ countries supported. |
| category | string | Category filter, comma-separated: business, entertainment, environment, food, health, politics, science, sports, technology, top, tourism, world |
| language | string | Language code filter (e.g. "en", "de", "fr", "es"). 70+ languages supported. |
| timeframe | string | Recency filter in hours (e.g. "24" for last 24 hours, "1" for last hour) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"q": {
"type": "string",
"description": "Search keywords in article title and content (e.g. \"AI agents\", \"climate change\")"
},
"size": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of articles to return (default 10, max 50)"
},
"domain": {
"type": "string",
"description": "Filter by source domain (e.g. \"bbc.co.uk\", \"nytimes.com\")"
},
"country": {
"type": "string",
"description": "Country code filter, comma-separated (e.g. \"us\", \"gb,de,fr\"). 200+ countries supported."
},
"category": {
"type": "string",
"description": "Category filter, comma-separated: business, entertainment, environment, food, health, politics, science, sports, technology, top, tourism, world"
},
"language": {
"type": "string",
"description": "Language code filter (e.g. \"en\", \"de\", \"fr\", \"es\"). 70+ languages supported."
},
"timeframe": {
"type": "string",
"description": "Recency filter in hours (e.g. \"24\" for last 24 hours, \"1\" for last hour)"
}
},
"additionalProperties": false
}Browse available news sources — filter by country, language, and category. Returns source name, URL, categories, and languages covered. 180,000+ sources indexed (NewsData.io)
| Argument | Type | Description |
|---|---|---|
| country | string | Country code to filter sources (e.g. "us", "gb") |
| category | string | Category to filter sources (e.g. "technology", "business") |
| language | string | Language code to filter sources (e.g. "en") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"country": {
"type": "string",
"description": "Country code to filter sources (e.g. \"us\", \"gb\")"
},
"category": {
"type": "string",
"description": "Category to filter sources (e.g. \"technology\", \"business\")"
},
"language": {
"type": "string",
"description": "Language code to filter sources (e.g. \"en\")"
}
},
"additionalProperties": false
}Find all NIH research grants awarded to a specific university, hospital, or research institute. Provide the institution name (partial uppercase match supported, e.g. "JOHNS HOPKINS", "MAYO CLINIC", "MIT"). Optionally filter by fiscal year or active status. Returns award amount, PI, title, and activity code.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of results to return (1–25, default 10) |
| offset | integer | Pagination offset — number of results to skip (default 0) |
| org_name* | string | Institution or university name to search (e.g. "JOHNS HOPKINS UNIVERSITY", "HARVARD UNIVERSITY", "MAYO CLINIC"). Partial uppercase match. |
| is_active | boolean | When true, return only currently active/ongoing projects |
| fiscal_year | integer | Fiscal year to filter (e.g. 2024). NIH fiscal year runs Oct 1 – Sep 30 |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"org_name"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Number of results to return (1–25, default 10)"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset — number of results to skip (default 0)"
},
"org_name": {
"type": "string",
"description": "Institution or university name to search (e.g. \"JOHNS HOPKINS UNIVERSITY\", \"HARVARD UNIVERSITY\", \"MAYO CLINIC\"). Partial uppercase match."
},
"is_active": {
"type": "boolean",
"description": "When true, return only currently active/ongoing projects"
},
"fiscal_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1985,
"description": "Fiscal year to filter (e.g. 2024). NIH fiscal year runs Oct 1 – Sep 30"
}
},
"additionalProperties": false
}Find NIH-funded research projects by principal investigator (PI) last name. Optionally narrow by first name, fiscal year, or active status. Returns the researcher's funded projects with award amounts, institutions, titles, and abstract excerpts. Useful for biosketches, grant history lookups, and conflict-of-interest checks.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of results to return (1–25, default 10) |
| offset | integer | Pagination offset — number of results to skip (default 0) |
| is_active | boolean | When true, return only currently active/ongoing projects |
| last_name* | string | Principal investigator last name (e.g. "BHATT", "FAUCI", "COLLINS"). Case-insensitive, automatically uppercased. |
| first_name | string | Principal investigator first name for disambiguation (optional, automatically uppercased) |
| fiscal_year | integer | Fiscal year to filter (e.g. 2024). NIH fiscal year runs Oct 1 – Sep 30 |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"last_name"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Number of results to return (1–25, default 10)"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset — number of results to skip (default 0)"
},
"is_active": {
"type": "boolean",
"description": "When true, return only currently active/ongoing projects"
},
"last_name": {
"type": "string",
"description": "Principal investigator last name (e.g. \"BHATT\", \"FAUCI\", \"COLLINS\"). Case-insensitive, automatically uppercased."
},
"first_name": {
"type": "string",
"description": "Principal investigator first name for disambiguation (optional, automatically uppercased)"
},
"fiscal_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1985,
"description": "Fiscal year to filter (e.g. 2024). NIH fiscal year runs Oct 1 – Sep 30"
}
},
"additionalProperties": false
}Search NIH-funded research projects by keyword, disease, drug, or technique. Returns up to 25 grants per call with PI names, institution, award amount, fiscal year, activity code (R01/U54/F32/etc.), abstract excerpt, and a URL to the full project on reporter.nih.gov. Filter by NIH institute/agency (e.g. NCI, NIDDK, NIAID, NIMH) and fiscal year. Sorted by award amount descending.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of results to return (1–25, default 10) |
| agency | string | NIH institute or agency code to filter by (e.g. "NCI" for cancer, "NIDDK" for diabetes, "NIMH" for mental health, "NIAID" for infectious disease) |
| offset | integer | Pagination offset — number of results to skip (default 0) |
| keyword* | string | Research topic, disease, drug name, or technique to search (e.g. "mRNA cancer vaccine", "Alzheimer amyloid", "CRISPR") |
| is_active | boolean | When true, return only currently active/ongoing projects |
| fiscal_year | integer | Fiscal year to filter results (e.g. 2024). NIH fiscal year runs Oct 1 – Sep 30 |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"keyword"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Number of results to return (1–25, default 10)"
},
"agency": {
"type": "string",
"description": "NIH institute or agency code to filter by (e.g. \"NCI\" for cancer, \"NIDDK\" for diabetes, \"NIMH\" for mental health, \"NIAID\" for infectious disease)"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset — number of results to skip (default 0)"
},
"keyword": {
"type": "string",
"description": "Research topic, disease, drug name, or technique to search (e.g. \"mRNA cancer vaccine\", \"Alzheimer amyloid\", \"CRISPR\")"
},
"is_active": {
"type": "boolean",
"description": "When true, return only currently active/ongoing projects"
},
"fiscal_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1985,
"description": "Fiscal year to filter results (e.g. 2024). NIH fiscal year runs Oct 1 – Sep 30"
}
},
"additionalProperties": false
}Retrieve PubMed IDs (PMIDs) of publications linked to a specific NIH core project number (e.g. "R01CA123456"). Returns up to 100 PMIDs per call with direct PubMed URLs. Use the core_project_num field from nihreporter.projects.search results. Chain with education.pubmed_search to fetch full titles and abstracts.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of publication PMIDs to return (1–100, default 50) |
| offset | integer | Pagination offset — number of results to skip (default 0) |
| core_project_num* | string | NIH core project number (e.g. "R01CA123456", "U54GM115371"). Returned as core_project_num in projects.search results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"core_project_num"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of publication PMIDs to return (1–100, default 50)"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset — number of results to skip (default 0)"
},
"core_project_num": {
"type": "string",
"description": "NIH core project number (e.g. \"R01CA123456\", \"U54GM115371\"). Returned as core_project_num in projects.search results."
}
},
"additionalProperties": false
}Search US commercial (pounds, dollars) and recreational (fish counts) fisheries landings from NOAA Fisheries FOSS by species, state, region, collection type and year range. Data: fisheries.noaa.gov, public US Government data, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max rows to return (1-100, default 25). |
| state | string | US state name, case-insensitive (e.g. "Alaska", "Maine", "Hawaii"). |
| offset | integer | Rows to skip for pagination (default 0). |
| region | string | NOAA Fisheries region name (e.g. "Alaska", "Hawaii", "Southeast"). |
| species | string | Species name substring, case-insensitive (e.g. "salmon", "pollock", "lobster"). |
| year_to | integer | Last year (inclusive), e.g. 2022. |
| year_from | integer | First year (inclusive), e.g. 2015. |
| collection | string | Landings type: Commercial (pounds + dollars) or Recreational (fish counts). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Max rows to return (1-100, default 25)."
},
"state": {
"type": "string",
"maxLength": 40,
"minLength": 2,
"description": "US state name, case-insensitive (e.g. \"Alaska\", \"Maine\", \"Hawaii\")."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Rows to skip for pagination (default 0)."
},
"region": {
"type": "string",
"maxLength": 60,
"minLength": 2,
"description": "NOAA Fisheries region name (e.g. \"Alaska\", \"Hawaii\", \"Southeast\")."
},
"species": {
"type": "string",
"maxLength": 80,
"minLength": 1,
"description": "Species name substring, case-insensitive (e.g. \"salmon\", \"pollock\", \"lobster\")."
},
"year_to": {
"type": "integer",
"maximum": 2100,
"minimum": 1900,
"description": "Last year (inclusive), e.g. 2022."
},
"year_from": {
"type": "integer",
"maximum": 2100,
"minimum": 1900,
"description": "First year (inclusive), e.g. 2015."
},
"collection": {
"enum": [
"Commercial",
"Recreational"
],
"type": "string",
"description": "Landings type: Commercial (pounds + dollars) or Recreational (fish counts)."
}
},
"additionalProperties": false
}Get NOAA AFSC groundfish survey catch records for a species_code: per-haul catch count, weight (kg), CPUE (kg/km2 and count/km2) and taxon identification confidence.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max rows to return (1-100, default 25). |
| offset | integer | Rows to skip for pagination (default 0). |
| hauljoin | integer | Restrict to a single survey haul ID. |
| species_code* | integer | AFSC survey species code from survey_species (e.g. 21740 = walleye pollock). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"species_code"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Max rows to return (1-100, default 25)."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Rows to skip for pagination (default 0)."
},
"hauljoin": {
"type": "integer",
"description": "Restrict to a single survey haul ID."
},
"species_code": {
"type": "integer",
"description": "AFSC survey species code from survey_species (e.g. 21740 = walleye pollock).",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Look up species in the NOAA AFSC bottom-trawl groundfish survey (Alaska) by common or scientific name. Returns survey species_code (for survey_catch) plus WoRMS Aphia ID and ITIS TSN cross-references.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max rows to return (1-100, default 25). |
| offset | integer | Rows to skip for pagination (default 0). |
| common_name | string | Common name substring, matched lowercase (e.g. "pollock", "halibut"). |
| scientific_name | string | Scientific name substring, case-sensitive (e.g. "Gadus", "Hippoglossus"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Max rows to return (1-100, default 25)."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Rows to skip for pagination (default 0)."
},
"common_name": {
"type": "string",
"maxLength": 80,
"minLength": 1,
"description": "Common name substring, matched lowercase (e.g. \"pollock\", \"halibut\")."
},
"scientific_name": {
"type": "string",
"maxLength": 80,
"minLength": 1,
"description": "Scientific name substring, case-sensitive (e.g. \"Gadus\", \"Hippoglossus\")."
}
},
"additionalProperties": false
}Get 7-day weather forecast for a US location by latitude/longitude. Returns day and night periods with temperature (°F), precipitation chance, wind speed/direction, and detailed forecast text. Powered by NOAA National Weather Service (api.weather.gov). US contiguous only.
| Argument | Type | Description |
|---|---|---|
| latitude* | number | Latitude in decimal degrees (US contiguous only: 24–50) |
| longitude* | number | Longitude in decimal degrees (US contiguous only: −125 to −66) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude"
],
"properties": {
"latitude": {
"type": "number",
"maximum": 50,
"minimum": 24,
"description": "Latitude in decimal degrees (US contiguous only: 24–50)"
},
"longitude": {
"type": "number",
"maximum": -66,
"minimum": -125,
"description": "Longitude in decimal degrees (US contiguous only: −125 to −66)"
}
},
"additionalProperties": false
}Get hourly weather forecast (next 48 hours) for a US location by latitude/longitude. Returns temperature (°F), precipitation chance, wind speed/direction, and short conditions per hour. Powered by NOAA National Weather Service. US contiguous only.
| Argument | Type | Description |
|---|---|---|
| latitude* | number | Latitude in decimal degrees (US contiguous only: 24–50) |
| longitude* | number | Longitude in decimal degrees (US contiguous only: −125 to −66) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude"
],
"properties": {
"latitude": {
"type": "number",
"maximum": 50,
"minimum": 24,
"description": "Latitude in decimal degrees (US contiguous only: 24–50)"
},
"longitude": {
"type": "number",
"maximum": -66,
"minimum": -125,
"description": "Longitude in decimal degrees (US contiguous only: −125 to −66)"
}
},
"additionalProperties": false
}Get latest weather observation from the nearest ASOS/AWOS station to a US location. Returns current temperature (°C/°F), humidity, wind, pressure, visibility, dewpoint, heat index, wind chill. Powered by NOAA National Weather Service. US contiguous only.
| Argument | Type | Description |
|---|---|---|
| latitude* | number | Latitude in decimal degrees (US contiguous only: 24–50) |
| longitude* | number | Longitude in decimal degrees (US contiguous only: −125 to −66) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude"
],
"properties": {
"latitude": {
"type": "number",
"maximum": 50,
"minimum": 24,
"description": "Latitude in decimal degrees (US contiguous only: 24–50)"
},
"longitude": {
"type": "number",
"maximum": -66,
"minimum": -125,
"description": "Longitude in decimal degrees (US contiguous only: −125 to −66)"
}
},
"additionalProperties": false
}Look up up to 50 specific OpenStreetMap objects by ID (node/way/relation, e.g. "R146656") and return their addresses and coordinates via Nominatim. Useful for resolving OSM IDs returned by other OSM-based tools. No auth required; ODbL licensed, © OpenStreetMap contributors.
| Argument | Type | Description |
|---|---|---|
| osm_ids* | array | OSM object IDs to resolve, each prefixed with its type: N (node), W (way), or R (relation) — e.g. ["R146656", "W284493291"]. Max 50. |
| language | string | Preferred response language as an Accept-Language value (e.g. "en", "de-DE") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"osm_ids"
],
"properties": {
"osm_ids": {
"type": "array",
"items": {
"type": "string",
"maxLength": 20,
"minLength": 2
},
"maxItems": 50,
"minItems": 1,
"description": "OSM object IDs to resolve, each prefixed with its type: N (node), W (way), or R (relation) — e.g. [\"R146656\", \"W284493291\"]. Max 50."
},
"language": {
"type": "string",
"maxLength": 35,
"description": "Preferred response language as an Accept-Language value (e.g. \"en\", \"de-DE\")"
}
},
"additionalProperties": false
}Reverse geocode a latitude/longitude pair into the nearest address or place using OpenStreetMap data via Nominatim. Optional zoom controls the level of detail, from country down to individual building. No auth required; ODbL licensed, © OpenStreetMap contributors.
| Argument | Type | Description |
|---|---|---|
| lat* | number | Latitude of the point to resolve to an address |
| lon* | number | Longitude of the point to resolve to an address |
| zoom | integer | Level of detail for the resolved address (0=country, 10=city, 18=building, default varies by feature) |
| language | string | Preferred response language as an Accept-Language value (e.g. "en", "de-DE") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude of the point to resolve to an address"
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude of the point to resolve to an address"
},
"zoom": {
"type": "integer",
"maximum": 18,
"minimum": 0,
"description": "Level of detail for the resolved address (0=country, 10=city, 18=building, default varies by feature)"
},
"language": {
"type": "string",
"maxLength": 35,
"description": "Preferred response language as an Accept-Language value (e.g. \"en\", \"de-DE\")"
}
},
"additionalProperties": false
}Forward geocode a free-form address or place name (e.g. "Eiffel Tower", "1600 Amphitheatre Parkway, Mountain View") into coordinates and structured address data, using OpenStreetMap data via Nominatim. Optionally restrict to specific countries. No auth required; ODbL licensed, © OpenStreetMap contributors.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of matches to return (1-50, default 5) |
| query* | string | Free-form search text (e.g. "1600 Amphitheatre Parkway, Mountain View" or "Eiffel Tower") |
| language | string | Preferred response language as an Accept-Language value (e.g. "en", "de-DE") |
| country_codes | string | Comma-separated ISO 3166-1 alpha-2 country codes to restrict the search to (e.g. "us,ca") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of matches to return (1-50, default 5)"
},
"query": {
"type": "string",
"maxLength": 255,
"minLength": 1,
"description": "Free-form search text (e.g. \"1600 Amphitheatre Parkway, Mountain View\" or \"Eiffel Tower\")"
},
"language": {
"type": "string",
"maxLength": 35,
"description": "Preferred response language as an Accept-Language value (e.g. \"en\", \"de-DE\")"
},
"country_codes": {
"type": "string",
"maxLength": 100,
"description": "Comma-separated ISO 3166-1 alpha-2 country codes to restrict the search to (e.g. \"us,ca\")"
}
},
"additionalProperties": false
}Retrieve a historical time series of official Norges Bank exchange rates for any of the 41 available currencies versus NOK. Specify a start/end date (ISO 8601, e.g. 2024-01-01) to get a custom range of business-day spot rates. Returns an array of {date, rate} pairs sorted ascending by date. Useful for charting NOK strength, backtesting currency strategies, or computing historical hedging costs. Data: Norges Bank SDMX EXR dataflow, no auth.
| Argument | Type | Description |
|---|---|---|
| currency* | string | ISO 4217 currency code for which to fetch historical rates against NOK (e.g. "USD", "EUR", "GBP"). |
| end_date | string | End date of the historical range in ISO 8601 format (YYYY-MM-DD). Defaults to today if omitted. |
| start_date | string | Start date of the historical range in ISO 8601 format (YYYY-MM-DD). Defaults to 30 days ago if omitted. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"currency"
],
"properties": {
"currency": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO 4217 currency code for which to fetch historical rates against NOK (e.g. \"USD\", \"EUR\", \"GBP\")."
},
"end_date": {
"type": "string",
"description": "End date of the historical range in ISO 8601 format (YYYY-MM-DD). Defaults to today if omitted."
},
"start_date": {
"type": "string",
"description": "Start date of the historical range in ISO 8601 format (YYYY-MM-DD). Defaults to 30 days ago if omitted."
}
},
"additionalProperties": false
}Get the latest official foreign-exchange rates published by Norges Bank (the Norwegian central bank) — up to 41 currencies quoted against NOK (Norwegian krone). Rates are business-day spot rates from the SDMX REST API. Filter to specific currencies via the optional currencies param (e.g. "USD,EUR,GBP"). No authentication required. Data: Norges Bank SDMX EXR dataflow, open government licence, unlimited.
| Argument | Type | Description |
|---|---|---|
| currencies | string | Comma-separated list of ISO 4217 currency codes to include (e.g. "USD,EUR,GBP"). Leave empty to get all 41 currencies. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"currencies": {
"type": "string",
"description": "Comma-separated list of ISO 4217 currency codes to include (e.g. \"USD,EUR,GBP\"). Leave empty to get all 41 currencies."
}
},
"additionalProperties": false
}Get the current key policy interest rates set by Norges Bank: the key policy rate (deposit rate / styringsrente), overnight lending rate, and reserve rate. Returns the latest observed value for each rate type across daily and monthly frequencies. The key policy rate is the primary monetary policy instrument of Norway. No authentication required. Data: Norges Bank SDMX IR dataflow, open government licence, unlimited.
| Argument | Type | Description |
|---|---|---|
| include_annual | boolean | Set to true to include annual average rates in addition to the latest daily and monthly rates. Default false returns only the most recent observation per rate type. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"include_annual": {
"type": "boolean",
"description": "Set to true to include annual average rates in addition to the latest daily and monthly rates. Default false returns only the most recent observation per rate type."
}
},
"additionalProperties": false
}Retrieve a historical time series of Norges Bank key policy interest rates. Choose rate type (SD = key policy rate, OL = overnight lending rate, RR = reserve rate), frequency (B = business daily, M = monthly, A = annual), and date range. Returns {date, rate} pairs sorted ascending. Useful for monetary-policy research, macro models, or comparing Norway's rate cycle against other central banks. Data: Norges Bank SDMX IR dataflow, no auth.
| Argument | Type | Description |
|---|---|---|
| end_date | string | End date of the historical range in ISO 8601 format (YYYY-MM-DD or YYYY-MM). Defaults to today if omitted. |
| frequency | string | Observation frequency: "B" = business daily (default), "M" = monthly average, "A" = annual average. |
| rate_type | string | Type of key policy rate to retrieve: "SD" = key policy rate (deposit rate), "OL" = overnight lending rate, "RR" = reserve rate. Omit to get all three types. |
| start_date | string | Start date of the historical range in ISO 8601 format (YYYY-MM-DD or YYYY-MM). Defaults to 1 year ago if omitted. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"end_date": {
"type": "string",
"description": "End date of the historical range in ISO 8601 format (YYYY-MM-DD or YYYY-MM). Defaults to today if omitted."
},
"frequency": {
"enum": [
"B",
"M",
"A"
],
"type": "string",
"description": "Observation frequency: \"B\" = business daily (default), \"M\" = monthly average, \"A\" = annual average."
},
"rate_type": {
"enum": [
"SD",
"OL",
"RR"
],
"type": "string",
"description": "Type of key policy rate to retrieve: \"SD\" = key policy rate (deposit rate), \"OL\" = overnight lending rate, \"RR\" = reserve rate. Omit to get all three types."
},
"start_date": {
"type": "string",
"description": "Start date of the historical range in ISO 8601 format (YYYY-MM-DD or YYYY-MM). Defaults to 1 year ago if omitted."
}
},
"additionalProperties": false
}Get the full record for a single Norwegian place by its stedsnummer id (from search_names or search_by_point results). Returns all written name forms (incl. Sámi/minority-language forms where applicable), status, type, county, municipality, coordinates, last-updated date, and boundary geometry where available. Data: Kartverket (Norwegian Mapping Authority), NLOD 2.0 open licence, no auth required.
| Argument | Type | Description |
|---|---|---|
| place_id* | any | Norwegian place id (stedsnummer) to look up, e.g. 307915 for Oslo — from search_names or search_by_point results |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"place_id"
],
"properties": {
"place_id": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string",
"minLength": 1
}
],
"description": "Norwegian place id (stedsnummer) to look up, e.g. 307915 for Oslo — from search_names or search_by_point results"
}
},
"additionalProperties": false
}Find Norwegian place names near a geographic coordinate (reverse geocoding), from the Kartverket Stedsnavn register. Returns matching place ids, types, names, municipality, and coordinates within the given radius. Data: Kartverket (Norwegian Mapping Authority), NLOD 2.0 open licence, no auth required.
| Argument | Type | Description |
|---|---|---|
| lat* | number | Decimal degree latitude (WGS84/EUREF89) within Norway, e.g. 59.91273 for Oslo |
| lng* | number | Decimal degree longitude (WGS84/EUREF89) within Norway, e.g. 10.74609 for Oslo |
| limit | integer | Maximum place names to return (default 10, max 30) |
| radius_m | number | Search radius in metres around lat/lng (default 500, max 10000) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lng"
],
"properties": {
"lat": {
"type": "number",
"maximum": 72,
"minimum": 57,
"description": "Decimal degree latitude (WGS84/EUREF89) within Norway, e.g. 59.91273 for Oslo"
},
"lng": {
"type": "number",
"maximum": 32,
"minimum": 4,
"description": "Decimal degree longitude (WGS84/EUREF89) within Norway, e.g. 10.74609 for Oslo"
},
"limit": {
"type": "integer",
"maximum": 30,
"minimum": 1,
"description": "Maximum place names to return (default 10, max 30)"
},
"radius_m": {
"type": "number",
"maximum": 10000,
"minimum": 10,
"description": "Search radius in metres around lat/lng (default 500, max 10000)"
}
},
"additionalProperties": false
}Search the official Norwegian place name register (Kartverket Stedsnavn) by text, optionally filtered by county or municipality. Returns each match's place id (stedsnummer), type (city, lake, mountain, street, etc.), status, language, county, municipality, and coordinates. Call norway-kartverket-stedsnavn.get_place for full detail on a specific result. Data: Kartverket (Norwegian Mapping Authority), NLOD 2.0 open licence, no auth required.
| Argument | Type | Description |
|---|---|---|
| fuzzy | boolean | Allow fuzzy/approximate text matching instead of exact substring search |
| limit | integer | Maximum results to return (default 10, max 30) |
| query* | string | Place name text to search for, e.g. "Oslo" or "Bergen" |
| county | string | Filter results to a Norwegian county name (fylkesnavn), e.g. "Viken" |
| municipality | string | Filter results to a Norwegian municipality name (kommunenavn), e.g. "Bergen" |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"fuzzy": {
"type": "boolean",
"description": "Allow fuzzy/approximate text matching instead of exact substring search"
},
"limit": {
"type": "integer",
"maximum": 30,
"minimum": 1,
"description": "Maximum results to return (default 10, max 30)"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Place name text to search for, e.g. \"Oslo\" or \"Bergen\""
},
"county": {
"type": "string",
"description": "Filter results to a Norwegian county name (fylkesnavn), e.g. \"Viken\""
},
"municipality": {
"type": "string",
"description": "Filter results to a Norwegian municipality name (kommunenavn), e.g. \"Bergen\""
}
},
"additionalProperties": false
}Get download count for any npm package over a time period: last-day, last-week, last-month, last-year. Useful for measuring package popularity, adoption trends, and comparing alternatives (e.g. express: 92M/week).
| Argument | Type | Description |
|---|---|---|
| period | string | Time period for download stats (default: last-week) |
| package* | string | npm package name (e.g. express, lodash, typescript) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"package"
],
"properties": {
"period": {
"enum": [
"last-day",
"last-week",
"last-month",
"last-year"
],
"type": "string",
"description": "Time period for download stats (default: last-week)"
},
"package": {
"type": "string",
"minLength": 1,
"description": "npm package name (e.g. express, lodash, typescript)"
}
},
"additionalProperties": false
}Get metadata for any npm package: version, description, license, dependencies, maintainers, repository URL, keywords, engines. 2.1M+ packages. Supports scoped packages (@scope/name). Returns latest version by default or a specific version.
| Argument | Type | Description |
|---|---|---|
| package* | string | npm package name (e.g. express, react, @anthropic-ai/sdk) |
| version | string | Specific version to fetch (e.g. 5.2.1). Defaults to latest |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"package"
],
"properties": {
"package": {
"type": "string",
"minLength": 1,
"description": "npm package name (e.g. express, react, @anthropic-ai/sdk)"
},
"version": {
"type": "string",
"description": "Specific version to fetch (e.g. 5.2.1). Defaults to latest"
}
},
"additionalProperties": false
}Search 2.1M+ npm packages by keyword. Returns ranked results with quality, popularity, and maintenance scores, download counts, dependents, license, publisher. Find libraries for any task (e.g. "mcp server", "react hooks", "typescript orm").
| Argument | Type | Description |
|---|---|---|
| size | integer | Number of results to return (1-20, default 10) |
| query* | string | Search query (e.g. "mcp server", "react hooks", "typescript orm") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"size": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of results to return (1-20, default 10)"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Search query (e.g. \"mcp server\", \"react hooks\", \"typescript orm\")"
}
},
"additionalProperties": false
}List all published versions of an npm package with dist-tags (latest, next, beta), deprecation status, and total version count. Returns the 50 most recent versions. Useful for dependency auditing and upgrade planning.
| Argument | Type | Description |
|---|---|---|
| package* | string | npm package name to list all versions (e.g. express, react) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"package"
],
"properties": {
"package": {
"type": "string",
"minLength": 1,
"description": "npm package name to list all versions (e.g. express, react)"
}
},
"additionalProperties": false
}Retrieve full-year historical power status data for US nuclear reactors from NRC annual archives. Data is available from 1999 through the current year. Optionally filter by reactor unit name to retrieve a single reactor's complete year record. Each record contains the date, unit name, and power percentage (0–100%). Supports capacity factor analysis, long-term outage pattern research, nuclear energy generation modeling, and historical grid impact studies. Returns up to 1000 rows per call (full annual files contain 17K–35K rows). No auth — US NRC public domain data (Atomic Energy Act), unlimited free.
| Argument | Type | Description |
|---|---|---|
| unit | string | Optional reactor unit name filter (e.g. "Palo Verde 1"). When provided, returns only records for that reactor. Case-insensitive. |
| year | integer | Calendar year for the historical archive (1999–current year). Defaults to the current year. Annual files contain daily snapshots for all ~95 US reactors. |
| limit | integer | Maximum number of rows to return (1–1000). Defaults to 200. The full annual file may contain 17K–35K rows. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"unit": {
"type": "string",
"description": "Optional reactor unit name filter (e.g. \"Palo Verde 1\"). When provided, returns only records for that reactor. Case-insensitive."
},
"year": {
"type": "integer",
"maximum": 2030,
"minimum": 1999,
"description": "Calendar year for the historical archive (1999–current year). Defaults to the current year. Annual files contain daily snapshots for all ~95 US reactors."
},
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Maximum number of rows to return (1–1000). Defaults to 200. The full annual file may contain 17K–35K rows."
}
},
"additionalProperties": false
}Get the latest daily power output for all ~95 US commercial nuclear reactor units as reported by the US Nuclear Regulatory Commission (NRC). Returns each reactor's current power level as a percentage of licensed thermal power (0–100%), operational status (full_power / reduced_power / shutdown), and fleet-wide summary counts. Data is updated each business day M–F and reflects the previous day's reported capacity. Essential for US energy grid monitoring, nuclear generation capacity dashboards, and power market analysis. No auth — US NRC public domain data (Atomic Energy Act), unlimited free.
| Argument | Type | Description |
|---|---|---|
| sort_by | string | Sort order for the reactor list. "name" (alphabetical, default), "power_asc" (lowest power first), "power_desc" (highest power first). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"sort_by": {
"enum": [
"name",
"power_asc",
"power_desc"
],
"type": "string",
"description": "Sort order for the reactor list. \"name\" (alphabetical, default), \"power_asc\" (lowest power first), \"power_desc\" (highest power first)."
}
},
"additionalProperties": false
}Retrieve up to 365 days of daily power output history for a specific US nuclear reactor unit. Provide the full NRC unit name (e.g. "Diablo Canyon 1", "Watts Bar 2") and the number of days to look back. Returns a chronological series of power percentages and status labels, enabling trend analysis, outage detection, maintenance window identification, and capacity factor calculation for individual reactors. Covers all units in the NRC 365-day rolling file. No auth — US NRC public domain data (Atomic Energy Act), unlimited free.
| Argument | Type | Description |
|---|---|---|
| days | integer | Number of most-recent days to retrieve (1–365). Defaults to 30. Data is available for the last 365 calendar days. |
| unit* | string | Full NRC reactor unit name as it appears in the status report (e.g. "Arkansas Nuclear 1", "Diablo Canyon 2", "Watts Bar 1"). Case-insensitive. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"unit"
],
"properties": {
"days": {
"type": "integer",
"maximum": 365,
"minimum": 1,
"description": "Number of most-recent days to retrieve (1–365). Defaults to 30. Data is available for the last 365 calendar days."
},
"unit": {
"type": "string",
"minLength": 1,
"description": "Full NRC reactor unit name as it appears in the status report (e.g. \"Arkansas Nuclear 1\", \"Diablo Canyon 2\", \"Watts Bar 1\"). Case-insensitive."
}
},
"additionalProperties": false
}Identify US nuclear reactors currently operating below a specified power threshold. By default returns all reactors not at full power (below 100%). Set max_power=0 to see only fully-shutdown reactors, or max_power=50 to find reactors at half-power or less. Results include power percentage and status (reduced_power or shutdown) sorted lowest-power first. Useful for energy grid impact assessment, nuclear capacity risk monitoring, and real-time tracking of planned and unplanned reactor outages across the US fleet. No auth — US NRC public domain data (Atomic Energy Act), unlimited free.
| Argument | Type | Description |
|---|---|---|
| max_power | integer | Maximum power percentage threshold (inclusive, 0–100). Returns reactors at or below this level. Default 99 returns all reactors not at full power (100%). Set to 0 to see only fully-shutdown reactors. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"max_power": {
"type": "integer",
"maximum": 100,
"minimum": 0,
"description": "Maximum power percentage threshold (inclusive, 0–100). Returns reactors at or below this level. Default 99 returns all reactors not at full power (100%). Set to 0 to see only fully-shutdown reactors."
}
},
"additionalProperties": false
}Get detailed record for one specific alt-fuel station by its AFDC station ID — operator info, full address, hours per day-of-week, EV charging speed breakdown (Level 1/2/DC Fast outlet counts), accepted payment methods, access restrictions.
| Argument | Type | Description |
|---|---|---|
| station_id* | integer | AFDC station ID (positive integer). Obtained from afdc_stations_nearest or afdc_stations_search results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"station_id"
],
"properties": {
"station_id": {
"type": "integer",
"description": "AFDC station ID (positive integer). Obtained from afdc_stations_nearest or afdc_stations_search results.",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Find the nearest alternative fuel stations to a given US location (latitude/longitude). Includes EV charging (Level 1/2/DC Fast), CNG, LNG, propane, biodiesel, hydrogen. Returns station name, address, network, plug types, hours, last verified date. US-specific; for global EV stations use openchargemap.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max stations to return (1-200). Default 20. |
| radius | number | Search radius in miles (max 500). Default 5. |
| status | string | Station status: E=available (open), P=planned (future), T=temporarily unavailable. Default E. |
| latitude* | number | WGS84 latitude (US territory only). Example: 37.7749 for San Francisco. |
| fuel_type | string | Comma-separated fuel codes: ELEC (electric), CNG, LNG, LPG (propane), BD (biodiesel), E85, HY (hydrogen). Default ELEC. |
| longitude* | number | WGS84 longitude (US territory only). Example: -122.4194 for San Francisco. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude"
],
"properties": {
"limit": {
"type": "integer",
"default": 20,
"maximum": 200,
"minimum": 1,
"description": "Max stations to return (1-200). Default 20."
},
"radius": {
"type": "number",
"default": 5,
"description": "Search radius in miles (max 500). Default 5."
},
"status": {
"enum": [
"E",
"P",
"T"
],
"type": "string",
"default": "E",
"description": "Station status: E=available (open), P=planned (future), T=temporarily unavailable. Default E."
},
"latitude": {
"type": "number",
"description": "WGS84 latitude (US territory only). Example: 37.7749 for San Francisco."
},
"fuel_type": {
"type": "string",
"default": "ELEC",
"description": "Comma-separated fuel codes: ELEC (electric), CNG, LNG, LPG (propane), BD (biodiesel), E85, HY (hydrogen). Default ELEC."
},
"longitude": {
"type": "number",
"description": "WGS84 longitude (US territory only). Example: -122.4194 for San Francisco."
}
},
"additionalProperties": false
}Search US alt-fuel stations by ZIP, state, or city. Filterable by fuel type, EV network, connector type, and access level. Use for state-level analytics or city-wide EV infrastructure surveys; use afdc_stations_nearest for proximity search to a coordinate.
| Argument | Type | Description |
|---|---|---|
| zip | string | 5-digit US ZIP code to search within. Example: '94102'. |
| city | string | City name. Use with state for disambiguation. Example: Oakland. |
| limit | integer | Results per page (1-200). Default 50. |
| state | string | 2-letter US state code. Example: 'CA', 'TX', 'NY'. |
| access | string | Filter by access type: 'public' for open-access stations, 'private' for fleet-only. |
| offset | integer | Pagination offset — number of results to skip. Default 0. |
| status | string | Station status: E=available (open), P=planned (future), T=temporarily unavailable. Default E. |
| fuel_type | string | Comma-separated fuel codes: ELEC (electric), CNG, LNG, LPG (propane), BD (biodiesel), E85, HY (hydrogen). Default ELEC. |
| ev_connector_type | string | EV connector codes (comma-separated): J1772 (Level 2), J1772COMBO (CCS), CHADEMO, TESLA, NEMA1450, NEMA515. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"zip": {
"type": "string",
"description": "5-digit US ZIP code to search within. Example: '94102'."
},
"city": {
"type": "string",
"description": "City name. Use with state for disambiguation. Example: Oakland."
},
"limit": {
"type": "integer",
"default": 50,
"maximum": 200,
"minimum": 1,
"description": "Results per page (1-200). Default 50."
},
"state": {
"type": "string",
"description": "2-letter US state code. Example: 'CA', 'TX', 'NY'."
},
"access": {
"enum": [
"public",
"private"
],
"type": "string",
"description": "Filter by access type: 'public' for open-access stations, 'private' for fleet-only."
},
"offset": {
"type": "integer",
"default": 0,
"minimum": 0,
"description": "Pagination offset — number of results to skip. Default 0."
},
"status": {
"enum": [
"E",
"P",
"T"
],
"type": "string",
"default": "E",
"description": "Station status: E=available (open), P=planned (future), T=temporarily unavailable. Default E."
},
"fuel_type": {
"type": "string",
"default": "ELEC",
"description": "Comma-separated fuel codes: ELEC (electric), CNG, LNG, LPG (propane), BD (biodiesel), E85, HY (hydrogen). Default ELEC."
},
"ev_connector_type": {
"type": "string",
"description": "EV connector codes (comma-separated): J1772 (Level 2), J1772COMBO (CCS), CHADEMO, TESLA, NEMA1450, NEMA515."
}
},
"additionalProperties": false
}Calculate monthly and annual AC energy production (kWh) for a residential or commercial solar PV system at any global location. Uses NSRDB satellite-derived solar resource data. Returns monthly AC/DC energy, capacity factor, plane-of-array irradiance, and solar radiation. Unique — no other tool in this catalog estimates solar PV output.
| Argument | Type | Description |
|---|---|---|
| tilt | number | Module tilt angle in degrees from horizontal (0=flat/horizontal, 90=vertical). Default 20. |
| losses | number | System losses percentage (0-99). Accounts for wiring, soiling, shading. Default 14 (NREL recommended). |
| azimuth | number | Array azimuth angle: 0=north, 90=east, 180=south (default, optimal in Northern Hemisphere), 270=west. |
| latitude* | number | Site latitude in decimal degrees (global, WGS84). Example: 37.7749 (San Francisco), 51.5074 (London). |
| longitude* | number | Site longitude in decimal degrees (global, WGS84). Example: -122.4194 (San Francisco), -0.1278 (London). |
| array_type | integer | Array mount type: 0=Fixed open rack, 1=Fixed roof mount (default), 2=1-axis tracking, 3=1-axis backtracking, 4=2-axis tracking. |
| module_type | integer | Solar module type: 0=Standard (polycrystalline), 1=Premium (monocrystalline, default), 2=Thin Film. |
| system_capacity* | number | System DC nameplate capacity in kilowatts (kW). Example: 5 for a typical residential system, 100 for commercial. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude",
"system_capacity"
],
"properties": {
"tilt": {
"type": "number",
"default": 20,
"maximum": 90,
"minimum": 0,
"description": "Module tilt angle in degrees from horizontal (0=flat/horizontal, 90=vertical). Default 20."
},
"losses": {
"type": "number",
"default": 14,
"maximum": 99,
"minimum": 0,
"description": "System losses percentage (0-99). Accounts for wiring, soiling, shading. Default 14 (NREL recommended)."
},
"azimuth": {
"type": "number",
"default": 180,
"maximum": 360,
"minimum": 0,
"description": "Array azimuth angle: 0=north, 90=east, 180=south (default, optimal in Northern Hemisphere), 270=west."
},
"latitude": {
"type": "number",
"description": "Site latitude in decimal degrees (global, WGS84). Example: 37.7749 (San Francisco), 51.5074 (London)."
},
"longitude": {
"type": "number",
"description": "Site longitude in decimal degrees (global, WGS84). Example: -122.4194 (San Francisco), -0.1278 (London)."
},
"array_type": {
"type": "integer",
"default": 1,
"maximum": 4,
"minimum": 0,
"description": "Array mount type: 0=Fixed open rack, 1=Fixed roof mount (default), 2=1-axis tracking, 3=1-axis backtracking, 4=2-axis tracking."
},
"module_type": {
"type": "integer",
"default": 1,
"maximum": 2,
"minimum": 0,
"description": "Solar module type: 0=Standard (polycrystalline), 1=Premium (monocrystalline, default), 2=Thin Film."
},
"system_capacity": {
"type": "number",
"description": "System DC nameplate capacity in kilowatts (kW). Example: 5 for a typical residential system, 100 for commercial.",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Get full detail for a single NSF research award by award ID, including the complete abstract, principal investigator and co-PI contacts, program officer, directorate/division, funding by fiscal year, and award dates. Data: api.nsf.gov (National Science Foundation), no auth required.
| Argument | Type | Description |
|---|---|---|
| id* | string | NSF award ID, e.g. "2617572". Obtained from nsf-awards.search results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "NSF award ID, e.g. \"2617572\". Obtained from nsf-awards.search results."
}
},
"additionalProperties": false
}Search US National Science Foundation funded research awards by keyword, recipient institution name, US state, CFDA program number, and award date range. Returns award ID, title, awardee, principal investigator, dates, funding amount, program, and an abstract excerpt for each match. Data: api.nsf.gov (National Science Foundation), no auth required.
| Argument | Type | Description |
|---|---|---|
| rpp | integer | Results per page, 1-25 (default 10). |
| dateEnd | string | Only awards made on/before this date, format MM/DD/YYYY. |
| keyword | string | Full-text search term matched against award title/abstract (e.g. "climate", "quantum computing"). |
| dateStart | string | Only awards made on/after this date, format MM/DD/YYYY. |
| cfdaNumber | string | Filter by CFDA program number (e.g. "47.070" for Computer and Information Science). |
| awardeeName | string | Filter by recipient institution name substring (e.g. "Stanford", "MIT"). |
| awardeeStateCode | string | Filter by recipient institution US state code, 2 letters (e.g. "CA", "NY"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"rpp": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Results per page, 1-25 (default 10)."
},
"dateEnd": {
"type": "string",
"description": "Only awards made on/before this date, format MM/DD/YYYY."
},
"keyword": {
"type": "string",
"description": "Full-text search term matched against award title/abstract (e.g. \"climate\", \"quantum computing\")."
},
"dateStart": {
"type": "string",
"description": "Only awards made on/after this date, format MM/DD/YYYY."
},
"cfdaNumber": {
"type": "string",
"description": "Filter by CFDA program number (e.g. \"47.070\" for Computer and Information Science)."
},
"awardeeName": {
"type": "string",
"description": "Filter by recipient institution name substring (e.g. \"Stanford\", \"MIT\")."
},
"awardeeStateCode": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Filter by recipient institution US state code, 2 letters (e.g. \"CA\", \"NY\")."
}
},
"additionalProperties": false
}Complete nutritional profile for a food item by FatSecret ID — all serving sizes with calories, total/saturated/trans fat, cholesterol, sodium, potassium, carbs, fiber, sugar, protein, vitamins A/C/D, calcium, iron. 2.3M+ foods (FatSecret)
| Argument | Type | Description |
|---|---|---|
| food_id* | string | FatSecret food ID from search results (e.g. "33691" for chicken breast) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"food_id"
],
"properties": {
"food_id": {
"type": "string",
"minLength": 1,
"description": "FatSecret food ID from search results (e.g. \"33691\" for chicken breast)"
}
},
"additionalProperties": false
}Search 2.3M+ food items by name — branded products, restaurant meals, generic foods from 190+ countries. Returns food ID, name, type, brand, and per-serving summary (calories, fat, carbs, protein). Use food_id for detailed nutritional lookup (FatSecret)
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default 0) |
| query* | string | Food name to search (e.g. "chicken breast", "banana", "greek yogurt") |
| max_results | integer | Results per page (default 20, max 50) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"minimum": 0,
"description": "Page number for pagination (default 0)"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Food name to search (e.g. \"chicken breast\", \"banana\", \"greek yogurt\")"
},
"max_results": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Results per page (default 20, max 50)"
}
},
"additionalProperties": false
}Search the Common Platform Enumeration (CPE) dictionary for product identifiers used by CVEs. Returns CPE 2.3 URI (cpe:2.3:a:vendor:product:version:...), title, deprecation status. Use this to find the exact CPE string before searching CVEs by affected product.
| Argument | Type | Description |
|---|---|---|
| keyword* | string | Product keyword to search the CPE dictionary. Examples: 'openssl', 'apache tomcat', 'nginx 1.18'. Returns CPE 2.3 URIs used to identify affected products in CVE records. |
| start_index | integer | Zero-based offset for pagination. Use with results_per_page to page through large result sets. Default: 0. |
| results_per_page | integer | Number of CPE records to return per page. Range: 1–1000. Default: 20. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"keyword"
],
"properties": {
"keyword": {
"type": "string",
"description": "Product keyword to search the CPE dictionary. Examples: 'openssl', 'apache tomcat', 'nginx 1.18'. Returns CPE 2.3 URIs used to identify affected products in CVE records."
},
"start_index": {
"type": "integer",
"minimum": 0,
"description": "Zero-based offset for pagination. Use with results_per_page to page through large result sets. Default: 0."
},
"results_per_page": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Number of CPE records to return per page. Range: 1–1000. Default: 20."
}
},
"additionalProperties": false
}Fetch the canonical NVD record for a specific CVE-ID — full English description, CVSS v3 + v2 vectors and scores, weakness types (CWE), affected CPE configurations with version ranges, and all references with tags. Example: CVE-2021-44228 for Log4Shell.
| Argument | Type | Description |
|---|---|---|
| cve_id* | string | Full CVE identifier in canonical form (e.g. 'CVE-2021-44228' for Log4Shell). Format: CVE-YYYY-NNNN+ where YYYY is the year and NNNN+ is a sequence number of four or more digits. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"cve_id"
],
"properties": {
"cve_id": {
"type": "string",
"description": "Full CVE identifier in canonical form (e.g. 'CVE-2021-44228' for Log4Shell). Format: CVE-YYYY-NNNN+ where YYYY is the year and NNNN+ is a sequence number of four or more digits."
}
},
"additionalProperties": false
}Search the National Vulnerability Database for CVE records by keyword, vendor, product, CVSS severity, or publication date range. Returns CVE-ID, summary, CVSS v3 base score, severity (LOW/MEDIUM/HIGH/CRITICAL), affected CPE configurations, references. Distinct from OSV: NVD provides canonical NIST records with CVSS v3 scores, CWE weakness types, and CPE configurations.
| Argument | Type | Description |
|---|---|---|
| keyword | string | Free-text keyword to search CVE records. Examples: 'log4j', 'OpenSSL CVE-2023', 'Linux kernel use-after-free'. Combined with other filters using AND logic. |
| start_index | integer | Zero-based offset for pagination. Use with results_per_page to page through large result sets. Default: 0. |
| pub_end_date | string | Latest CVE publication date in ISO 8601 extended format with timezone offset (e.g. '2024-12-31T23:59:59.999+00:00'). Must be paired with pub_start_date. Maximum 120-day window. |
| pub_start_date | string | Earliest CVE publication date in ISO 8601 extended format with timezone offset (e.g. '2024-01-01T00:00:00.000+00:00'). Maximum 120-day window per request when combined with pub_end_date. |
| cvss_v3_severity | string | Filter by CVSS v3 base severity. LOW = 0.1–3.9, MEDIUM = 4.0–6.9, HIGH = 7.0–8.9, CRITICAL = 9.0–10.0. Omit to return all severities. |
| results_per_page | integer | Number of CVE records to return per page. Range: 1–2000. Default: 20. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"keyword": {
"type": "string",
"description": "Free-text keyword to search CVE records. Examples: 'log4j', 'OpenSSL CVE-2023', 'Linux kernel use-after-free'. Combined with other filters using AND logic."
},
"start_index": {
"type": "integer",
"minimum": 0,
"description": "Zero-based offset for pagination. Use with results_per_page to page through large result sets. Default: 0."
},
"pub_end_date": {
"type": "string",
"description": "Latest CVE publication date in ISO 8601 extended format with timezone offset (e.g. '2024-12-31T23:59:59.999+00:00'). Must be paired with pub_start_date. Maximum 120-day window."
},
"pub_start_date": {
"type": "string",
"description": "Earliest CVE publication date in ISO 8601 extended format with timezone offset (e.g. '2024-01-01T00:00:00.000+00:00'). Maximum 120-day window per request when combined with pub_end_date."
},
"cvss_v3_severity": {
"enum": [
"LOW",
"MEDIUM",
"HIGH",
"CRITICAL"
],
"type": "string",
"description": "Filter by CVSS v3 base severity. LOW = 0.1–3.9, MEDIUM = 4.0–6.9, HIGH = 7.0–8.9, CRITICAL = 9.0–10.0. Omit to return all severities."
},
"results_per_page": {
"type": "integer",
"maximum": 2000,
"minimum": 1,
"description": "Number of CVE records to return per page. Range: 1–2000. Default: 20."
}
},
"additionalProperties": false
}Get year-by-year annual mean streamflow statistics for a USGS gauge station. Returns mean discharge (ft3/s) for each water year with records going back to 1900s at major stations. Useful for long-term hydrologic trend analysis, climate change assessment, and water resource planning. Typical major stations have 60–90 years of annual records. Use water.sites to look up station numbers by state or bounding box. No auth — USGS public domain, unlimited calls.
| Argument | Type | Description |
|---|---|---|
| site_no* | string | USGS gauge station number, 8–15 digits (e.g. "01646500" for Potomac River near DC). Use water.sites to find station numbers. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"site_no"
],
"properties": {
"site_no": {
"type": "string",
"description": "USGS gauge station number, 8–15 digits (e.g. \"01646500\" for Potomac River near DC). Use water.sites to find station numbers."
}
},
"additionalProperties": false
}Get real-time streamflow readings for all active USGS gauge stations within a HUC-8 watershed basin. Returns current discharge (ft3/s) at every station in the basin — typically 5–40 sites — in a single call. Ideal for watershed-scale flood monitoring, drought assessment, and basin hydrology surveys. HUC-8 (8-digit Hydrologic Unit Code) defines a sub-basin level watershed (e.g. "02070008" = Potomac Basin). Find HUC codes at water.usgs.gov or use huc=XXXXXXXX for your area of interest. No auth — USGS public domain, updated every 15 minutes.
| Argument | Type | Description |
|---|---|---|
| period | string | ISO 8601 duration for how recent the data should be (e.g. "PT2H" = last 2 hours, "PT6H" = last 6 hours). Default is "PT2H". Longer periods return more data but may slow the response. |
| huc_code* | string | USGS Hydrologic Unit Code (HUC) — 8-digit watershed code (e.g. "02070008" for the Potomac Basin). Use 8-digit HUC for best results. Find HUC codes at water.usgs.gov/lookup/getwatershed. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"huc_code"
],
"properties": {
"period": {
"type": "string",
"description": "ISO 8601 duration for how recent the data should be (e.g. \"PT2H\" = last 2 hours, \"PT6H\" = last 6 hours). Default is \"PT2H\". Longer periods return more data but may slow the response."
},
"huc_code": {
"type": "string",
"description": "USGS Hydrologic Unit Code (HUC) — 8-digit watershed code (e.g. \"02070008\" for the Potomac Basin). Use 8-digit HUC for best results. Find HUC codes at water.usgs.gov/lookup/getwatershed."
}
},
"additionalProperties": false
}Get historical daily mean streamflow (discharge) values for a USGS gauge station over any date range. Returns one measurement per day (midnight UTC) in cubic feet per second (ft3/s). Also supports gage height (ft), water temperature (°C), specific conductance, and turbidity via parameter_cd. Ideal for trend analysis, drought monitoring, flood season review, and hydrology research. Coverage: 1,500+ active US streamflow stations, records from 1900s to present. Use water.sites to look up station numbers by state or bounding box. No auth — USGS public domain, unlimited calls.
| Argument | Type | Description |
|---|---|---|
| site_no* | string | USGS gauge station number, 8–15 digits (e.g. "01646500" for Potomac River near DC). Use water.sites to find station numbers. |
| end_date | string | End date in YYYY-MM-DD format (e.g. "2026-06-30"). Defaults to today if omitted. Max range: 1 year. |
| start_date | string | Start date in YYYY-MM-DD format (e.g. "2026-01-01"). Defaults to 30 days ago if omitted. |
| parameter_cd | string | USGS parameter code. "00060" = discharge/streamflow (ft3/s, default), "00065" = gage height (ft), "00010" = water temperature (°C), "00095" = specific conductance (µS/cm), "63680" = turbidity (FNU). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"site_no"
],
"properties": {
"site_no": {
"type": "string",
"description": "USGS gauge station number, 8–15 digits (e.g. \"01646500\" for Potomac River near DC). Use water.sites to find station numbers."
},
"end_date": {
"type": "string",
"description": "End date in YYYY-MM-DD format (e.g. \"2026-06-30\"). Defaults to today if omitted. Max range: 1 year."
},
"start_date": {
"type": "string",
"description": "Start date in YYYY-MM-DD format (e.g. \"2026-01-01\"). Defaults to 30 days ago if omitted."
},
"parameter_cd": {
"enum": [
"00060",
"00065",
"00010",
"00095",
"63680"
],
"type": "string",
"description": "USGS parameter code. \"00060\" = discharge/streamflow (ft3/s, default), \"00065\" = gage height (ft), \"00010\" = water temperature (°C), \"00095\" = specific conductance (µS/cm), \"63680\" = turbidity (FNU)."
}
},
"additionalProperties": false
}Get detailed metadata for a specific USGS hydrologic monitoring station: drainage area, HUC watershed code, precise coordinates, altitude, site type, state/county codes, and timezone. The drainage_area_sqmi field is critical for discharge-to-runoff calculations and flood frequency analysis. Complements water.sites (which searches by state/bounding box) by providing deep metadata for a known site. Use water.sites first to find the site_no, then call this for full station context. No auth — USGS public domain, unlimited calls.
| Argument | Type | Description |
|---|---|---|
| site_no* | string | USGS gauge station number, 8–15 digits (e.g. "01646500" for Potomac River near DC, "09380000" for Colorado River at Lee Ferry). Use water.sites to search by state or bounding box. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"site_no"
],
"properties": {
"site_no": {
"type": "string",
"description": "USGS gauge station number, 8–15 digits (e.g. \"01646500\" for Potomac River near DC, \"09380000\" for Colorado River at Lee Ferry). Use water.sites to search by state or bounding box."
}
},
"additionalProperties": false
}Generate a species checklist from OBIS occurrence data for a given taxon group or geographic area. Returns a ranked list of species with occurrence record counts, full taxonomy (phylum/class/order/family/genus), WoRMS AphiaID, and marine/brackish habitat flags. Filter by parent taxon (e.g. "Mollusca" for all molluscs), WoRMS AphiaID, or OBIS area ID. Useful for biodiversity assessments, EIA surveys, and species inventories. Source: OBIS — free, CC BY 4.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of species in the checklist to return (1-100, default 20). |
| areaid | integer | OBIS area ID to restrict checklist to a geographic region. Use area search to find IDs. |
| taxonid | integer | WoRMS AphiaID to filter checklist by taxon. Alternative to scientificname for precise filtering. |
| marine_only | boolean | If true (default), restricts results to marine-only species. Set false to include brackish/coastal taxa. |
| scientificname | string | Scientific name filter — restricts checklist to a taxon and its descendants (e.g. "Mollusca" for all molluscs). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of species in the checklist to return (1-100, default 20)."
},
"areaid": {
"type": "integer",
"description": "OBIS area ID to restrict checklist to a geographic region. Use area search to find IDs."
},
"taxonid": {
"type": "integer",
"description": "WoRMS AphiaID to filter checklist by taxon. Alternative to scientificname for precise filtering."
},
"marine_only": {
"type": "boolean",
"description": "If true (default), restricts results to marine-only species. Set false to include brackish/coastal taxa."
},
"scientificname": {
"type": "string",
"description": "Scientific name filter — restricts checklist to a taxon and its descendants (e.g. \"Mollusca\" for all molluscs)."
}
},
"additionalProperties": false
}Find marine biodiversity datasets in the OBIS network by species name or geographic area. Returns dataset metadata: title, abstract, record count, citation, and source URL. Useful for discovering primary data sources, citing specific surveys, and understanding data provenance for a species or region. The OBIS network aggregates 4,200+ datasets from 900+ institutions worldwide. Source: OBIS — free, CC BY 4.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of datasets to return (1-50, default 10). |
| areaid | integer | OBIS area ID to find datasets covering a specific geographic region. |
| scientificname | string | Scientific name to find datasets containing records for that species (e.g. "Balaenoptera musculus"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of datasets to return (1-50, default 10)."
},
"areaid": {
"type": "integer",
"description": "OBIS area ID to find datasets covering a specific geographic region."
},
"scientificname": {
"type": "string",
"description": "Scientific name to find datasets containing records for that species (e.g. \"Balaenoptera musculus\")."
}
},
"additionalProperties": false
}Search 100M+ marine species occurrence records in the Ocean Biodiversity Information System (OBIS). Filter by scientific name, WoRMS AphiaID, geographic coordinates with radius, or year range. Each record includes GPS coordinates, observation year, depth, sea-surface temperature, dataset source, and full taxonomic classification (kingdom→species). Covers all ocean environments: pelagic, benthic, coastal, deep-sea. Source: OBIS — free, CC BY 4.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| lat | number | Center latitude for geographic search (decimal degrees, -90 to 90). Requires lon and radius. |
| lon | number | Center longitude for geographic search (decimal degrees, -180 to 180). Requires lat and radius. |
| limit | integer | Number of occurrence records to return (1-100, default 10). |
| radius | number | Search radius in kilometers around the lat/lon center point. Requires lat and lon. |
| maxyear | integer | Latest observation year to include (e.g. 2024). Pairs with minyear. |
| minyear | integer | Earliest observation year to include (e.g. 2000). Pairs with maxyear. |
| taxonid | integer | WoRMS AphiaID (numeric taxon identifier). Use instead of or alongside scientificname for precise lookups. |
| scientificname | string | Scientific name of the marine species to search (e.g. "Abra alba", "Gadus morhua", "Thunnus thynnus"). Supports partial matching. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Center latitude for geographic search (decimal degrees, -90 to 90). Requires lon and radius."
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Center longitude for geographic search (decimal degrees, -180 to 180). Requires lat and radius."
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of occurrence records to return (1-100, default 10)."
},
"radius": {
"type": "number",
"description": "Search radius in kilometers around the lat/lon center point. Requires lat and lon.",
"exclusiveMinimum": 0
},
"maxyear": {
"type": "integer",
"maximum": 2030,
"minimum": 1600,
"description": "Latest observation year to include (e.g. 2024). Pairs with minyear."
},
"minyear": {
"type": "integer",
"maximum": 2030,
"minimum": 1600,
"description": "Earliest observation year to include (e.g. 2000). Pairs with maxyear."
},
"taxonid": {
"type": "integer",
"description": "WoRMS AphiaID (numeric taxon identifier). Use instead of or alongside scientificname for precise lookups."
},
"scientificname": {
"type": "string",
"description": "Scientific name of the marine species to search (e.g. \"Abra alba\", \"Gadus morhua\", \"Thunnus thynnus\"). Supports partial matching."
}
},
"additionalProperties": false
}Look up marine species taxonomy in the World Register of Marine Species (WoRMS) via OBIS. Search by scientific name (genus, species, or higher taxon) to retrieve the full taxonomic hierarchy (kingdom through species), WoRMS AphiaID, taxonomic status, accepted name, authorship, and habitat flags (marine / brackish / freshwater). Also returns common (vernacular) names. Source: OBIS + WoRMS — free, CC BY 4.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| scientificname* | string | Scientific name of the marine taxon to look up (e.g. "Tursiops truncatus", "Gadus", "Cetacea"). Returns full WoRMS taxonomy. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"scientificname"
],
"properties": {
"scientificname": {
"type": "string",
"minLength": 2,
"description": "Scientific name of the marine taxon to look up (e.g. \"Tursiops truncatus\", \"Gadus\", \"Cetacea\"). Returns full WoRMS taxonomy."
}
},
"additionalProperties": false
}Search or list OECD statistical dataflows — ~1500 official series across every OECD directorate (national accounts, employment, education, environment, tax, trade, health, social indicators, and more). Filter by name/id with query and/or by directorate with agency_id (e.g. "OECD.SDD.STES"), or omit both to list all (capped to 200 results). Use the returned agency_id + dataflow_id with oecd-data.structure and oecd-data.data. Data: sdmx.oecd.org (OECD SDMX public REST API), no auth required.
| Argument | Type | Description |
|---|---|---|
| query | string | Filter dataflows by name or id substring, case-insensitive (e.g. "unemployment", "gdp"). Omit to list all ~1500 available dataflows (capped to 200 results). |
| agency_id | string | Filter by OECD directorate agency id substring (e.g. "OECD.SDD.STES" for short-term economic statistics, "OECD.ELS.SAE" for social/employment). Omit to search across all directorates. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"query": {
"type": "string",
"description": "Filter dataflows by name or id substring, case-insensitive (e.g. \"unemployment\", \"gdp\"). Omit to list all ~1500 available dataflows (capped to 200 results)."
},
"agency_id": {
"type": "string",
"description": "Filter by OECD directorate agency id substring (e.g. \"OECD.SDD.STES\" for short-term economic statistics, \"OECD.ELS.SAE\" for social/employment). Omit to search across all directorates."
}
},
"additionalProperties": false
}Get the dimensions and valid codes for an OECD dataflow (agency_id + dataflow_id from oecd-data.dataflows, e.g. "OECD.SDD.STES" + "DSD_STES@DF_CLI" for composite leading indicators) — reference area, frequency, measure, and breakdown dimensions each with their code list. Use this to interpret the dimension labels returned by oecd-data.data, or to build a narrower key filter. Data: sdmx.oecd.org (OECD SDMX public REST API), no auth required.
| Argument | Type | Description |
|---|---|---|
| version | string | Dataflow version, from oecd-data.dataflows (e.g. "4.1"). Omit to use the latest version. |
| agency_id* | string | OECD directorate agency id, from oecd-data.dataflows (e.g. "OECD.SDD.STES"). |
| dataflow_id* | string | OECD dataflow id, from oecd-data.dataflows (e.g. "DSD_STES@DF_CLI" for composite leading indicators). Returns the dimension list (e.g. REF_AREA, FREQ, MEASURE) with each dimension's valid codes — needed to interpret oecd-data.data results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"agency_id",
"dataflow_id"
],
"properties": {
"version": {
"type": "string",
"description": "Dataflow version, from oecd-data.dataflows (e.g. \"4.1\"). Omit to use the latest version."
},
"agency_id": {
"type": "string",
"minLength": 1,
"description": "OECD directorate agency id, from oecd-data.dataflows (e.g. \"OECD.SDD.STES\")."
},
"dataflow_id": {
"type": "string",
"minLength": 1,
"description": "OECD dataflow id, from oecd-data.dataflows (e.g. \"DSD_STES@DF_CLI\" for composite leading indicators). Returns the dimension list (e.g. REF_AREA, FREQ, MEASURE) with each dimension's valid codes — needed to interpret oecd-data.data results."
}
},
"additionalProperties": false
}Get observation values for an OECD dataflow (agency_id + dataflow_id from oecd-data.dataflows). Optionally narrow with a dot-separated SDMX key (from oecd-data.structure) or fetch all series with the default key "all". Filter by last_n_observations (most recent N per series, default 10, max 100) or a start_period/end_period range (e.g. "2020", "2020-01"). Each series is labeled with its dimension values (country, measure, etc.) and a list of period/value pairs. Data: sdmx.oecd.org (OECD SDMX public REST API), no auth required.
| Argument | Type | Description |
|---|---|---|
| key | string | SDMX dot-separated dimension filter key in dimension position order (e.g. "USA.M.LI....." for a specific country+frequency+measure). Use "all" (default) to fetch every series unfiltered — combine with oecd-data.structure to build a narrower key. |
| version | string | Dataflow version, from oecd-data.dataflows (e.g. "4.1"). Omit to use the latest version. |
| agency_id* | string | OECD directorate agency id, from oecd-data.dataflows (e.g. "OECD.SDD.STES"). |
| end_period | string | End of period range, e.g. "2024" (annual) or "2024-12" (monthly). Takes precedence over last_n_observations when set. |
| dataflow_id* | string | OECD dataflow id, from oecd-data.dataflows (e.g. "DSD_STES@DF_CLI"). |
| start_period | string | Start of period range, e.g. "2020" (annual) or "2020-01" (monthly). Takes precedence over last_n_observations when set. |
| last_n_observations | integer | Return only the most recent N observations per series (max 100, default 10). Ignored if start_period or end_period is set. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"agency_id",
"dataflow_id"
],
"properties": {
"key": {
"type": "string",
"description": "SDMX dot-separated dimension filter key in dimension position order (e.g. \"USA.M.LI.....\" for a specific country+frequency+measure). Use \"all\" (default) to fetch every series unfiltered — combine with oecd-data.structure to build a narrower key."
},
"version": {
"type": "string",
"description": "Dataflow version, from oecd-data.dataflows (e.g. \"4.1\"). Omit to use the latest version."
},
"agency_id": {
"type": "string",
"minLength": 1,
"description": "OECD directorate agency id, from oecd-data.dataflows (e.g. \"OECD.SDD.STES\")."
},
"end_period": {
"type": "string",
"description": "End of period range, e.g. \"2024\" (annual) or \"2024-12\" (monthly). Takes precedence over last_n_observations when set."
},
"dataflow_id": {
"type": "string",
"minLength": 1,
"description": "OECD dataflow id, from oecd-data.dataflows (e.g. \"DSD_STES@DF_CLI\")."
},
"start_period": {
"type": "string",
"description": "Start of period range, e.g. \"2020\" (annual) or \"2020-01\" (monthly). Takes precedence over last_n_observations when set."
},
"last_n_observations": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Return only the most recent N observations per series (max 100, default 10). Ignored if start_period or end_period is set."
}
},
"additionalProperties": false
}Fetch annual GDP and national accounts data for any OECD member country. Returns GDP at current USD exchange rates, gross operating surplus, compensation of employees, and other national accounts aggregates from the OECD National Accounts Main Aggregates database (NAMAIN10). Covers 38 OECD countries from the 1970s to the latest year. Data is sourced from official national statistics offices and harmonised to SNA 2008 standards. Each series includes the exact transaction code (e.g. B1GQ = GDP at market prices), sector, unit of measure (USD millions at exchange rates), and price base. Source: OECD SDMX API, CC BY 4.0, no auth required, unlimited.
| Argument | Type | Description |
|---|---|---|
| country* | string | ISO 3-letter OECD country code (e.g. USA, GBR, DEU, FRA, JPN, CAN, AUS, KOR, ITA, ESP). See OECD reference area codes for the full list of 38 member countries. |
| end_period | string | End year for annual GDP data (e.g. "2024"). Defaults to latest available. |
| max_series | integer | Maximum number of time series to return (1–100, default 20). Each series is a unique combination of dimensions such as sector, measure, or adjustment type. |
| start_period | string | Start year for annual GDP data (e.g. "2018"). Defaults to 5 years prior. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country"
],
"properties": {
"country": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO 3-letter OECD country code (e.g. USA, GBR, DEU, FRA, JPN, CAN, AUS, KOR, ITA, ESP). See OECD reference area codes for the full list of 38 member countries."
},
"end_period": {
"type": "string",
"description": "End year for annual GDP data (e.g. \"2024\"). Defaults to latest available."
},
"max_series": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of time series to return (1–100, default 20). Each series is a unique combination of dimensions such as sector, measure, or adjustment type."
},
"start_period": {
"type": "string",
"description": "Start year for annual GDP data (e.g. \"2018\"). Defaults to 5 years prior."
}
},
"additionalProperties": false
}Get consumer price index (CPI) data and year-on-year inflation rates for any OECD country. Returns all-items CPI growth rate (annual % change) based on the COICOP 1999 classification. Covers all 38 OECD members plus selected non-members at monthly frequency with typical lags of 2–4 weeks. Includes national CPI and Eurostat HICP (for EU members), broken down by expenditure category (food, energy, services, housing, transport, etc.). Essential for inflation monitoring, monetary policy analysis, and cost-of-living comparisons. Source: OECD SDMX API, CC BY 4.0, no auth required, unlimited.
| Argument | Type | Description |
|---|---|---|
| country* | string | ISO 3-letter OECD country code (e.g. USA, GBR, DEU, FRA, JPN, CAN, AUS, KOR, ITA, ESP). See OECD reference area codes for the full list of 38 member countries. |
| end_period | string | End month for CPI data in YYYY-MM format (e.g. "2024-06"). Defaults to latest available. |
| max_series | integer | Maximum number of time series to return (1–100, default 20). Each series is a unique combination of dimensions such as sector, measure, or adjustment type. |
| start_period | string | Start month for CPI data in YYYY-MM format (e.g. "2023-01"). Defaults to 12 months ago. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country"
],
"properties": {
"country": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO 3-letter OECD country code (e.g. USA, GBR, DEU, FRA, JPN, CAN, AUS, KOR, ITA, ESP). See OECD reference area codes for the full list of 38 member countries."
},
"end_period": {
"type": "string",
"description": "End month for CPI data in YYYY-MM format (e.g. \"2024-06\"). Defaults to latest available."
},
"max_series": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of time series to return (1–100, default 20). Each series is a unique combination of dimensions such as sector, measure, or adjustment type."
},
"start_period": {
"type": "string",
"description": "Start month for CPI data in YYYY-MM format (e.g. \"2023-01\"). Defaults to 12 months ago."
}
},
"additionalProperties": false
}Retrieve Balance of Payments (BoP) data for any OECD member country. Returns current account balance, goods trade balance, services trade balance, and financial account indicators in USD millions. Based on IMF BPM6 standards and reported to the OECD. Covers 38 OECD countries at quarterly and annual frequency with typical lags of 3–6 months. Useful for macroeconomic analysis, currency risk assessment, and understanding a country's external position with the rest of the world. Current account surplus = country exports more than it imports; deficit = imports exceed exports. Source: OECD SDMX API, CC BY 4.0, no auth required, unlimited.
| Argument | Type | Description |
|---|---|---|
| country* | string | ISO 3-letter OECD country code (e.g. USA, GBR, DEU, FRA, JPN, CAN, AUS, KOR, ITA, ESP). See OECD reference area codes for the full list of 38 member countries. |
| end_period | string | End period for Balance of Payments data (e.g. "2023"). Defaults to latest available. |
| max_series | integer | Maximum number of time series to return (1–100, default 20). Each series is a unique combination of dimensions such as sector, measure, or adjustment type. |
| start_period | string | Start period for Balance of Payments data (e.g. "2018" for annual, "2023-Q1" for quarterly). Defaults to 5 years prior. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country"
],
"properties": {
"country": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO 3-letter OECD country code (e.g. USA, GBR, DEU, FRA, JPN, CAN, AUS, KOR, ITA, ESP). See OECD reference area codes for the full list of 38 member countries."
},
"end_period": {
"type": "string",
"description": "End period for Balance of Payments data (e.g. \"2023\"). Defaults to latest available."
},
"max_series": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of time series to return (1–100, default 20). Each series is a unique combination of dimensions such as sector, measure, or adjustment type."
},
"start_period": {
"type": "string",
"description": "Start period for Balance of Payments data (e.g. \"2018\" for annual, \"2023-Q1\" for quarterly). Defaults to 5 years prior."
}
},
"additionalProperties": false
}Retrieve monthly unemployment rates from the OECD Labour Force Survey (LFS) for any OECD member country. Returns the unemployment rate as a percentage of the labour force for persons aged 15+, total and by sex, with both seasonally adjusted and unadjusted series. Covers OECD members with typical lags of 1–3 months. The series use standardised ILO definitions of unemployment (persons without work, available, and actively seeking employment). Useful for tracking labour market conditions, comparing countries, and detecting recessions. Source: OECD SDMX API, CC BY 4.0, no auth required, unlimited.
| Argument | Type | Description |
|---|---|---|
| country* | string | ISO 3-letter OECD country code (e.g. USA, GBR, DEU, FRA, JPN, CAN, AUS, KOR, ITA, ESP). See OECD reference area codes for the full list of 38 member countries. |
| end_period | string | End month for unemployment data in YYYY-MM format (e.g. "2024-06"). Defaults to latest available. |
| max_series | integer | Maximum number of time series to return (1–100, default 20). Each series is a unique combination of dimensions such as sector, measure, or adjustment type. |
| start_period | string | Start month for unemployment data in YYYY-MM format (e.g. "2023-01"). Defaults to 12 months ago. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country"
],
"properties": {
"country": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO 3-letter OECD country code (e.g. USA, GBR, DEU, FRA, JPN, CAN, AUS, KOR, ITA, ESP). See OECD reference area codes for the full list of 38 member countries."
},
"end_period": {
"type": "string",
"description": "End month for unemployment data in YYYY-MM format (e.g. \"2024-06\"). Defaults to latest available."
},
"max_series": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of time series to return (1–100, default 20). Each series is a unique combination of dimensions such as sector, measure, or adjustment type."
},
"start_period": {
"type": "string",
"description": "Start month for unemployment data in YYYY-MM format (e.g. \"2023-01\"). Defaults to 12 months ago."
}
},
"additionalProperties": false
}Retrieve annual greenhouse gas (GHG) emissions data for any OECD country from the OECD Environment Policy and Progress indicators database. Returns CO2-equivalent emissions (in million tonnes) broken down by gas type (CO2, CH4, N2O, F-gases, etc.) and economic sector (energy, transport, agriculture, industry, waste, etc.). Covers OECD members from 1990 to the latest available year, with data aligned to IPCC inventory guidelines and UNFCCC reporting. Useful for climate policy analysis, carbon footprint comparisons, and tracking progress towards net-zero targets. Source: OECD ENV.EPI SDMX API, CC BY 4.0, no auth required, unlimited.
| Argument | Type | Description |
|---|---|---|
| country* | string | ISO 3-letter OECD country code (e.g. USA, GBR, DEU, FRA, JPN, CAN, AUS, KOR, ITA, ESP). See OECD reference area codes for the full list of 38 member countries. |
| end_period | string | End year for GHG emissions data (e.g. "2022"). Defaults to latest available. |
| max_series | integer | Maximum number of time series to return (1–100, default 20). Each series is a unique combination of dimensions such as sector, measure, or adjustment type. |
| start_period | string | Start year for GHG emissions data (e.g. "2015"). Defaults to 10 years prior. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country"
],
"properties": {
"country": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO 3-letter OECD country code (e.g. USA, GBR, DEU, FRA, JPN, CAN, AUS, KOR, ITA, ESP). See OECD reference area codes for the full list of 38 member countries."
},
"end_period": {
"type": "string",
"description": "End year for GHG emissions data (e.g. \"2022\"). Defaults to latest available."
},
"max_series": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of time series to return (1–100, default 20). Each series is a unique combination of dimensions such as sector, measure, or adjustment type."
},
"start_period": {
"type": "string",
"description": "Start year for GHG emissions data (e.g. \"2015\"). Defaults to 10 years prior."
}
},
"additionalProperties": false
}Get the complete list of active OFAC sanctions programs with entity counts from the SDN list. Returns each program code (e.g. IRAN, RUSSIA, CUBA, SDN, DPRK, CYBER, UKRAINE-EO13685, GLOMAG) and the number of entities designated under that program. Use program codes returned here as the "program" filter in ofac.sdn.search. Data source: OFAC SDN List — US Treasury, public domain, updated on business days.
| Argument | Type | Description |
|---|---|---|
| locale | string | No-op — included for consistency. Response is always in English as published by US Treasury. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"locale": {
"type": "string",
"description": "No-op — included for consistency. Response is always in English as published by US Treasury."
}
},
"additionalProperties": false
}Get publication metadata for the OFAC SDN (Specially Designated Nationals) list, including the last modification date and SHA-256 integrity digest. Use this to check when the list was last updated before running compliance screening. The SDN list is updated on US business days as new designations, revocations, and amendments are made. Data source: US Treasury OFAC — public domain, no auth required.
| Argument | Type | Description |
|---|---|---|
| locale | string | No-op — included for consistency. Response is always in English as published by US Treasury. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"locale": {
"type": "string",
"description": "No-op — included for consistency. Response is always in English as published by US Treasury."
}
},
"additionalProperties": false
}Get all known aliases (alternate names) for a specific OFAC SDN entity by its entity number. Returns each alias with its type (aka = also known as, fka = formerly known as, nka = now known as) and the alternate name. Use ofac.sdn.search first to find the entity number (ent_num) for the entity you are screening. Aliases are critical for comprehensive sanctions screening — sanctioned entities often operate under multiple names. Example: entity 36 (AEROCARIBBEAN AIRLINES) has alias "AERO-CARIBBEAN". Data source: OFAC SDN Alternate Names List — US Treasury, public domain.
| Argument | Type | Description |
|---|---|---|
| ent_num* | integer | OFAC entity number (ent_num) of the SDN entry to look up aliases for. Obtain this from ofac.sdn.search results (the "ent_num" field on each match). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"ent_num"
],
"properties": {
"ent_num": {
"type": "integer",
"description": "OFAC entity number (ent_num) of the SDN entry to look up aliases for. Obtain this from ofac.sdn.search results (the \"ent_num\" field on each match).",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Search the US Treasury OFAC Specially Designated Nationals and Blocked Persons (SDN) list by name. Returns matching entities with their entity number, type (individual/entity/vessel/aircraft), sanctions program code, title, and remarks. Filter by type (individual, entity, vessel, aircraft) and/or sanctions program (IRAN, RUSSIA, CUBA, SDN, DPRK, CYBER, etc.). Use this for AML/KYC compliance screening, sanctions risk assessment, and due diligence workflows. Matching is case-insensitive substring search — search by any distinctive part of the name. Use ofac.meta.programs to see all available program codes. Data source: US Treasury OFAC — public domain, updated on business days. No API key required.
| Argument | Type | Description |
|---|---|---|
| name* | string | Name to search for in the OFAC SDN list (case-insensitive substring match). Examples: "GAZPROM", "Vladimir Putin", "Bank Melli Iran". Use the most distinctive part of the name for best results. |
| type | string | Filter by SDN entity type. "individual" = natural persons, "entity" = companies/organisations, "vessel" = ships, "aircraft" = aircraft. Omit to search all types. |
| limit | integer | Maximum number of matches to return (default 20, max 50). |
| program | string | Filter by OFAC sanctions program code (uppercase). Examples: "IRAN", "RUSSIA", "CUBA", "SDN", "DPRK", "CYBER", "UKRAINE-EO13685". Use ofac.meta.programs to see the full list of codes. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Name to search for in the OFAC SDN list (case-insensitive substring match). Examples: \"GAZPROM\", \"Vladimir Putin\", \"Bank Melli Iran\". Use the most distinctive part of the name for best results."
},
"type": {
"enum": [
"individual",
"entity",
"vessel",
"aircraft"
],
"type": "string",
"description": "Filter by SDN entity type. \"individual\" = natural persons, \"entity\" = companies/organisations, \"vessel\" = ships, \"aircraft\" = aircraft. Omit to search all types."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of matches to return (default 20, max 50)."
},
"program": {
"type": "string",
"maxLength": 50,
"description": "Filter by OFAC sanctions program code (uppercase). Examples: \"IRAN\", \"RUSSIA\", \"CUBA\", \"SDN\", \"DPRK\", \"CYBER\", \"UKRAINE-EO13685\". Use ofac.meta.programs to see the full list of codes."
}
},
"additionalProperties": false
}List and search all 337+ datasets published by the UK Office for National Statistics (ONS) via the beta CMD API. Returns dataset IDs, titles, descriptions, last-updated timestamps, release frequencies, and national statistic flags. Use the keyword parameter to filter by topic (e.g. "gdp", "inflation", "population", "unemployment", "earnings"). Use dataset IDs with the other ons.* tools or the ONS Cantabular API. Source: ONS CMD API v1, Open Government Licence v3.0.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of datasets to return (1–50, default 20). |
| offset | integer | Pagination offset — number of datasets to skip (default 0). |
| keyword | string | Optional keyword to filter datasets by title, description, or tags (e.g. "gdp", "inflation", "population", "unemployment"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of datasets to return (1–50, default 20)."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset — number of datasets to skip (default 0)."
},
"keyword": {
"type": "string",
"description": "Optional keyword to filter datasets by title, description, or tags (e.g. \"gdp\", \"inflation\", \"population\", \"unemployment\")."
}
},
"additionalProperties": false
}Retrieve UK Consumer Prices Index Including Housing costs (CPIH) from the ONS. Monthly index values (2015=100) for the overall index or individual categories (food, energy, transport, etc.). Data goes back to 1988. Default returns the headline CPIH overall index (CP00) for the UK. Use the category parameter to drill into sub-categories such as "CP01" (food & beverages), "CP04" (housing & energy), "CP07" (transport). Returns up to 60 most recent months by default. Source: ONS dataset cpih01, OGL v3.0.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of most recent time periods to return (1–300, default 60). Data is monthly. |
| category | string | ONS aggregate code for the CPIH category. Default "CP00" (Overall Index). Other examples: "CP01" (Food & beverages), "CP02" (Alcohol & tobacco), "CP04" (Housing & energy), "CP07" (Transport). See /v1/datasets/cpih01/editions/time-series/versions/latest/dimensions/aggregate/options for full list. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 300,
"minimum": 1,
"description": "Number of most recent time periods to return (1–300, default 60). Data is monthly."
},
"category": {
"type": "string",
"description": "ONS aggregate code for the CPIH category. Default \"CP00\" (Overall Index). Other examples: \"CP01\" (Food & beverages), \"CP02\" (Alcohol & tobacco), \"CP04\" (Housing & energy), \"CP07\" (Transport). See /v1/datasets/cpih01/editions/time-series/versions/latest/dimensions/aggregate/options for full list."
}
},
"additionalProperties": false
}Retrieve UK Gross Domestic Product (GDP) monthly estimates from the ONS. Seasonally adjusted index (2016=100) covering total economy (A--T) or specific sectors: Agriculture (A), Manufacturing (C), Construction (F), Index of Services (G-T), Production Industries (B--E). Monthly data from 1997. Default returns total monthly GDP. Use the sector parameter for industry-level breakdowns. Source: ONS dataset gdp-to-four-decimal-places, OGL v3.0.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of most recent months to return (1–300, default 60). Data is monthly (seasonally adjusted index, 2016=100). |
| sector | string | ONS SIC sector code for GDP breakdown. Default "A--T" (Total monthly GDP). Examples: "A" (Agriculture), "C" (Manufacturing), "F" (Construction), "G-and-I" (Distribution, Hotels & Restaurants), "B--E" (Production Industries). See ONS API for full list. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 300,
"minimum": 1,
"description": "Number of most recent months to return (1–300, default 60). Data is monthly (seasonally adjusted index, 2016=100)."
},
"sector": {
"type": "string",
"description": "ONS SIC sector code for GDP breakdown. Default \"A--T\" (Total monthly GDP). Examples: \"A\" (Agriculture), \"C\" (Manufacturing), \"F\" (Construction), \"G-and-I\" (Distribution, Hotels & Restaurants), \"B--E\" (Production Industries). See ONS API for full list."
}
},
"additionalProperties": false
}Retrieve mid-year population estimates for the UK, England, Wales, or local authorities from the ONS. Annual estimates of usual resident population as at 30 June, by area, age group, and sex. Default returns total population for England and Wales (all ages, all sexes). Use geography parameter with ONS geography codes (K02000001=UK, K04000001=England & Wales, E92000001=England, W92000004=Wales) and age parameter for single-year-of-age breakdowns. Source: ONS mid-year population estimates, OGL v3.0.
| Argument | Type | Description |
|---|---|---|
| age | string | Age filter. Default "total" (all ages combined). Use a single year of age (e.g. "0", "25", "90") to get population for that age group only. |
| sex | string | Sex breakdown. Default "all" (total population). Options: "male", "female". |
| geography | string | ONS geography code for the area. Default "K04000001" (England and Wales). Other codes: "E92000001" (England), "W92000004" (Wales). Use the ONS geography portal to find codes for specific regions or local authorities. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"age": {
"type": "string",
"description": "Age filter. Default \"total\" (all ages combined). Use a single year of age (e.g. \"0\", \"25\", \"90\") to get population for that age group only."
},
"sex": {
"enum": [
"all",
"male",
"female"
],
"type": "string",
"description": "Sex breakdown. Default \"all\" (total population). Options: \"male\", \"female\"."
},
"geography": {
"type": "string",
"description": "ONS geography code for the area. Default \"K04000001\" (England and Wales). Other codes: \"E92000001\" (England), \"W92000004\" (Wales). Use the ONS geography portal to find codes for specific regions or local authorities."
}
},
"additionalProperties": false
}Retrieve UK labour market statistics from the ONS Labour Force Survey (LFS). Returns unemployment rate (%), employment rate, or economic inactivity rate for the UK, broken down by age group and sex. Data is three-month rolling averages (e.g. "Jan-Mar 2024"), seasonally adjusted. Default returns the overall unemployment rate (16+, all adults, seasonally adjusted rates). Use activity, age_group, sex parameters to filter. Source: ONS dataset labour-market, OGL v3.0.
| Argument | Type | Description |
|---|---|---|
| sex | string | Sex filter. Default "all-adults". Options: "men", "women". |
| unit | string | Output unit. Default "rates" (percentage rate, e.g. 4.2%). "levels" returns thousands of people. |
| limit | integer | Number of most recent periods to return (1–300, default 60). Data is three-month rolling average (e.g. "Jan-Mar 2024"). |
| activity | string | Labour market activity to query. Default "unemployed" (unemployment rate). Options: "in-employment" (employment rate), "economically-active", "economically-inactive". |
| age_group | string | Age group filter. Default "16+" (all working-age adults). Examples: "16-24" (youth unemployment), "25-34", "50-64". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"sex": {
"enum": [
"all-adults",
"men",
"women"
],
"type": "string",
"description": "Sex filter. Default \"all-adults\". Options: \"men\", \"women\"."
},
"unit": {
"enum": [
"rates",
"levels"
],
"type": "string",
"description": "Output unit. Default \"rates\" (percentage rate, e.g. 4.2%). \"levels\" returns thousands of people."
},
"limit": {
"type": "integer",
"maximum": 300,
"minimum": 1,
"description": "Number of most recent periods to return (1–300, default 60). Data is three-month rolling average (e.g. \"Jan-Mar 2024\")."
},
"activity": {
"enum": [
"unemployed",
"in-employment",
"economically-active",
"economically-inactive"
],
"type": "string",
"description": "Labour market activity to query. Default \"unemployed\" (unemployment rate). Options: \"in-employment\" (employment rate), \"economically-active\", \"economically-inactive\"."
},
"age_group": {
"enum": [
"16+",
"16-64",
"16-17",
"16-24",
"18-24",
"25-34",
"35-49",
"50-64",
"65+"
],
"type": "string",
"description": "Age group filter. Default \"16+\" (all working-age adults). Examples: \"16-24\" (youth unemployment), \"25-34\", \"50-64\"."
}
},
"additionalProperties": false
}Get full metadata for one Government of Canada open dataset by id: title, notes, organization, subjects, keywords, license, jurisdiction, and the full resource list (name, format, download URL, size) for that dataset. Data: open.canada.ca CKAN Action API, no auth required.
| Argument | Type | Description |
|---|---|---|
| id* | string | Open Canada dataset UUID or URL slug (e.g. from dataset_search results) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "Open Canada dataset UUID or URL slug (e.g. from dataset_search results)"
}
},
"additionalProperties": false
}Search the Government of Canada open data catalog by free text, topic subject, and/or publishing department, returning dataset id, title, notes, organization, subjects, and release/modified dates. Use open-canada.subject_list or open-canada.organization_list to find valid filter slugs. Data: open.canada.ca CKAN Action API, no auth required.
| Argument | Type | Description |
|---|---|---|
| rows | integer | Number of datasets to return (1-20, default 10) |
| query | string | Free-text search across dataset title/description (e.g. "climate normals") |
| subject | string | Topic slug to filter by (e.g. "health_and_safety", "nature_and_environment") — see open-canada.subject_list |
| organization | string | Federal department/agency slug to filter by (e.g. "nrcan-rncan") — see open-canada.organization_list |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"rows": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of datasets to return (1-20, default 10)"
},
"query": {
"type": "string",
"description": "Free-text search across dataset title/description (e.g. \"climate normals\")"
},
"subject": {
"type": "string",
"description": "Topic slug to filter by (e.g. \"health_and_safety\", \"nature_and_environment\") — see open-canada.subject_list"
},
"organization": {
"type": "string",
"description": "Federal department/agency slug to filter by (e.g. \"nrcan-rncan\") — see open-canada.organization_list"
}
},
"additionalProperties": false
}List federal/provincial departments and agencies publishing on the Government of Canada open data portal, with dataset counts, optionally filtered by a name substring. Use the returned org slug as the `organization` filter for open-canada.dataset_search. Data: open.canada.ca CKAN Action API, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max organizations to return (1-50, default 20) |
| query | string | Substring filter on organization title (e.g. "natural resources") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Max organizations to return (1-50, default 20)"
},
"query": {
"type": "string",
"description": "Substring filter on organization title (e.g. \"natural resources\")"
}
},
"additionalProperties": false
}List the Government of Canada open data subject taxonomy (e.g. "health_and_safety", "nature_and_environment") with the current dataset count per subject, optionally filtered by a substring. Use the returned subject slug as the `subject` filter for open-canada.dataset_search. Data: open.canada.ca CKAN Action API, no auth required.
| Argument | Type | Description |
|---|---|---|
| query | string | Substring filter on subject slug (e.g. "health") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"query": {
"type": "string",
"description": "Substring filter on subject slug (e.g. \"health\")"
}
},
"additionalProperties": false
}Search OpenAIRE for research organizations (universities, funders, institutes) by legal or alternative name, e.g. "CERN" or "University of Oxford". Returns organization id, legal name, short name, alternative names, website, and country. Data: OpenAIRE Graph API, EU-funded open science infrastructure, no auth required.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default 1). |
| query | string | Free-text search across organization legal name and alternative names (e.g. "CERN", "University of Oxford"). |
| page_size | integer | Results per page (default 10, max 50). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)."
},
"query": {
"type": "string",
"description": "Free-text search across organization legal name and alternative names (e.g. \"CERN\", \"University of Oxford\")."
},
"page_size": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Results per page (default 10, max 50)."
}
},
"additionalProperties": false
}Get full metadata for an OpenAIRE research product by its product_id (from openaire.search): title, description, full author list, publication date, publisher, language, best open access right, source repositories, and persistent identifiers (DOIs). Data: OpenAIRE Graph API, EU-funded open science infrastructure, no auth required.
| Argument | Type | Description |
|---|---|---|
| product_id* | string | OpenAIRE research product ID (e.g. "doi_dedup___::4807efad8ff855adaa51d3c5c5390481") — obtained from openaire.search results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"product_id"
],
"properties": {
"product_id": {
"type": "string",
"minLength": 1,
"description": "OpenAIRE research product ID (e.g. \"doi_dedup___::4807efad8ff855adaa51d3c5c5390481\") — obtained from openaire.search results."
}
},
"additionalProperties": false
}Search the OpenAIRE Graph — a research-literature graph aggregating metadata from thousands of repositories, journals, and archives worldwide — for publications, datasets, software, and other research outputs, e.g. "climate change adaptation" or "CRISPR gene editing". Filter by free-text query and/or output type. Returns each product's id (for use with openaire.product_details), title, authors, publication date, publisher, language, open access status, and DOI. Data: OpenAIRE Graph API, EU-funded open science infrastructure, no auth required.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default 1). |
| type | string | Filter by research output type: publication, dataset, software, or other (e.g. patents, workflows). |
| query | string | Free-text search across title, description, and author (e.g. "climate change adaptation", "CRISPR gene editing"). |
| page_size | integer | Results per page (default 10, max 50). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)."
},
"type": {
"enum": [
"publication",
"dataset",
"software",
"other"
],
"type": "string",
"description": "Filter by research output type: publication, dataset, software, or other (e.g. patents, workflows)."
},
"query": {
"type": "string",
"description": "Free-text search across title, description, and author (e.g. \"climate change adaptation\", \"CRISPR gene editing\")."
},
"page_size": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Results per page (default 10, max 50)."
}
},
"additionalProperties": false
}Search OpenAIRE for funded research projects by free-text query across title, acronym, and keywords, e.g. "renewable energy" or "H2020". Returns project code, acronym, title, website, start/end dates, call identifier, keywords, summary, and funder details (funding body, jurisdiction, funding stream). Data: OpenAIRE Graph API, EU-funded open science infrastructure, no auth required.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default 1). |
| query | string | Free-text search across project title, acronym, and keywords (e.g. "renewable energy", "H2020"). |
| page_size | integer | Results per page (default 10, max 50). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)."
},
"query": {
"type": "string",
"description": "Free-text search across project title, acronym, and keywords (e.g. \"renewable energy\", \"H2020\")."
},
"page_size": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Results per page (default 10, max 50)."
}
},
"additionalProperties": false
}Search 90M+ researcher/author records by display name. Returns OpenAlex author ID, ORCID, works count, total citation count, h-index, and last known institution with country. Useful for identifying a researcher before filtering openalex.works_search results by author, or for author-level impact metrics. Data: api.openalex.org, no auth required, CC0 metadata.
| Argument | Type | Description |
|---|---|---|
| query* | string | Search query for researcher/author name (e.g. "marie curie") |
| per_page | integer | Number of results to return (1-25, default 10) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"minLength": 1,
"description": "Search query for researcher/author name (e.g. \"marie curie\")"
},
"per_page": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Number of results to return (1-25, default 10)"
}
},
"additionalProperties": false
}Fetch full details for one scholarly work by OpenAlex ID (e.g. "W2101234009") or DOI (e.g. "10.48550/arxiv.1201.0490"). Returns title, all authors with ORCID and institutions, open-access status and PDF/landing-page URLs, citation and reference counts, primary research topic, and a reconstructed plain-text abstract. Call openalex.works_search first to discover an ID from a text query. Data: api.openalex.org, no auth required, CC0 metadata.
| Argument | Type | Description |
|---|---|---|
| id* | string | OpenAlex work ID (e.g. "W2101234009"), OpenAlex URL, or DOI (e.g. "10.48550/arxiv.1201.0490") to fetch full details for |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "OpenAlex work ID (e.g. \"W2101234009\"), OpenAlex URL, or DOI (e.g. \"10.48550/arxiv.1201.0490\") to fetch full details for"
}
},
"additionalProperties": false
}Search 250M+ scholarly works (journal articles, books, preprints, datasets) by title, abstract, or full text. Returns OpenAlex ID, DOI, title, authors, publication year, open-access status, citation count, and primary research topic. Complements crossref.works_search (which returns publisher-registered bibliographic metadata) with OpenAlex's broader citation graph and topic classification. Call openalex.get_work with a result ID or DOI for full detail. Data: api.openalex.org, no auth required, CC0 metadata.
| Argument | Type | Description |
|---|---|---|
| query* | string | Search query across title, abstract, and full text (e.g. "climate change") |
| per_page | integer | Number of results to return (1-25, default 10) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"minLength": 1,
"description": "Search query across title, abstract, and full text (e.g. \"climate change\")"
},
"per_page": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Number of results to return (1-25, default 10)"
}
},
"additionalProperties": false
}Lookup a cosmetics/personal-care product by barcode (EAN/UPC) — name, brand, categories, quantity, full ingredients list, image. 6K+ products (Open Beauty Facts)
| Argument | Type | Description |
|---|---|---|
| barcode* | string | Product barcode (EAN-13, UPC-A, etc.) e.g. "3600523327164" for a shampoo |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"barcode"
],
"properties": {
"barcode": {
"type": "string",
"maxLength": 13,
"minLength": 8,
"description": "Product barcode (EAN-13, UPC-A, etc.) e.g. \"3600523327164\" for a shampoo"
}
},
"additionalProperties": false
}Search cosmetics/personal-care products by name — returns matching products with brand, barcode, categories, image. Shampoo, lipstick, sunscreen, and more (Open Beauty Facts)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Results count (default 10, max 50) |
| query* | string | Cosmetics/personal-care product name to search (e.g. "shampoo", "lipstick", "sunscreen") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Results count (default 10, max 50)"
},
"query": {
"type": "string",
"minLength": 2,
"description": "Cosmetics/personal-care product name to search (e.g. \"shampoo\", \"lipstick\", \"sunscreen\")"
}
},
"additionalProperties": false
}Browse the Open Brewery DB directory of 8,000+ breweries, cideries, and brewpubs. Filter by city, state, country, postal code, brewery type, distance from a coordinate, or specific IDs. Returns name, address, geo-coordinates, phone, and website for each match (Open Brewery DB, MIT-licensed open dataset)
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default 1). |
| sort | string | Sort field(s) with asc/desc, e.g. "name" or "name:desc". Not usable with by_dist. |
| by_ids | string | Comma-separated list of specific brewery IDs to fetch. |
| by_city | string | Filter breweries by city name (e.g. "Portland"). |
| by_dist | string | Sort results by distance from an origin point, as "latitude,longitude" (e.g. "39.7,-104.9"). Cannot be combined with sort. |
| by_name | string | Filter breweries by name (partial match). |
| by_type | string | Filter by brewery type. |
| by_state | string | Filter by full state/province name, no abbreviations (e.g. "California"). |
| per_page | integer | Results per page (default 50, max 200). |
| by_postal | string | Filter by postal/ZIP code — 5-digit or postal+4 (e.g. "44107" or "44107-1234"). |
| by_country | string | Filter breweries by country name (e.g. "United States"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)."
},
"sort": {
"type": "string",
"description": "Sort field(s) with asc/desc, e.g. \"name\" or \"name:desc\". Not usable with by_dist."
},
"by_ids": {
"type": "string",
"description": "Comma-separated list of specific brewery IDs to fetch."
},
"by_city": {
"type": "string",
"description": "Filter breweries by city name (e.g. \"Portland\")."
},
"by_dist": {
"type": "string",
"description": "Sort results by distance from an origin point, as \"latitude,longitude\" (e.g. \"39.7,-104.9\"). Cannot be combined with sort."
},
"by_name": {
"type": "string",
"description": "Filter breweries by name (partial match)."
},
"by_type": {
"enum": [
"micro",
"nano",
"regional",
"brewpub",
"large",
"planning",
"bar",
"contract",
"proprietor",
"closed"
],
"type": "string",
"description": "Filter by brewery type."
},
"by_state": {
"type": "string",
"description": "Filter by full state/province name, no abbreviations (e.g. \"California\")."
},
"per_page": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Results per page (default 50, max 200)."
},
"by_postal": {
"type": "string",
"description": "Filter by postal/ZIP code — 5-digit or postal+4 (e.g. \"44107\" or \"44107-1234\")."
},
"by_country": {
"type": "string",
"description": "Filter breweries by country name (e.g. \"United States\")."
}
},
"additionalProperties": false
}Get one or more random breweries from the Open Brewery DB directory — useful for discovery, demos, or sampling the dataset (Open Brewery DB)
| Argument | Type | Description |
|---|---|---|
| size | integer | Number of random breweries to return (default 1, max 50). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"size": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of random breweries to return (default 1, max 50)."
}
},
"additionalProperties": false
}Search breweries by name with partial, case-insensitive matching. Returns name, address, geo-coordinates, phone, and website for each match (Open Brewery DB)
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default 1). |
| query* | string | Search term matched against brewery names (partial, case-insensitive). |
| per_page | integer | Results per page (default 50, max 200). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)."
},
"query": {
"type": "string",
"minLength": 1,
"description": "Search term matched against brewery names (partial, case-insensitive)."
},
"per_page": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Results per page (default 50, max 200)."
}
},
"additionalProperties": false
}Retrieve full archaeological record details for a specific Open Context item by UUID and type. Returns the complete structured data including: label, category (e.g. Pottery, Coin, Human Bone), Dublin Core metadata (title, issued date, modified date), full context path (geographic hierarchy: continent → country → site → trench → unit), latitude/longitude, temporal coverage with BCE/CE ranges and period labels, creator attribution, subject tags, project membership, license, and all project-defined observations (attributes and values recorded during excavation, such as fabric type, condition, size, vessel form, description). Obtain the UUID from the last path segment of any opencontext.archaeology.search result URI. Item types: "subjects" for excavated objects and site contexts (default), "projects" for excavation projects, "media" for images and 3D models, "documents" for field notes.
| Argument | Type | Description |
|---|---|---|
| uuid* | string | UUID of the Open Context item to retrieve (e.g. "013860d8-a5c9-48fc-d695-0ab6cc7c94b0"). Obtain from opencontext.archaeology.search results (last path segment of the URI). |
| item_type | string | Item category for routing to the correct endpoint. "subjects" for excavated objects/finds/contexts (default); "projects" for excavation projects; "media" for images/3D models; "documents" for field notes/reports. Matches the path segment in the item URI (e.g. opencontext.org/subjects/...). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"uuid"
],
"properties": {
"uuid": {
"type": "string",
"minLength": 1,
"description": "UUID of the Open Context item to retrieve (e.g. \"013860d8-a5c9-48fc-d695-0ab6cc7c94b0\"). Obtain from opencontext.archaeology.search results (last path segment of the URI)."
},
"item_type": {
"enum": [
"subjects",
"projects",
"media",
"documents"
],
"type": "string",
"description": "Item category for routing to the correct endpoint. \"subjects\" for excavated objects/finds/contexts (default); \"projects\" for excavation projects; \"media\" for images/3D models; \"documents\" for field notes/reports. Matches the path segment in the item URI (e.g. opencontext.org/subjects/...)."
}
},
"additionalProperties": false
}Retrieve aggregated facet statistics for a search query across Open Context without downloading individual records. Returns: total matched record count, query time, earliest and latest date range in BCE/CE across all matches, geographic distribution (continent-level facets with counts, e.g. Asia 99K, Europe 89K), item type breakdown (Subjects of Observation, Media, Documents, Projects), top matching excavation projects with counts, and linked-data description facets (Creator, License, Subject, etc.). Use this tool to quickly understand the scope and geographic/temporal distribution of archaeological records matching a query before retrieving individual items with opencontext.archaeology.search. Pass an empty string to get global database statistics.
| Argument | Type | Description |
|---|---|---|
| query* | string | Search query to compute facets for (e.g. "Roman pottery", "Bronze Age"). Use an empty string "" to get facets across the entire Open Context database. |
| item_type | string | Optional filter to restrict facet computation to a specific item type. "subjects" for excavated objects; "media" for images/3D; "documents" for field notes; "all" or omit to aggregate across all types. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"description": "Search query to compute facets for (e.g. \"Roman pottery\", \"Bronze Age\"). Use an empty string \"\" to get facets across the entire Open Context database."
},
"item_type": {
"enum": [
"subjects",
"media",
"documents",
"all"
],
"type": "string",
"description": "Optional filter to restrict facet computation to a specific item type. \"subjects\" for excavated objects; \"media\" for images/3D; \"documents\" for field notes; \"all\" or omit to aggregate across all types."
}
},
"additionalProperties": false
}Search for archaeological excavation projects and collections published in Open Context. Returns a paginated list of matching projects with label, URI, publication date, and last update date. Each project represents a distinct archaeological investigation — from major multi-season excavations (e.g. Petra Great Temple Excavations, Murlo, Kenan Tepe) to regional surveys (e.g. Eastern Korinthia Archaeological Survey) and collaborative datasets (e.g. Digital Index of North American Archaeology — DINAA). Use the returned URI path segment as the UUID in opencontext.archaeology.detail (with item_type="projects") to retrieve full project metadata including description, geographic coverage, contributors, and linked data. Combine with opencontext.archaeology.search to find specific item types within a known project (not yet supported via API — use facets for project-based counts).
| Argument | Type | Description |
|---|---|---|
| rows | integer | Number of project results to return (1–50, default 10). |
| query* | string | Search query for archaeological excavation projects or collections (e.g. "Turkey", "Roman", "DINAA", "Petra"). Use an empty string "" to browse all available projects. |
| start | integer | Zero-based pagination offset for browsing large result sets (default 0). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"rows": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of project results to return (1–50, default 10)."
},
"query": {
"type": "string",
"description": "Search query for archaeological excavation projects or collections (e.g. \"Turkey\", \"Roman\", \"DINAA\", \"Petra\"). Use an empty string \"\" to browse all available projects."
},
"start": {
"type": "integer",
"minimum": 0,
"description": "Zero-based pagination offset for browsing large result sets (default 0)."
}
},
"additionalProperties": false
}Full-text search across Open Context 200,000+ published archaeological records, including excavated objects (pottery, tools, bones, coins), site contexts (trenches, rooms, floors), media (photographs, 3D models, drawings), and field documents. Returns paginated list of matching items with label, URI, excavation project, geographic context (site → region hierarchy), latitude/longitude, date range (BCE/CE), item category, and a text snippet. Filter by item type (subjects/media/documents) or search all at once. Data is CC BY 4.0 from 220+ published excavation projects worldwide, maintained by the Alexandria Archive Institute. Response includes items per page and start offset for pagination.
| Argument | Type | Description |
|---|---|---|
| rows | integer | Number of results to return per page (1–50, default 10). |
| query* | string | Full-text search query for archaeological items (e.g. "Roman pottery", "Bronze Age burial", "Petra temple", "obsidian flake"). Searches labels, descriptions, and project metadata across 200K+ records. |
| start | integer | Zero-based pagination offset. Use with rows to page through results (e.g. start=10, rows=10 to get the second page). |
| item_type | string | Filter by item category. "subjects" for excavated objects and contexts (default); "media" for images, 3D models, and videos; "documents" for field notes and reports; "all" to search across all types. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"rows": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results to return per page (1–50, default 10)."
},
"query": {
"type": "string",
"minLength": 1,
"description": "Full-text search query for archaeological items (e.g. \"Roman pottery\", \"Bronze Age burial\", \"Petra temple\", \"obsidian flake\"). Searches labels, descriptions, and project metadata across 200K+ records."
},
"start": {
"type": "integer",
"minimum": 0,
"description": "Zero-based pagination offset. Use with rows to page through results (e.g. start=10, rows=10 to get the second page)."
},
"item_type": {
"enum": [
"subjects",
"media",
"documents",
"all"
],
"type": "string",
"description": "Filter by item category. \"subjects\" for excavated objects and contexts (default); \"media\" for images, 3D models, and videos; \"documents\" for field notes and reports; \"all\" to search across all types."
}
},
"additionalProperties": false
}Full detail of one Dota 2 match — all 10 players with hero, items, K/D/A, gold/XP per minute, ability picks, team composition, game duration, winner. Heavy parse but rich data.
| Argument | Type | Description |
|---|---|---|
| match_id* | integer | Dota 2 match ID (64-bit integer from player_matches). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"match_id"
],
"properties": {
"match_id": {
"type": "integer",
"description": "Dota 2 match ID (64-bit integer from player_matches)."
}
},
"additionalProperties": false
}Recent match history for a Dota 2 player — array of matches with match_id, hero, kills/deaths/assists, duration, win/loss, party_size, game_mode, lobby_type. Sortable by date.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max matches to return (1-100, default 20). |
| account_id* | integer | Steam account ID (Dota 2 32-bit). Get from /api/search?q=playername. Example: 105248644 (Dendi). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"account_id"
],
"properties": {
"limit": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1,
"description": "Max matches to return (1-100, default 20)."
},
"account_id": {
"type": "integer",
"description": "Steam account ID (Dota 2 32-bit). Get from /api/search?q=playername. Example: 105248644 (Dendi)."
}
},
"additionalProperties": false
}Get a Dota 2 player's profile + summary stats by Steam Account ID — name, avatar, MMR estimate, total wins/losses, rank tier, last match time. Profile may be private (returns minimal info).
| Argument | Type | Description |
|---|---|---|
| account_id* | integer | Steam account ID (Dota 2 32-bit). Get from /api/search?q=playername. Example: 105248644 (Dendi). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"account_id"
],
"properties": {
"account_id": {
"type": "integer",
"description": "Steam account ID (Dota 2 32-bit). Get from /api/search?q=playername. Example: 105248644 (Dendi)."
}
},
"additionalProperties": false
}List professional Dota 2 teams with rating, wins/losses, last match time, logo URL, team_id, sponsor. Sorted by rating descending.
| Argument | Type | Description |
|---|---|---|
| _unused | string | Reserved for future filtering — not currently used. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"_unused": {
"type": "string",
"description": "Reserved for future filtering — not currently used."
}
},
"additionalProperties": false
}Search FDA 510(k) premarket clearance submissions — 175,000+ cleared medical devices. Returns k_number, device name, applicant, decision (SESE=cleared), decision date, product code, advisory committee specialty, and clearance type (Traditional/Special/Abbreviated). Filter by device name, k-number, applicant, or product code. A 510(k) clearance means FDA determined the device is substantially equivalent to a legally marketed predicate device. Useful for market research, competitive analysis, and regulatory pathway planning. Source: FDA CDRH 510(k) database, US public domain.
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of records to skip for pagination (default 0). |
| limit | integer | Number of records to return (1–99, default 10). |
| search | string | OpenFDA search expression using Lucene syntax. Single field: device_name:"pacemaker" or recall_status:"Ongoing". Combined: device_name:"insulin pump"+AND+recall_status:"Ongoing". Omit to return recent records sorted by date. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"skip": {
"type": "integer",
"minimum": 0,
"description": "Number of records to skip for pagination (default 0)."
},
"limit": {
"type": "integer",
"maximum": 99,
"minimum": 1,
"description": "Number of records to return (1–99, default 10)."
},
"search": {
"type": "string",
"description": "OpenFDA search expression using Lucene syntax. Single field: device_name:\"pacemaker\" or recall_status:\"Ongoing\". Combined: device_name:\"insulin pump\"+AND+recall_status:\"Ongoing\". Omit to return recent records sorted by date."
}
},
"additionalProperties": false
}Search FDA medical device classification database — 7,000+ product codes with risk class and regulatory requirements. Returns device name, product code, device class (1=low/exempt, 2=moderate/510k, 3=high/PMA), medical specialty, regulation number, definition, life-sustain/implant flags. Filter by device name, product code, device class, or specialty description. Device class determines the regulatory pathway: Class I (General Controls), Class II (510k), Class III (PMA). Source: FDA CDRH device classification database, US public domain.
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of records to skip for pagination (default 0). |
| limit | integer | Number of records to return (1–99, default 10). |
| search | string | OpenFDA search expression using Lucene syntax. Single field: device_name:"pacemaker" or recall_status:"Ongoing". Combined: device_name:"insulin pump"+AND+recall_status:"Ongoing". Omit to return recent records sorted by date. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"skip": {
"type": "integer",
"minimum": 0,
"description": "Number of records to skip for pagination (default 0)."
},
"limit": {
"type": "integer",
"maximum": 99,
"minimum": 1,
"description": "Number of records to return (1–99, default 10)."
},
"search": {
"type": "string",
"description": "OpenFDA search expression using Lucene syntax. Single field: device_name:\"pacemaker\" or recall_status:\"Ongoing\". Combined: device_name:\"insulin pump\"+AND+recall_status:\"Ongoing\". Omit to return recent records sorted by date."
}
},
"additionalProperties": false
}Search FDA MAUDE database for medical device adverse event reports — 25M+ records of device malfunctions, injuries, and deaths. Returns event type (Malfunction/Injury/Death), device brand name, device class, manufacturer, report date, event date, event location, and report source type. Filter using Lucene syntax: device.brand_name:"pacemaker" or event_type:"Death". MAUDE (Manufacturer and User Facility Device Experience) is the primary FDA device safety surveillance database. Source: FDA MAUDE database, US public domain.
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of records to skip for pagination (default 0). |
| limit | integer | Number of records to return (1–99, default 10). |
| search | string | OpenFDA search expression using Lucene syntax. Single field: device_name:"pacemaker" or recall_status:"Ongoing". Combined: device_name:"insulin pump"+AND+recall_status:"Ongoing". Omit to return recent records sorted by date. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"skip": {
"type": "integer",
"minimum": 0,
"description": "Number of records to skip for pagination (default 0)."
},
"limit": {
"type": "integer",
"maximum": 99,
"minimum": 1,
"description": "Number of records to return (1–99, default 10)."
},
"search": {
"type": "string",
"description": "OpenFDA search expression using Lucene syntax. Single field: device_name:\"pacemaker\" or recall_status:\"Ongoing\". Combined: device_name:\"insulin pump\"+AND+recall_status:\"Ongoing\". Omit to return recent records sorted by date."
}
},
"additionalProperties": false
}Search FDA medical device recall records — 58,000+ recalls across all device types since 1976. Returns recall status (Ongoing/Terminated/Completed), reason for recall, affected product descriptions, recalling firm, distribution pattern, corrective action taken, and product codes. Filter by device name, firm, status, or date using Lucene syntax: device_name:"insulin pump" or recall_status:"Ongoing". Essential for medical device safety research, regulatory compliance, and patient risk assessment. Source: FDA CFRES database, US public domain.
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of records to skip for pagination (default 0). |
| limit | integer | Number of records to return (1–99, default 10). |
| search | string | OpenFDA search expression using Lucene syntax. Single field: device_name:"pacemaker" or recall_status:"Ongoing". Combined: device_name:"insulin pump"+AND+recall_status:"Ongoing". Omit to return recent records sorted by date. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"skip": {
"type": "integer",
"minimum": 0,
"description": "Number of records to skip for pagination (default 0)."
},
"limit": {
"type": "integer",
"maximum": 99,
"minimum": 1,
"description": "Number of records to return (1–99, default 10)."
},
"search": {
"type": "string",
"description": "OpenFDA search expression using Lucene syntax. Single field: device_name:\"pacemaker\" or recall_status:\"Ongoing\". Combined: device_name:\"insulin pump\"+AND+recall_status:\"Ongoing\". Omit to return recent records sorted by date."
}
},
"additionalProperties": false
}Get real-time air quality conditions for any global location using Copernicus CAMS data. Returns PM10, PM2.5 (μg/m³), carbon monoxide, nitrogen dioxide, sulphur dioxide, ozone, aerosol optical depth, dust, UV index, ammonia, European AQI (0–500 CAQI scale), and US AQI (0–500+ EPA scale). No API key required. Coverage: global, hourly updates. Open-source Open-Meteo — CC BY 4.0.
| Argument | Type | Description |
|---|---|---|
| latitude* | number | Latitude of the location in decimal degrees (e.g. 48.8566 for Paris) |
| timezone | string | IANA timezone name for returned timestamps (e.g. "Europe/Paris", "America/New_York"). Defaults to UTC. |
| longitude* | number | Longitude of the location in decimal degrees (e.g. 2.3522 for Paris) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude"
],
"properties": {
"latitude": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude of the location in decimal degrees (e.g. 48.8566 for Paris)"
},
"timezone": {
"type": "string",
"default": "UTC",
"description": "IANA timezone name for returned timestamps (e.g. \"Europe/Paris\", \"America/New_York\"). Defaults to UTC."
},
"longitude": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude of the location in decimal degrees (e.g. 2.3522 for Paris)"
}
},
"additionalProperties": false
}Get hourly air quality forecast (1–7 days ahead) for any global location. Returns time-series arrays for selected pollutants: PM10, PM2.5, NO2, ozone, SO2, CO, aerosol optical depth, dust, UV index, ammonia, European AQI, US AQI. Useful for trip planning, outdoor event scheduling, or health risk monitoring. Copernicus CAMS model, no auth. Open-Meteo CC BY 4.0.
| Argument | Type | Description |
|---|---|---|
| latitude* | number | Latitude of the location in decimal degrees (e.g. 48.8566 for Paris) |
| timezone | string | IANA timezone name for returned timestamps (e.g. "Europe/Paris", "America/New_York"). Defaults to UTC. |
| longitude* | number | Longitude of the location in decimal degrees (e.g. 2.3522 for Paris) |
| pollutants | string | Comma-separated pollutant variables to return. Available: pm10, pm2_5, carbon_monoxide, nitrogen_dioxide, sulphur_dioxide, ozone, aerosol_optical_depth, dust, uv_index, ammonia, european_aqi, us_aqi. Defaults to pm10,pm2_5,nitrogen_dioxide,ozone,european_aqi,us_aqi. |
| forecast_days | integer | Number of days to forecast (1–7). Defaults to 3. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude"
],
"properties": {
"latitude": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude of the location in decimal degrees (e.g. 48.8566 for Paris)"
},
"timezone": {
"type": "string",
"default": "UTC",
"description": "IANA timezone name for returned timestamps (e.g. \"Europe/Paris\", \"America/New_York\"). Defaults to UTC."
},
"longitude": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude of the location in decimal degrees (e.g. 2.3522 for Paris)"
},
"pollutants": {
"type": "string",
"description": "Comma-separated pollutant variables to return. Available: pm10, pm2_5, carbon_monoxide, nitrogen_dioxide, sulphur_dioxide, ozone, aerosol_optical_depth, dust, uv_index, ammonia, european_aqi, us_aqi. Defaults to pm10,pm2_5,nitrogen_dioxide,ozone,european_aqi,us_aqi."
},
"forecast_days": {
"type": "integer",
"default": 3,
"maximum": 7,
"minimum": 1,
"description": "Number of days to forecast (1–7). Defaults to 3."
}
},
"additionalProperties": false
}Retrieve hourly historical air quality data for a date range at any global location. Returns PM10, PM2.5, ozone, nitrogen dioxide, European AQI, US AQI and other pollutants. Historical data available from 2022-01-01. Maximum query range ~1 year per call. Copernicus CAMS reanalysis, no auth. Open-Meteo CC BY 4.0.
| Argument | Type | Description |
|---|---|---|
| end_date* | string | End date in YYYY-MM-DD format (e.g. "2024-01-31"). Maximum range is ~1 year per query. |
| latitude* | number | Latitude of the location in decimal degrees (e.g. 48.8566 for Paris) |
| timezone | string | IANA timezone name for returned timestamps (e.g. "Europe/Paris", "America/New_York"). Defaults to UTC. |
| longitude* | number | Longitude of the location in decimal degrees (e.g. 2.3522 for Paris) |
| pollutants | string | Comma-separated pollutant variables to return. Available: pm10, pm2_5, carbon_monoxide, nitrogen_dioxide, sulphur_dioxide, ozone, aerosol_optical_depth, dust, uv_index, ammonia, european_aqi, us_aqi. Defaults to pm10,pm2_5,nitrogen_dioxide,ozone,european_aqi,us_aqi. |
| start_date* | string | Start date in YYYY-MM-DD format (e.g. "2024-01-01"). Historical data from 2022. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude",
"start_date",
"end_date"
],
"properties": {
"end_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "End date in YYYY-MM-DD format (e.g. \"2024-01-31\"). Maximum range is ~1 year per query."
},
"latitude": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude of the location in decimal degrees (e.g. 48.8566 for Paris)"
},
"timezone": {
"type": "string",
"default": "UTC",
"description": "IANA timezone name for returned timestamps (e.g. \"Europe/Paris\", \"America/New_York\"). Defaults to UTC."
},
"longitude": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude of the location in decimal degrees (e.g. 2.3522 for Paris)"
},
"pollutants": {
"type": "string",
"description": "Comma-separated pollutant variables to return. Available: pm10, pm2_5, carbon_monoxide, nitrogen_dioxide, sulphur_dioxide, ozone, aerosol_optical_depth, dust, uv_index, ammonia, european_aqi, us_aqi. Defaults to pm10,pm2_5,nitrogen_dioxide,ozone,european_aqi,us_aqi."
},
"start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Start date in YYYY-MM-DD format (e.g. \"2024-01-01\"). Historical data from 2022."
}
},
"additionalProperties": false
}Get current and forecast pollen concentrations (grains/m³) for any global location. Returns alder, birch, grass, mugwort, olive, and ragweed pollen — the six key allergens. Includes current reading plus hourly forecast for 1–7 days. Useful for allergy apps, outdoor scheduling, and health risk agents. Copernicus CAMS pollen model, no auth. Open-Meteo CC BY 4.0.
| Argument | Type | Description |
|---|---|---|
| latitude* | number | Latitude of the location in decimal degrees (e.g. 48.8566 for Paris) |
| timezone | string | IANA timezone name for returned timestamps (e.g. "Europe/Paris", "America/New_York"). Defaults to UTC. |
| longitude* | number | Longitude of the location in decimal degrees (e.g. 2.3522 for Paris) |
| forecast_days | integer | Number of forecast days to include in hourly pollen data (1–7). Defaults to 3. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude"
],
"properties": {
"latitude": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude of the location in decimal degrees (e.g. 48.8566 for Paris)"
},
"timezone": {
"type": "string",
"default": "UTC",
"description": "IANA timezone name for returned timestamps (e.g. \"Europe/Paris\", \"America/New_York\"). Defaults to UTC."
},
"longitude": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude of the location in decimal degrees (e.g. 2.3522 for Paris)"
},
"forecast_days": {
"type": "integer",
"default": 3,
"maximum": 7,
"minimum": 1,
"description": "Number of forecast days to include in hourly pollen data (1–7). Defaults to 3."
}
},
"additionalProperties": false
}Get full metadata and sensor list for a specific OpenSenseMap sensor station by its box ID. Returns station name, coordinates, exposure type, hardware model, creation date, and a complete list of all sensors with their IDs, titles, units, sensor types, and latest measurement values. Use this to discover the sensor IDs needed for sensor_timeseries calls. A station typically has 3–12 sensors covering combinations of: temperature (°C), relative humidity (%), air pressure (hPa), PM2.5 (µg/m³), PM10 (µg/m³), UV intensity (µW/cm²), illuminance (lx), CO₂ (ppm), and more. Obtain the box_id from box_search results. Source: OpenSenseMap, PDDL 1.0 public domain.
| Argument | Type | Description |
|---|---|---|
| box_id* | string | OpenSenseMap station (box) ID — the 24-character MongoDB ObjectId from box_search results (e.g. "578207d56fea661300861f3b"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"box_id"
],
"properties": {
"box_id": {
"type": "string",
"description": "OpenSenseMap station (box) ID — the 24-character MongoDB ObjectId from box_search results (e.g. \"578207d56fea661300861f3b\")."
}
},
"additionalProperties": false
}Search OpenSenseMap crowdsourced environmental sensor stations by location, name, group tag, exposure type, or measured phenomenon. Returns up to 100 stations with their sensors and latest measurement values. OpenSenseMap hosts 15,000+ community-operated senseBox stations worldwide measuring PM2.5, temperature, humidity, UV, pressure, CO₂, and more. Location search: provide latitude+longitude to find stations within max_distance meters (default 5 km). Name search: pass name to filter by station name substring (e.g. "berlin", "school"). Phenomenon filter: use "Temperatur", "PM2.5", "rel. Luftfeuchte", "Luftdruck", or "UV-Intensität" to find stations measuring a specific sensor type. Exposure filter: "outdoor" for weather/air-quality monitors, "indoor" for home sensors. Each result includes station ID (use with box_detail or sensors_latest), coordinates, sensor list, and last measurement values. Data is PDDL 1.0 public domain, no attribution required. Source: https://opensensemap.org
| Argument | Type | Description |
|---|---|---|
| name | string | Filter stations by name substring (case-insensitive). Example: "berlin" returns all stations with "berlin" in their name. |
| limit | integer | Maximum number of stations to return (1–100, default 20). |
| exposure | string | Filter stations by sensor placement: "outdoor" for weather/air-quality monitors, "indoor" for home environment sensors, "mobile" for moving sensors. |
| grouptag | string | Filter stations by group tag. Tags are set by station owners to identify communities or projects (e.g. "luftdaten", "sensebox", "airrohr"). |
| latitude | number | Latitude of the search center point (WGS84, e.g. 52.52 for Berlin). Required when longitude is provided. |
| longitude | number | Longitude of the search center point (WGS84, e.g. 13.40 for Berlin). Required when latitude is provided. |
| phenomenon | string | Filter stations that measure a specific phenomenon by sensor title (e.g. "Temperatur", "PM2.5", "rel. Luftfeuchte", "Luftdruck", "UV"). Case-insensitive. |
| max_distance | integer | Maximum search radius in meters when using lat/lng search (default 5000, i.e. 5 km). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"name": {
"type": "string",
"description": "Filter stations by name substring (case-insensitive). Example: \"berlin\" returns all stations with \"berlin\" in their name."
},
"limit": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1,
"description": "Maximum number of stations to return (1–100, default 20)."
},
"exposure": {
"enum": [
"indoor",
"outdoor",
"mobile",
"unknown"
],
"type": "string",
"description": "Filter stations by sensor placement: \"outdoor\" for weather/air-quality monitors, \"indoor\" for home environment sensors, \"mobile\" for moving sensors."
},
"grouptag": {
"type": "string",
"description": "Filter stations by group tag. Tags are set by station owners to identify communities or projects (e.g. \"luftdaten\", \"sensebox\", \"airrohr\")."
},
"latitude": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude of the search center point (WGS84, e.g. 52.52 for Berlin). Required when longitude is provided."
},
"longitude": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude of the search center point (WGS84, e.g. 13.40 for Berlin). Required when latitude is provided."
},
"phenomenon": {
"type": "string",
"description": "Filter stations that measure a specific phenomenon by sensor title (e.g. \"Temperatur\", \"PM2.5\", \"rel. Luftfeuchte\", \"Luftdruck\", \"UV\"). Case-insensitive."
},
"max_distance": {
"type": "integer",
"default": 5000,
"description": "Maximum search radius in meters when using lat/lng search (default 5000, i.e. 5 km).",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Get the latest measurement value for every sensor on an OpenSenseMap station in a single call. Returns all sensor readings simultaneously: temperature, humidity, pressure, PM2.5, PM10, UV, CO₂, and any other sensors installed on the station. Each reading includes sensor ID, title, unit, sensor type, current value, and timestamp of measurement. Sensors with no recent data show last_value: null. Use box_search or box_detail to find the box_id first, then use sensor IDs from results with sensor_timeseries for historical data. Ideal for real-time environmental monitoring dashboards. Source: OpenSenseMap, PDDL 1.0 public domain.
| Argument | Type | Description |
|---|---|---|
| box_id* | string | OpenSenseMap station (box) ID — the 24-character MongoDB ObjectId from box_search results. Returns the latest measurement value for every sensor on this station. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"box_id"
],
"properties": {
"box_id": {
"type": "string",
"description": "OpenSenseMap station (box) ID — the 24-character MongoDB ObjectId from box_search results. Returns the latest measurement value for every sensor on this station."
}
},
"additionalProperties": false
}Retrieve historical time-series measurements for a specific sensor on an OpenSenseMap station. Returns up to 10,000 measurement points (value + ISO 8601 timestamp) in reverse-chronological order (newest first). Specify box_id and sensor_id (both from box_search or sensors_latest), and optionally narrow the window with from_date/to_date in ISO 8601 format. Sensors on active stations record every 1–10 minutes, so a 24-hour window for a station with 5-min intervals yields ~288 data points. Useful for charting pollution spikes, computing daily averages, building climate datasets, or triggering alerts on threshold crossings. Supports any sensor type: PM2.5 (µg/m³), temperature (°C), relative humidity (%), air pressure (hPa), UV intensity, CO₂ (ppm), and more. Source: OpenSenseMap, PDDL 1.0 public domain.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of measurements to return, newest first (1–10000, default 100). |
| box_id* | string | OpenSenseMap station (box) ID — the 24-character MongoDB ObjectId from box_search or box_detail results (e.g. "578207d56fea661300861f3b"). |
| to_date | string | End of time range in ISO 8601 format (e.g. "2024-01-02T00:00:00.000Z"). Defaults to now. |
| from_date | string | Start of time range in ISO 8601 format (e.g. "2024-01-01T00:00:00.000Z"). Defaults to 2 days ago. |
| sensor_id* | string | Sensor ID within the station — the 24-character MongoDB ObjectId found in sensors_latest or box_detail sensor list (e.g. "578207d56fea661300861f3d"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"box_id",
"sensor_id"
],
"properties": {
"limit": {
"type": "integer",
"default": 100,
"maximum": 10000,
"minimum": 1,
"description": "Maximum number of measurements to return, newest first (1–10000, default 100)."
},
"box_id": {
"type": "string",
"description": "OpenSenseMap station (box) ID — the 24-character MongoDB ObjectId from box_search or box_detail results (e.g. \"578207d56fea661300861f3b\")."
},
"to_date": {
"type": "string",
"description": "End of time range in ISO 8601 format (e.g. \"2024-01-02T00:00:00.000Z\"). Defaults to now."
},
"from_date": {
"type": "string",
"description": "Start of time range in ISO 8601 format (e.g. \"2024-01-01T00:00:00.000Z\"). Defaults to 2 days ago."
},
"sensor_id": {
"type": "string",
"description": "Sensor ID within the station — the 24-character MongoDB ObjectId found in sensors_latest or box_detail sensor list (e.g. \"578207d56fea661300861f3d\")."
}
},
"additionalProperties": false
}Get the current real-time ADS-B state vector for a single aircraft identified by its ICAO 24-bit hex address (e.g. 3c6444). Returns position, altitude, speed, heading, vertical rate, squawk, origin country, and whether on ground. If the aircraft is not currently tracked (landed, out of range, or transponder off) the response includes found=false. ICAO24 addresses can be looked up from aircraft registrations (e.g. N-number, D- prefix). Useful for tracking a specific flight in real time. Source: OpenSky Network — opensky-network.org. No auth, open access.
| Argument | Type | Description |
|---|---|---|
| icao24* | string | ICAO 24-bit hex address of the aircraft transponder (e.g. 3c6444 for a Lufthansa aircraft) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"icao24"
],
"properties": {
"icao24": {
"type": "string",
"pattern": "^[0-9a-f]{6}$",
"description": "ICAO 24-bit hex address of the aircraft transponder (e.g. 3c6444 for a Lufthansa aircraft)"
}
},
"additionalProperties": false
}Retrieve the flight trajectory (sequence of GPS waypoints) for a specific aircraft identified by its ICAO24 hex address. Each waypoint contains Unix timestamp, latitude, longitude, barometric altitude (meters), true track angle, and on-ground flag. Use time=0 or omit for the current active flight track. Requires the aircraft to be actively tracked by the OpenSky network. Useful for reconstructing a flight path, computing distance flown, or detecting airport arrivals and departures. Source: OpenSky Network — opensky-network.org. No auth, open access.
| Argument | Type | Description |
|---|---|---|
| time | integer | Unix timestamp for which to retrieve the track. Use 0 or omit for the current flight trajectory. |
| icao24* | string | ICAO 24-bit hex address of the aircraft (e.g. 3ffc33). Must be an actively tracked flight. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"icao24"
],
"properties": {
"time": {
"type": "integer",
"description": "Unix timestamp for which to retrieve the track. Use 0 or omit for the current flight trajectory."
},
"icao24": {
"type": "string",
"pattern": "^[0-9a-f]{6}$",
"description": "ICAO 24-bit hex address of the aircraft (e.g. 3ffc33). Must be an actively tracked flight."
}
},
"additionalProperties": false
}Retrieve real-time ADS-B state vectors for all aircraft currently within a geographic bounding box. Returns ICAO24 transponder address, callsign, origin country, position (lat/lon), barometric altitude, velocity, heading, vertical rate, squawk code, and position source (ADS-B/MLAT/FLARM). Data is updated every ~10 seconds from the OpenSky community network of ~5,000 ADS-B receivers. Specify lamin/lomin/lamax/lomax in decimal degrees. Limit per call: 1,000 aircraft (use smaller bbox for dense airspace). Source: OpenSky Network — opensky-network.org. No auth, open access.
| Argument | Type | Description |
|---|---|---|
| lamax* | number | Maximum latitude of the bounding box in decimal degrees (e.g. 55.0) |
| lamin* | number | Minimum latitude of the bounding box in decimal degrees (e.g. 47.0) |
| limit | integer | Maximum number of aircraft to return (default 100, max 1000) |
| lomax* | number | Maximum longitude of the bounding box in decimal degrees (e.g. 15.0) |
| lomin* | number | Minimum longitude of the bounding box in decimal degrees (e.g. 5.0) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lamin",
"lomin",
"lamax",
"lomax"
],
"properties": {
"lamax": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Maximum latitude of the bounding box in decimal degrees (e.g. 55.0)"
},
"lamin": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Minimum latitude of the bounding box in decimal degrees (e.g. 47.0)"
},
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Maximum number of aircraft to return (default 100, max 1000)"
},
"lomax": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Maximum longitude of the bounding box in decimal degrees (e.g. 15.0)"
},
"lomin": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Minimum longitude of the bounding box in decimal degrees (e.g. 5.0)"
}
},
"additionalProperties": false
}Get real-time ADS-B state vectors for all aircraft currently registered to a specific origin country (e.g. Germany, United States). Filters the global ADS-B feed by the aircraft's registered country of origin from ICAO24 address blocks. Optionally narrow the geographic area using a bounding box (lamin/lomin/lamax/lomax). Returns ICAO24, callsign, position, altitude, velocity, and heading for each matching aircraft. Useful for counting or mapping the live air traffic of a specific country. Source: OpenSky Network — opensky-network.org. No auth, open access.
| Argument | Type | Description |
|---|---|---|
| lamax | number | Optional maximum latitude to narrow the search area (decimal degrees) |
| lamin | number | Optional minimum latitude to narrow the search area (decimal degrees) |
| limit | integer | Maximum number of matching aircraft to return (default 100, max 500) |
| lomax | number | Optional maximum longitude to narrow the search area (decimal degrees) |
| lomin | number | Optional minimum longitude to narrow the search area (decimal degrees) |
| country* | string | Origin country name to filter aircraft by (e.g. Germany, United States, France). Case-insensitive. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country"
],
"properties": {
"lamax": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Optional maximum latitude to narrow the search area (decimal degrees)"
},
"lamin": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Optional minimum latitude to narrow the search area (decimal degrees)"
},
"limit": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Maximum number of matching aircraft to return (default 100, max 500)"
},
"lomax": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Optional maximum longitude to narrow the search area (decimal degrees)"
},
"lomin": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Optional minimum longitude to narrow the search area (decimal degrees)"
},
"country": {
"type": "string",
"description": "Origin country name to filter aircraft by (e.g. Germany, United States, France). Case-insensitive."
}
},
"additionalProperties": false
}Get full details for a specific US state bill by jurisdiction, session, and bill identifier. Returns complete legislative history including all actions (committee referrals, readings, amendments, final votes), sponsor information, abstract/summary, and roll-call vote counts. Obtain jurisdiction and session from bills_search results. Example: jurisdiction="ca", session="20252026", bill_id="SB 700".
| Argument | Type | Description |
|---|---|---|
| bill_id* | string | Bill identifier within the session (e.g. "SB 700", "HB 1234", "SR 5"). Obtain from bills_search results. |
| session* | string | Legislative session identifier the bill belongs to (e.g. "20252026", "2024"). Obtain from bills_search results. |
| jurisdiction* | string | State abbreviation where the bill was introduced (e.g. "ca" for California, "ny" for New York). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"jurisdiction",
"session",
"bill_id"
],
"properties": {
"bill_id": {
"type": "string",
"description": "Bill identifier within the session (e.g. \"SB 700\", \"HB 1234\", \"SR 5\"). Obtain from bills_search results."
},
"session": {
"type": "string",
"description": "Legislative session identifier the bill belongs to (e.g. \"20252026\", \"2024\"). Obtain from bills_search results."
},
"jurisdiction": {
"type": "string",
"description": "State abbreviation where the bill was introduced (e.g. \"ca\" for California, \"ny\" for New York)."
}
},
"additionalProperties": false
}Search US state legislative bills by jurisdiction, keyword, session, or subject. Returns bill summaries with identifier, title, latest action, passage date, and link to the OpenStates detail page. Covers all 50 US states and territories. Filter by session (e.g. "20252026"), classification (bill/resolution), or subject tag. Use bills_detail to fetch full text, sponsors, and voting records.
| Argument | Type | Description |
|---|---|---|
| q | string | Full-text keyword search across bill titles and text (e.g. "climate change", "education funding"). |
| page | integer | Page number for pagination (default 1). |
| session | string | Legislative session identifier to filter bills (e.g. "20252026" for 2025-2026 session). Format varies by state. |
| subject | string | Filter by subject/topic tag assigned to the bill (e.g. "Education", "Environment", "Health Care"). |
| per_page | integer | Number of results per page (1–50, default 20). |
| jurisdiction | string | State or jurisdiction abbreviation to search bills in (e.g. "ca", "tx", "ny"). Required unless q is provided. |
| classification | string | Filter by bill type classification (e.g. "bill", "resolution", "joint resolution", "concurrent resolution"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"q": {
"type": "string",
"description": "Full-text keyword search across bill titles and text (e.g. \"climate change\", \"education funding\")."
},
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)."
},
"session": {
"type": "string",
"description": "Legislative session identifier to filter bills (e.g. \"20252026\" for 2025-2026 session). Format varies by state."
},
"subject": {
"type": "string",
"description": "Filter by subject/topic tag assigned to the bill (e.g. \"Education\", \"Environment\", \"Health Care\")."
},
"per_page": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results per page (1–50, default 20)."
},
"jurisdiction": {
"type": "string",
"description": "State or jurisdiction abbreviation to search bills in (e.g. \"ca\", \"tx\", \"ny\"). Required unless q is provided."
},
"classification": {
"type": "string",
"description": "Filter by bill type classification (e.g. \"bill\", \"resolution\", \"joint resolution\", \"concurrent resolution\")."
}
},
"additionalProperties": false
}List legislative committees for a US state, optionally filtered by chamber (upper/lower) or type (committee/subcommittee). Returns committee name, chamber, jurisdiction, and parent committee for subcommittees. Useful for identifying which committee oversees a policy area or finding where a bill is assigned. Use jurisdiction codes such as "ca", "tx", "ny".
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default 1). |
| chamber | string | Filter by chamber (e.g. "upper" for Senate, "lower" for House/Assembly, "legislature" for joint committees). |
| per_page | integer | Number of results per page (1–50, default 20). |
| jurisdiction | string | State or jurisdiction abbreviation to list committees for (e.g. "ca", "tx", "ny"). |
| classification | string | Filter by committee classification (e.g. "committee", "subcommittee"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)."
},
"chamber": {
"type": "string",
"description": "Filter by chamber (e.g. \"upper\" for Senate, \"lower\" for House/Assembly, \"legislature\" for joint committees)."
},
"per_page": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results per page (1–50, default 20)."
},
"jurisdiction": {
"type": "string",
"description": "State or jurisdiction abbreviation to list committees for (e.g. \"ca\", \"tx\", \"ny\")."
},
"classification": {
"type": "string",
"description": "Filter by committee classification (e.g. \"committee\", \"subcommittee\")."
}
},
"additionalProperties": false
}Search current US state legislators across all 50 states. Filter by state jurisdiction, name, political party, or district. Returns legislator profiles including name, party affiliation, chamber role (Senator/Representative/Delegate), district, jurisdiction, and profile image. Powered by OpenStates (open-data, CC-licensed). Use jurisdiction codes such as "ca" (California), "tx" (Texas), "ny" (New York).
| Argument | Type | Description |
|---|---|---|
| name | string | Search legislators by full or partial name (e.g. "Pelosi", "Nancy Pelosi"). Case-insensitive substring match. |
| page | integer | Page number for pagination (default 1). |
| party | string | Filter by political party affiliation (e.g. "Democratic", "Republican", "Independent"). |
| district | string | Filter by legislative district number or name (e.g. "12", "Senate District 5"). |
| per_page | integer | Number of results per page (1–50, default 20). |
| jurisdiction | string | State or jurisdiction abbreviation to filter legislators (e.g. "ca" for California, "tx" for Texas, "ny" for New York). Required unless name is provided. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"name": {
"type": "string",
"description": "Search legislators by full or partial name (e.g. \"Pelosi\", \"Nancy Pelosi\"). Case-insensitive substring match."
},
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)."
},
"party": {
"type": "string",
"description": "Filter by political party affiliation (e.g. \"Democratic\", \"Republican\", \"Independent\")."
},
"district": {
"type": "string",
"description": "Filter by legislative district number or name (e.g. \"12\", \"Senate District 5\")."
},
"per_page": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results per page (1–50, default 20)."
},
"jurisdiction": {
"type": "string",
"description": "State or jurisdiction abbreviation to filter legislators (e.g. \"ca\" for California, \"tx\" for Texas, \"ny\" for New York). Required unless name is provided."
}
},
"additionalProperties": false
}List all 24 trivia categories available in the Open Trivia Database with their numeric IDs. Categories include General Knowledge (9), Entertainment: Books (10), Film (11), Music (12), Musicals & Theatres (13), Television (14), Video Games (15), Board Games (16), Science & Nature (17), Computers (18), Mathematics (19), Mythology (20), Sports (21), Geography (22), History (23), Politics (24), Art (25), Celebrities (26), Animals (27), Vehicles (28), Comics (29), Gadgets (30), Japanese Anime & Manga (31), Cartoon & Animations (32). Use returned IDs as the 'category' parameter in opentdb.trivia.questions. Source: opentdb.com — CC BY-SA 4.0, free unlimited.
| Argument | Type | Description |
|---|---|---|
| _placeholder | string | No parameters required — returns all 24 trivia categories with their numeric IDs. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"_placeholder": {
"type": "string",
"description": "No parameters required — returns all 24 trivia categories with their numeric IDs."
}
},
"additionalProperties": false
}Get the number of verified trivia questions available in a specific category, broken down by difficulty (easy, medium, hard). Useful for checking availability before requesting questions with opentdb.trivia.questions — if you request more questions than exist in a filtered query, the API returns empty results. Example: category 9 (General Knowledge) has ~469 verified questions. Source: opentdb.com — CC BY-SA 4.0, free unlimited.
| Argument | Type | Description |
|---|---|---|
| category_id* | integer | Category ID (9–32). Use opentdb.trivia.categories to list all IDs. Examples: 9=General Knowledge, 17=Science & Nature, 21=Sports, 23=History. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"category_id"
],
"properties": {
"category_id": {
"type": "integer",
"maximum": 32,
"minimum": 9,
"description": "Category ID (9–32). Use opentdb.trivia.categories to list all IDs. Examples: 9=General Knowledge, 17=Science & Nature, 21=Sports, 23=History."
}
},
"additionalProperties": false
}Get global question counts across the entire Open Trivia Database: total questions, verified (live and servable), pending (under review), and rejected, with a per-category breakdown. Useful for understanding database coverage — typically 5000+ verified questions spread across 24 categories. Note: only verified questions are returned by opentdb.trivia.questions. Source: opentdb.com — CC BY-SA 4.0, free unlimited.
| Argument | Type | Description |
|---|---|---|
| _placeholder | string | No parameters required — returns global question counts and per-category breakdown. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"_placeholder": {
"type": "string",
"description": "No parameters required — returns global question counts and per-category breakdown."
}
},
"additionalProperties": false
}Fetch random trivia questions from the Open Trivia Database. Returns up to 50 questions per call with category, difficulty, correct answer, incorrect answers, and a shuffled all_answers list for quiz presentation. HTML entities are decoded automatically. Filter by category (use opentdb.trivia.categories to get IDs), difficulty (easy/medium/hard), and type (multiple-choice or True/False). Examples: 10 general knowledge questions (no params), 5 hard science questions (category=17, amount=5, difficulty=hard), True/False history questions (category=23, type=boolean). Source: opentdb.com — CC BY-SA 4.0, user-contributed, 5000+ verified questions, 24 categories, free unlimited.
| Argument | Type | Description |
|---|---|---|
| type | string | Question type: multiple (4 choices) or boolean (True/False). Omit for both types. |
| amount | integer | Number of trivia questions to return (default 10, max 50). |
| category | integer | Category ID to filter by (e.g. 9=General Knowledge, 17=Science & Nature, 21=Sports, 23=History). Use opentdb.trivia.categories to list all 24 IDs. |
| difficulty | string | Difficulty filter: easy, medium, or hard. Omit for mixed difficulty. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"type": {
"enum": [
"multiple",
"boolean"
],
"type": "string",
"description": "Question type: multiple (4 choices) or boolean (True/False). Omit for both types."
},
"amount": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of trivia questions to return (default 10, max 50)."
},
"category": {
"type": "integer",
"description": "Category ID to filter by (e.g. 9=General Knowledge, 17=Science & Nature, 21=Sports, 23=History). Use opentdb.trivia.categories to list all 24 IDs."
},
"difficulty": {
"enum": [
"easy",
"medium",
"hard"
],
"type": "string",
"description": "Difficulty filter: easy, medium, or hard. Omit for mixed difficulty."
}
},
"additionalProperties": false
}Search the OpenTopography catalog for raster Digital Elevation Model (DEM) datasets covering a specified bounding box. Returns community-contributed and curated DEM datasets beyond the standard global datasets — including specialised regional surveys, UAV-derived models, and research DEMs. Returns dataset name, ID, DOI, format, creation date, and coverage bounds. Complements the standard elevation query tools by exposing niche high-resolution datasets. Source: OpenTopography catalog, CC BY 4.0, free registration (5K req/day).
| Argument | Type | Description |
|---|---|---|
| max_lat* | number | Northern boundary of search area in decimal degrees (-90 to 90) |
| max_lon* | number | Eastern boundary of search area in decimal degrees (-180 to 180) |
| min_lat* | number | Southern boundary of search area in decimal degrees (-90 to 90) |
| min_lon* | number | Western boundary of search area in decimal degrees (-180 to 180) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"min_lon",
"min_lat",
"max_lon",
"max_lat"
],
"properties": {
"max_lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Northern boundary of search area in decimal degrees (-90 to 90)"
},
"max_lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Eastern boundary of search area in decimal degrees (-180 to 180)"
},
"min_lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Southern boundary of search area in decimal degrees (-90 to 90)"
},
"min_lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Western boundary of search area in decimal degrees (-180 to 180)"
}
},
"additionalProperties": false
}Search the OpenTopography catalog for high-resolution LiDAR point cloud datasets covering a specified bounding box. LiDAR datasets provide centimetre-to-metre resolution 3D terrain data, primarily from USGS 3DEP surveys across the US. Returns dataset name, OpenTopography ID, DOI URL, acquisition date, spatial coverage bounds, and description. Essential for discovering available high-resolution terrain data before requesting downloads. Source: OpenTopography catalog, CC BY 4.0, free registration (5K req/day).
| Argument | Type | Description |
|---|---|---|
| max_lat* | number | Northern boundary of search area in decimal degrees (-90 to 90) |
| max_lon* | number | Eastern boundary of search area in decimal degrees (-180 to 180) |
| min_lat* | number | Southern boundary of search area in decimal degrees (-90 to 90) |
| min_lon* | number | Western boundary of search area in decimal degrees (-180 to 180) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"min_lon",
"min_lat",
"max_lon",
"max_lat"
],
"properties": {
"max_lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Northern boundary of search area in decimal degrees (-90 to 90)"
},
"max_lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Eastern boundary of search area in decimal degrees (-180 to 180)"
},
"min_lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Southern boundary of search area in decimal degrees (-90 to 90)"
},
"min_lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Western boundary of search area in decimal degrees (-180 to 180)"
}
},
"additionalProperties": false
}Get terrain elevation statistics (min, max, mean, range in metres) for a bounding box area using global DEM datasets. Maximum bounding box: 0.5° × 0.5° (~55km × 55km at equator). Returns min_m, max_m, mean_m, range_m, cell_count, valid_cells, nodata_cells, and resolution. Useful for hydrological analysis, terrain characterisation, and infrastructure siting. Source: OpenTopography / USGS 3DEP, CC BY 4.0, free registration (5K req/day).
| Argument | Type | Description |
|---|---|---|
| east* | number | Eastern boundary of bounding box in decimal degrees (must be > west) |
| west* | number | Western boundary of bounding box in decimal degrees (-180 to 180) |
| north* | number | Northern boundary of bounding box in decimal degrees (must be > south) |
| south* | number | Southern boundary of bounding box in decimal degrees (-90 to 90) |
| dataset | string | Global DEM dataset to query. SRTMGL1 = NASA SRTM 30m (default, global). COP30 = Copernicus 30m (high accuracy). AW3D30 = ALOS World 3D 30m. NASADEM = NASA 30m reprocessed SRTM. SRTMGL3 = SRTM 90m. COP90 = Copernicus 90m. SRTM15Plus = 500m global+bathymetry. EU_DTM = European 30m. GEBCOIceTopo/GEBCOSubIceTopo = GEBCO 500m ice/sub-ice. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"south",
"north",
"west",
"east"
],
"properties": {
"east": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Eastern boundary of bounding box in decimal degrees (must be > west)"
},
"west": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Western boundary of bounding box in decimal degrees (-180 to 180)"
},
"north": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Northern boundary of bounding box in decimal degrees (must be > south)"
},
"south": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Southern boundary of bounding box in decimal degrees (-90 to 90)"
},
"dataset": {
"enum": [
"SRTMGL1",
"SRTMGL3",
"SRTMGL1_E",
"AW3D30",
"AW3D30_E",
"NASADEM",
"COP30",
"COP90",
"EU_DTM",
"SRTM15Plus",
"GEDI_L3",
"GEBCOIceTopo",
"GEBCOSubIceTopo"
],
"type": "string",
"description": "Global DEM dataset to query. SRTMGL1 = NASA SRTM 30m (default, global). COP30 = Copernicus 30m (high accuracy). AW3D30 = ALOS World 3D 30m. NASADEM = NASA 30m reprocessed SRTM. SRTMGL3 = SRTM 90m. COP90 = Copernicus 90m. SRTM15Plus = 500m global+bathymetry. EU_DTM = European 30m. GEBCOIceTopo/GEBCOSubIceTopo = GEBCO 500m ice/sub-ice."
}
},
"additionalProperties": false
}Query terrain elevation (in metres) at a specific latitude/longitude coordinate using global Digital Elevation Model (DEM) datasets. Supports SRTMGL1 (NASA SRTM 30m, default), COP30 (Copernicus 30m), AW3D30 (ALOS 30m), NASADEM (30m reprocessed), SRTM15Plus (500m global bathymetry), and more. Returns elevation_m plus dataset resolution info. Source: OpenTopography / USGS 3DEP, CC BY 4.0, free registration (5K req/day).
| Argument | Type | Description |
|---|---|---|
| lat* | number | Latitude of the point to query (-90 to 90 decimal degrees) |
| lon* | number | Longitude of the point to query (-180 to 180 decimal degrees) |
| dataset | string | Global DEM dataset to query. SRTMGL1 = NASA SRTM 30m (default, global). COP30 = Copernicus 30m (high accuracy). AW3D30 = ALOS World 3D 30m. NASADEM = NASA 30m reprocessed SRTM. SRTMGL3 = SRTM 90m. COP90 = Copernicus 90m. SRTM15Plus = 500m global+bathymetry. EU_DTM = European 30m. GEBCOIceTopo/GEBCOSubIceTopo = GEBCO 500m ice/sub-ice. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude of the point to query (-90 to 90 decimal degrees)"
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude of the point to query (-180 to 180 decimal degrees)"
},
"dataset": {
"enum": [
"SRTMGL1",
"SRTMGL3",
"SRTMGL1_E",
"AW3D30",
"AW3D30_E",
"NASADEM",
"COP30",
"COP90",
"EU_DTM",
"SRTM15Plus",
"GEDI_L3",
"GEBCOIceTopo",
"GEBCOSubIceTopo"
],
"type": "string",
"description": "Global DEM dataset to query. SRTMGL1 = NASA SRTM 30m (default, global). COP30 = Copernicus 30m (high accuracy). AW3D30 = ALOS World 3D 30m. NASADEM = NASA 30m reprocessed SRTM. SRTMGL3 = SRTM 90m. COP90 = Copernicus 90m. SRTM15Plus = 500m global+bathymetry. EU_DTM = European 30m. GEBCOIceTopo/GEBCOSubIceTopo = GEBCO 500m ice/sub-ice."
}
},
"additionalProperties": false
}Get land surface elevation for up to 100 lat/lon coordinates in a single request. All points share the same dataset (srtm90m default, srtm30m, or aster30m). Returns an array of results, each with elevation_m, lat, lon, and dataset. Ideal for elevation profiling along a route, contour-line computation, or bulk terrain analysis. MIT licence, no auth, no upstream cost.
| Argument | Type | Description |
|---|---|---|
| dataset | string | Elevation dataset applied to all locations: srtm90m (default), srtm30m, aster30m |
| locations* | array | Array of lat/lon objects to query (1–100 locations per request) |
| interpolation | string | Interpolation method: bilinear (default) or nearest |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"locations"
],
"properties": {
"dataset": {
"enum": [
"srtm90m",
"srtm30m",
"aster30m"
],
"type": "string",
"description": "Elevation dataset applied to all locations: srtm90m (default), srtm30m, aster30m"
},
"locations": {
"type": "array",
"items": {
"type": "object",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude (-90 to 90)"
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude (-180 to 180)"
}
},
"additionalProperties": false
},
"maxItems": 100,
"minItems": 1,
"description": "Array of lat/lon objects to query (1–100 locations per request)"
},
"interpolation": {
"enum": [
"bilinear",
"nearest"
],
"type": "string",
"description": "Interpolation method: bilinear (default) or nearest"
}
},
"additionalProperties": false
}Get high-resolution elevation for a single coordinate using regional datasets: ned10m (USGS National Elevation Dataset 10m, continental US only) or eudem25m (EU-DEM 25m, Europe only). Returns elevation in metres with dataset name. Use ned10m for US urban/terrain analysis and eudem25m for European geospatial workflows requiring higher accuracy than SRTM. MIT licence, no auth, no upstream cost.
| Argument | Type | Description |
|---|---|---|
| lat* | number | Latitude of the point (-90 to 90) |
| lon* | number | Longitude of the point (-180 to 180) |
| dataset | string | High-resolution dataset: ned10m (USGS NED 10m, continental US only) or eudem25m (EU-DEM 25m, Europe only). Defaults to ned10m. |
| interpolation | string | Interpolation method: bilinear (default) or nearest |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude of the point (-90 to 90)"
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude of the point (-180 to 180)"
},
"dataset": {
"enum": [
"ned10m",
"eudem25m"
],
"type": "string",
"description": "High-resolution dataset: ned10m (USGS NED 10m, continental US only) or eudem25m (EU-DEM 25m, Europe only). Defaults to ned10m."
},
"interpolation": {
"enum": [
"bilinear",
"nearest"
],
"type": "string",
"description": "Interpolation method: bilinear (default) or nearest"
}
},
"additionalProperties": false
}Get ocean floor depth (metres, negative values below sea level) at a lat/lon coordinate using the GEBCO 2020 global bathymetric dataset (450m resolution). Returns depth in metres; negative values indicate depth below sea level, positive values indicate land elevation above sea level. Use for marine navigation planning, submarine cable routing, oceanographic research, and coastal engineering. MIT licence, no auth, no upstream cost.
| Argument | Type | Description |
|---|---|---|
| lat* | number | Latitude of the ocean/sea point (-90 to 90) |
| lon* | number | Longitude of the ocean/sea point (-180 to 180) |
| interpolation | string | Interpolation method: bilinear (default) or nearest |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude of the ocean/sea point (-90 to 90)"
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude of the ocean/sea point (-180 to 180)"
},
"interpolation": {
"enum": [
"bilinear",
"nearest"
],
"type": "string",
"description": "Interpolation method: bilinear (default) or nearest"
}
},
"additionalProperties": false
}Get land surface elevation (metres above sea level) for a single latitude/longitude coordinate. Supports three global datasets: srtm90m (NASA SRTM 90m resolution, default), srtm30m (NASA SRTM 30m), and aster30m (ASTER 30m, best for high-altitude regions like Everest). Returns elevation in metres with the dataset name and the snapped coordinates. Use for terrain analysis, hiking route planning, flight-path clearance checks, and GIS workflows. MIT licence, no auth, no upstream cost.
| Argument | Type | Description |
|---|---|---|
| lat* | number | Latitude of the point (-90 to 90) |
| lon* | number | Longitude of the point (-180 to 180) |
| dataset | string | Elevation dataset: srtm90m (NASA SRTM 90m, default), srtm30m (NASA SRTM 30m), aster30m (ASTER 30m, good for high mountains) |
| interpolation | string | Interpolation method: bilinear (default, smoother) or nearest (raw pixel value) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude of the point (-90 to 90)"
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude of the point (-180 to 180)"
},
"dataset": {
"enum": [
"srtm90m",
"srtm30m",
"aster30m"
],
"type": "string",
"description": "Elevation dataset: srtm90m (NASA SRTM 90m, default), srtm30m (NASA SRTM 30m), aster30m (ASTER 30m, good for high mountains)"
},
"interpolation": {
"enum": [
"bilinear",
"nearest"
],
"type": "string",
"description": "Interpolation method: bilinear (default, smoother) or nearest (raw pixel value)"
}
},
"additionalProperties": false
}Get a researcher's public ORCID profile by their ORCID iD: name, other names, biography, keywords, country, researcher URLs, and linked external identifiers (e.g. Scopus Author ID, ResearcherID) (pub.orcid.org, public ORCID data)
| Argument | Type | Description |
|---|---|---|
| orcid_id* | string | ORCID iD, e.g. "0000-0002-1825-0097". Obtain one from orcid.search_researcher. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"orcid_id"
],
"properties": {
"orcid_id": {
"type": "string",
"pattern": "^\\d{4}-\\d{4}-\\d{4}-\\d{3}[\\dX]$",
"description": "ORCID iD, e.g. \"0000-0002-1825-0097\". Obtain one from orcid.search_researcher."
}
},
"additionalProperties": false
}Search the global ORCID registry for researchers by name or affiliation, using a plain name or a Solr-style field query (e.g. "family-name:Smith", "affiliation-org-name:MIT"). Returns matching researchers with their ORCID iD, name, and institution — the ORCID iD can then be used with orcid.get_person or orcid.get_works (pub.orcid.org, public ORCID data)
| Argument | Type | Description |
|---|---|---|
| rows | integer | Number of results to return (1-50, default 10). |
| query* | string | Researcher search query — a plain name (e.g. "Jane Smith") or a Solr-style field query (e.g. "family-name:Carberry", "affiliation-org-name:MIT AND given-names:Jane"). |
| start | integer | Offset into the result set for pagination (default 0). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"rows": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results to return (1-50, default 10)."
},
"query": {
"type": "string",
"minLength": 1,
"description": "Researcher search query — a plain name (e.g. \"Jane Smith\") or a Solr-style field query (e.g. \"family-name:Carberry\", \"affiliation-org-name:MIT AND given-names:Jane\")."
},
"start": {
"type": "integer",
"minimum": 0,
"description": "Offset into the result set for pagination (default 0)."
}
},
"additionalProperties": false
}Get the list of publications and other works recorded on a researcher's ORCID profile: title, work type, journal title, publication date, and DOI/other external identifiers (pub.orcid.org, public ORCID data)
| Argument | Type | Description |
|---|---|---|
| orcid_id* | string | ORCID iD, e.g. "0000-0002-1825-0097". Obtain one from orcid.search_researcher. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"orcid_id"
],
"properties": {
"orcid_id": {
"type": "string",
"pattern": "^\\d{4}-\\d{4}-\\d{4}-\\d{3}[\\dX]$",
"description": "ORCID iD, e.g. \"0000-0002-1825-0097\". Obtain one from orcid.search_researcher."
}
},
"additionalProperties": false
}Get prevalence and incidence data for a rare disease by its Orphanet ORPHAcode. Returns prevalence records with geographic area (Europe, Worldwide, US, UK, etc.), measurement type (point prevalence, birth prevalence, annual incidence), prevalence class (e.g. 1-5/10,000), numeric mean value, and PMID citations from peer-reviewed literature. Source: Orphadata / Orphanet — CC BY 4.0, no auth, unlimited free.
| Argument | Type | Description |
|---|---|---|
| lang | string | Response language (default: en). Supported: en, fr, de, es, it, pt, nl, pl, cs, tr, uk, zh. |
| orphacode* | integer | Orphanet ORPHAcode — the unique numeric identifier for the rare disease (e.g. 558 for Marfan syndrome). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"orphacode"
],
"properties": {
"lang": {
"enum": [
"en",
"fr",
"de",
"es",
"it",
"pt",
"nl",
"pl",
"cs",
"tr",
"uk",
"zh"
],
"type": "string",
"description": "Response language (default: en). Supported: en, fr, de, es, it, pt, nl, pl, cs, tr, uk, zh."
},
"orphacode": {
"type": "integer",
"description": "Orphanet ORPHAcode — the unique numeric identifier for the rare disease (e.g. 558 for Marfan syndrome).",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Search Orphanet rare disease database by disease name and retrieve cross-references to major medical coding systems. Returns ORPHAcode, full disease definition, synonyms, and validated cross-references to ICD-10, ICD-11, OMIM, MONDO, MeSH, MedDRA, UMLS, and Orphanet URL. Covers 4,245+ rare diseases. Supports 12 languages (en, fr, de, es, it, pt, nl, pl, cs, tr, uk, zh). Source: Orphadata / Orphanet — CC BY 4.0, no auth, unlimited free.
| Argument | Type | Description |
|---|---|---|
| lang | string | Response language (default: en). Supported: en, fr, de, es, it, pt, nl, pl, cs, tr, uk, zh. |
| name* | string | Preferred name (or part of it) of the rare disease to search (e.g. "Marfan syndrome", "cystic fibrosis"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"lang": {
"enum": [
"en",
"fr",
"de",
"es",
"it",
"pt",
"nl",
"pl",
"cs",
"tr",
"uk",
"zh"
],
"type": "string",
"description": "Response language (default: en). Supported: en, fr, de, es, it, pt, nl, pl, cs, tr, uk, zh."
},
"name": {
"type": "string",
"minLength": 1,
"description": "Preferred name (or part of it) of the rare disease to search (e.g. \"Marfan syndrome\", \"cystic fibrosis\")."
}
},
"additionalProperties": false
}Get genetic inheritance mode and clinical timeline for a rare disease by its Orphanet ORPHAcode. Returns inheritance modes (e.g. Autosomal dominant, X-linked recessive, Mitochondrial), average age of onset (e.g. Neonatal, Infancy, All ages), and disease group/typology classification. Supports 12 languages (en, fr, de, es, it, pt, nl, pl, cs, tr, uk, zh). Source: Orphadata / Orphanet — CC BY 4.0, no auth, unlimited free.
| Argument | Type | Description |
|---|---|---|
| lang | string | Response language (default: en). Supported: en, fr, de, es, it, pt, nl, pl, cs, tr, uk, zh. |
| orphacode* | integer | Orphanet ORPHAcode of the rare disease to get inheritance mode and age-of-onset data for (e.g. 558 for Marfan syndrome). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"orphacode"
],
"properties": {
"lang": {
"enum": [
"en",
"fr",
"de",
"es",
"it",
"pt",
"nl",
"pl",
"cs",
"tr",
"uk",
"zh"
],
"type": "string",
"description": "Response language (default: en). Supported: en, fr, de, es, it, pt, nl, pl, cs, tr, uk, zh."
},
"orphacode": {
"type": "integer",
"description": "Orphanet ORPHAcode of the rare disease to get inheritance mode and age-of-onset data for (e.g. 558 for Marfan syndrome).",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Get clinical signs and symptoms (HPO phenotypes) for a rare disease by its Orphanet ORPHAcode. Returns HPO identifiers and terms annotated with frequency categories (Very frequent 99-80%, Frequent 79-30%, Occasional 29-5%) and whether each sign is a diagnostic criterion. Up to 68+ HPO terms per disease, cited from PubMed. Source: Orphadata / Orphanet — CC BY 4.0, no auth, unlimited free.
| Argument | Type | Description |
|---|---|---|
| lang | string | Response language (default: en). Supported: en, fr, de, es, it, pt, nl, pl, cs, tr, uk, zh. |
| orphacode* | integer | Orphanet ORPHAcode of the rare disease whose HPO phenotypes to retrieve (e.g. 558 for Marfan syndrome). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"orphacode"
],
"properties": {
"lang": {
"enum": [
"en",
"fr",
"de",
"es",
"it",
"pt",
"nl",
"pl",
"cs",
"tr",
"uk",
"zh"
],
"type": "string",
"description": "Response language (default: en). Supported: en, fr, de, es, it, pt, nl, pl, cs, tr, uk, zh."
},
"orphacode": {
"type": "integer",
"description": "Orphanet ORPHAcode of the rare disease whose HPO phenotypes to retrieve (e.g. 558 for Marfan syndrome).",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Scan up to 100 packages at once for known vulnerabilities. Submit package+version+ecosystem triples (e.g. full requirements.txt or package.json dependencies) and get vulnerability matches for all in a single call. Ideal for full dependency tree security audits.
| Argument | Type | Description |
|---|---|---|
| queries* | array | List of package+version+ecosystem to check (max 100) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"queries"
],
"properties": {
"queries": {
"type": "array",
"items": {
"type": "object",
"required": [
"package",
"version",
"ecosystem"
],
"properties": {
"package": {
"type": "string",
"minLength": 1,
"description": "Package name"
},
"version": {
"type": "string",
"minLength": 1,
"description": "Package version"
},
"ecosystem": {
"enum": [
"npm",
"PyPI",
"Go",
"Maven",
"crates.io",
"NuGet",
"Packagist",
"RubyGems",
"Pub",
"Hex",
"SwiftURL",
"Linux",
"Android",
"OSS-Fuzz",
"GIT"
],
"type": "string",
"description": "Package ecosystem (npm, PyPI, Go, Maven, crates.io, NuGet, Packagist, RubyGems, etc.)"
}
},
"additionalProperties": false
},
"maxItems": 100,
"minItems": 1,
"description": "List of package+version+ecosystem to check (max 100)"
}
},
"additionalProperties": false
}Retrieve full details for a vulnerability by OSV ID (GHSA-xxxx), CVE ID (CVE-2021-xxxxx), or ecosystem ID (PYSEC/RUSTSEC/GO). Returns summary, CVSS severity, affected packages with fix versions, and reference links.
| Argument | Type | Description |
|---|---|---|
| vuln_id* | string | Vulnerability ID — OSV (e.g. GHSA-35jh-r3h4-6jhm), CVE (e.g. CVE-2021-23337), or PYSEC/GO/RUSTSEC ID |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"vuln_id"
],
"properties": {
"vuln_id": {
"type": "string",
"minLength": 1,
"description": "Vulnerability ID — OSV (e.g. GHSA-35jh-r3h4-6jhm), CVE (e.g. CVE-2021-23337), or PYSEC/GO/RUSTSEC ID"
}
},
"additionalProperties": false
}Check known vulnerabilities for a specific package version in any ecosystem (npm, PyPI, Go, Maven, Rust, NuGet, 14+ more). Returns CVE/GHSA IDs, severity scores, and affected package counts. Powered by Google OSV.dev — aggregates GitHub Security Advisories, NVD, and ecosystem-native databases.
| Argument | Type | Description |
|---|---|---|
| package* | string | Package name (e.g. lodash, requests, gin-gonic/gin) |
| version* | string | Package version to check (e.g. 4.17.20, 2.25.0) |
| ecosystem* | string | Package ecosystem (npm, PyPI, Go, Maven, crates.io, NuGet, Packagist, RubyGems, etc.) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"package",
"version",
"ecosystem"
],
"properties": {
"package": {
"type": "string",
"minLength": 1,
"description": "Package name (e.g. lodash, requests, gin-gonic/gin)"
},
"version": {
"type": "string",
"minLength": 1,
"description": "Package version to check (e.g. 4.17.20, 2.25.0)"
},
"ecosystem": {
"enum": [
"npm",
"PyPI",
"Go",
"Maven",
"crates.io",
"NuGet",
"Packagist",
"RubyGems",
"Pub",
"Hex",
"SwiftURL",
"Linux",
"Android",
"OSS-Fuzz",
"GIT"
],
"type": "string",
"description": "Package ecosystem (npm, PyPI, Go, Maven, crates.io, NuGet, Packagist, RubyGems, etc.)"
}
},
"additionalProperties": false
}Search historical JMA earthquake records via the P2PQuake history endpoint. Supports pagination, intensity and magnitude filters, and prefecture filtering for deeper analysis. Returns epicenter name, coordinates, depth, Richter magnitude, max JMA intensity label, domestic tsunami advisory, report type, and observation point count. Use this for trend analysis, seismic risk assessment, or retrieving older events not in the recent feed. Filter examples: min_scale=60 for Shindo 6+ events, min_magnitude=7.0 for major quakes, prefecture=13 for Tokyo area events. Data source: P2PQuake — community-operated JMA relay, open data, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of historical earthquake records to return (default 20, max 100) |
| order | integer | Sort direction: -1 for newest-first (default), 1 for oldest-first |
| offset | integer | Pagination offset for browsing older events (0-based, default 0) |
| max_scale | integer | Maximum JMA seismic intensity raw scale value |
| min_scale | integer | Minimum JMA intensity (10=Shindo1, 20=Shindo2, 30=Shindo3, 40=Shindo4, 45=Shindo4+, 50=Shindo5w, 55=Shindo5s, 60=Shindo6w, 65=Shindo6s, 70=Shindo7) |
| prefecture | integer | Filter by prefecture JIS code (1=Hokkaido, 13=Tokyo, 27=Osaka, 40=Fukuoka, 47=Okinawa) |
| max_magnitude | number | Maximum Richter magnitude |
| min_magnitude | number | Minimum Richter magnitude (e.g. 6.0 for strong earthquakes) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of historical earthquake records to return (default 20, max 100)"
},
"order": {
"type": "integer",
"description": "Sort direction: -1 for newest-first (default), 1 for oldest-first"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset for browsing older events (0-based, default 0)"
},
"max_scale": {
"type": "integer",
"description": "Maximum JMA seismic intensity raw scale value"
},
"min_scale": {
"type": "integer",
"description": "Minimum JMA intensity (10=Shindo1, 20=Shindo2, 30=Shindo3, 40=Shindo4, 45=Shindo4+, 50=Shindo5w, 55=Shindo5s, 60=Shindo6w, 65=Shindo6s, 70=Shindo7)"
},
"prefecture": {
"type": "integer",
"maximum": 47,
"minimum": 1,
"description": "Filter by prefecture JIS code (1=Hokkaido, 13=Tokyo, 27=Osaka, 40=Fukuoka, 47=Okinawa)"
},
"max_magnitude": {
"type": "number",
"description": "Maximum Richter magnitude"
},
"min_magnitude": {
"type": "number",
"description": "Minimum Richter magnitude (e.g. 6.0 for strong earthquakes)"
}
},
"additionalProperties": false
}Get recent earthquake reports issued by the Japan Meteorological Agency (JMA) via the P2PQuake network. Returns seismic events with epicenter name, coordinates, depth, Richter magnitude, maximum JMA intensity (Shindo scale 1–7), tsunami advisory status, and per-prefecture/city observation points. Filter by minimum/maximum seismic intensity, magnitude, prefecture (JIS code 1–47), or report type. Sort newest-first (default) or oldest-first. JMA intensity scale: 10=Shindo1, 20=Shindo2, ..., 60=Shindo6w, 65=Shindo6s, 70=Shindo7. Tsunami status: None | Checking | NonEffective | Watch | Warning. Data source: P2PQuake — community-operated JMA relay, open data, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of events to return (default 10, max 100) |
| order | integer | Sort direction: -1 for newest-first (default), 1 for oldest-first |
| offset | integer | Pagination offset (0-based, default 0) |
| max_scale | integer | Maximum JMA seismic intensity as raw scale value (same scale as min_scale) |
| min_scale | integer | Minimum JMA seismic intensity as raw scale value (10=Shindo1, 20=Shindo2, 30=Shindo3, 40=Shindo4, 45=Shindo4+, 50=Shindo5w, 55=Shindo5s, 60=Shindo6w, 65=Shindo6s, 70=Shindo7) |
| prefecture | integer | Filter by Japanese prefecture JIS code (1=Hokkaido, 13=Tokyo, 27=Osaka, 40=Fukuoka, 47=Okinawa) |
| quake_type | string | JMA report type filter: ScalePrompt=intensity prompt, Destination=epicenter info, DetailScale=full epicenter+intensity report, Foreign=overseas earthquake, Other=miscellaneous |
| max_magnitude | number | Maximum earthquake magnitude (Richter scale) |
| min_magnitude | number | Minimum earthquake magnitude (Richter scale, e.g. 5.0 for moderate earthquakes) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of events to return (default 10, max 100)"
},
"order": {
"type": "integer",
"description": "Sort direction: -1 for newest-first (default), 1 for oldest-first"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset (0-based, default 0)"
},
"max_scale": {
"type": "integer",
"description": "Maximum JMA seismic intensity as raw scale value (same scale as min_scale)"
},
"min_scale": {
"type": "integer",
"description": "Minimum JMA seismic intensity as raw scale value (10=Shindo1, 20=Shindo2, 30=Shindo3, 40=Shindo4, 45=Shindo4+, 50=Shindo5w, 55=Shindo5s, 60=Shindo6w, 65=Shindo6s, 70=Shindo7)"
},
"prefecture": {
"type": "integer",
"maximum": 47,
"minimum": 1,
"description": "Filter by Japanese prefecture JIS code (1=Hokkaido, 13=Tokyo, 27=Osaka, 40=Fukuoka, 47=Okinawa)"
},
"quake_type": {
"enum": [
"ScalePrompt",
"Destination",
"DetailScale",
"Foreign",
"Other"
],
"type": "string",
"description": "JMA report type filter: ScalePrompt=intensity prompt, Destination=epicenter info, DetailScale=full epicenter+intensity report, Foreign=overseas earthquake, Other=miscellaneous"
},
"max_magnitude": {
"type": "number",
"description": "Maximum earthquake magnitude (Richter scale)"
},
"min_magnitude": {
"type": "number",
"description": "Minimum earthquake magnitude (Richter scale, e.g. 5.0 for moderate earthquakes)"
}
},
"additionalProperties": false
}Get current and recent tsunami warning/advisory bulletins issued by JMA via the P2PQuake network. Returns warning grade per coastal area (MajorWarning/Warning/Watch), immediate-danger flag, estimated wave height, expected first-arrival time, and the triggering earthquake details. Cancelled bulletins are included with cancelled=true for audit trails. Coverage: all Pacific, Sea of Japan, and Inland Sea coastal areas of Japan. Typical warning lifecycle: FirstReport → Update → AllClear. Use this tool for real-time tsunami monitoring in Japan. Data source: P2PQuake — community-operated JMA relay, open data, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of tsunami events to return (default 10, max 100) |
| order | integer | Sort direction: -1 for newest-first (default), 1 for oldest-first |
| offset | integer | Pagination offset (0-based, default 0) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of tsunami events to return (default 10, max 100)"
},
"order": {
"type": "integer",
"description": "Sort direction: -1 for newest-first (default), 1 for oldest-first"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset (0-based, default 0)"
}
},
"additionalProperties": false
}Get full detail for a single NOAA NCEI Paleoclimatology study by NOAA Study ID, including investigators, publications, site coordinates, and per-site data tables with direct download links to the underlying proxy data files. Data: www.ncei.noaa.gov/access/paleo-search (NOAA National Centers for Environmental Information), no auth required.
| Argument | Type | Description |
|---|---|---|
| NOAAStudyId* | string | NOAA Study ID (e.g. "10437"), obtained from paleoclimate.study_search results (noaa_study_id field). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"NOAAStudyId"
],
"properties": {
"NOAAStudyId": {
"type": "string",
"minLength": 1,
"description": "NOAA Study ID (e.g. \"10437\"), obtained from paleoclimate.study_search results (noaa_study_id field)."
}
},
"additionalProperties": false
}Search NOAA NCEI Paleoclimatology studies by free text, continent/region, and/or record type (ice cores, tree rings, corals, climate reconstructions, paleoceanography, and more). Returns study ID, name, DOI, investigators, year range, and site locations — useful for finding historical climate reconstructions and proxy records. Data: www.ncei.noaa.gov/access/paleo-search (NOAA National Centers for Environmental Information), no auth required.
| Argument | Type | Description |
|---|---|---|
| locations | string | Continent or region name to filter by (e.g. "Antarctica", "North America", "Europe", "Africa"). |
| dataTypeId | integer | Numeric paleo record type filter. Known values: 1=Ice Cores, 2/3/7/16=Climate Reconstructions, 4=Corals And Sclerosponges, 5=Fauna, 6=Historical, 8/9/12/13=Paleolimnology, 10=Loess And Paleosol, 11=Climate Forcing, 14=Paleoceanography, 15=Plant Macrofossils. |
| searchText | string | Free-text search across study title, investigators, and keywords (e.g. "temperature", "El Nino", "tree ring"). Provide this and/or locations/dataTypeId to narrow the search. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"locations": {
"type": "string",
"description": "Continent or region name to filter by (e.g. \"Antarctica\", \"North America\", \"Europe\", \"Africa\")."
},
"dataTypeId": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Numeric paleo record type filter. Known values: 1=Ice Cores, 2/3/7/16=Climate Reconstructions, 4=Corals And Sclerosponges, 5=Fauna, 6=Historical, 8/9/12/13=Paleolimnology, 10=Loess And Paleosol, 11=Climate Forcing, 14=Paleoceanography, 15=Plant Macrofossils."
},
"searchText": {
"type": "string",
"description": "Free-text search across study title, investigators, and keywords (e.g. \"temperature\", \"El Nino\", \"tree ring\"). Provide this and/or locations/dataTypeId to narrow the search."
}
},
"additionalProperties": false
}Retrieve pharmacogenomics (PGx) drug label annotations from regulatory agencies curated by PharmGKB. Supports FDA (500+ labels), EMA, PMDA (Japan), HCSC (Canada), SWISSMEDIC, and AEMPS (Spain). Each annotation links a drug label to PGx biomarkers, indicates whether it includes dosing guidance, whether an alternate drug is recommended, cancer-genome relevance, pediatric tags, and testing information. Filter to dosing-information-only labels for actionable prescribing guidance. Paginated (up to 100/page). Source: PharmGKB, CC BY-SA 4.0.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (1-indexed). Each page returns up to 100 results. FDA source has 500+ annotations. |
| source | string | Regulatory authority whose drug label annotations to retrieve. FDA=US Food & Drug Administration (largest set), EMA=European Medicines Agency, PMDA=Japan, HCSC=Canada, SWISSMEDIC=Switzerland, AEMPS=Spain. Defaults to FDA. |
| dosing_only | boolean | When true, return only labels that include pharmacogenomics-based dosing information (dosingInformation=true). Useful for finding actionable prescribing guidance. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"default": 1,
"minimum": 1,
"description": "Page number for pagination (1-indexed). Each page returns up to 100 results. FDA source has 500+ annotations."
},
"source": {
"enum": [
"FDA",
"EMA",
"PMDA",
"HCSC",
"SWISSMEDIC",
"AEMPS"
],
"type": "string",
"default": "FDA",
"description": "Regulatory authority whose drug label annotations to retrieve. FDA=US Food & Drug Administration (largest set), EMA=European Medicines Agency, PMDA=Japan, HCSC=Canada, SWISSMEDIC=Switzerland, AEMPS=Spain. Defaults to FDA."
},
"dosing_only": {
"type": "boolean",
"default": false,
"description": "When true, return only labels that include pharmacogenomics-based dosing information (dosingInformation=true). Useful for finding actionable prescribing guidance."
}
},
"additionalProperties": false
}Search the PharmGKB curated drug/chemical database by name (e.g. warfarin, clopidogrel, tamoxifen, codeine). Returns PharmGKB ID, canonical name, trade names, generic names, drug types, SMILES, InChI, ATC code, ChEBI ID, DrugBank ID, and pediatric annotation flag. PharmGKB covers 3,000+ pharmacologically relevant compounds with PGx relationships. Source: PharmGKB, CC BY-SA 4.0.
| Argument | Type | Description |
|---|---|---|
| name* | string | Drug or chemical name to search for (e.g. warfarin, clopidogrel, tamoxifen, codeine). Searches PharmGKB curated database of 3,000+ pharmacologically relevant compounds. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Drug or chemical name to search for (e.g. warfarin, clopidogrel, tamoxifen, codeine). Searches PharmGKB curated database of 3,000+ pharmacologically relevant compounds."
}
},
"additionalProperties": false
}Search PharmGKB for a pharmacogenomics gene by HGNC symbol (e.g. CYP2C9, CYP2D6, BRCA1, VKORC1, TPMT). Returns the PharmGKB gene ID, chromosomal location (GRCh38), strand, CPIC/AMP gene status, allele type, VIP tier, and plain-text clinical summary. CPIC genes have validated drug-dosing guidelines. AMP genes are on the AMP Tier I/II actionable list. Source: PharmGKB, CC BY-SA 4.0.
| Argument | Type | Description |
|---|---|---|
| symbol* | string | HGNC gene symbol to search for (e.g. CYP2C9, CYP2D6, BRCA1, VKORC1, TPMT). Case-insensitive. Use the official gene symbol as listed by HGNC. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"symbol"
],
"properties": {
"symbol": {
"type": "string",
"description": "HGNC gene symbol to search for (e.g. CYP2C9, CYP2D6, BRCA1, VKORC1, TPMT). Case-insensitive. Use the official gene symbol as listed by HGNC."
}
},
"additionalProperties": false
}Look up pharmacogenomic details for a genetic variant by dbSNP rsID (e.g. rs1799853 for CYP2C9*2, rs4244285 for CYP2C19*2, rs12248560 for CYP2C19*17). Returns variant ID, change classification (Missense/Synonymous/Intronic), clinical significance (drug-response/pathogenic), variant type (SNP/Indel), chromosomal position (GRCh38), associated genes, rarity flag, and ClinVar IDs. Focused on variants with known drug-response relevance. Source: PharmGKB, CC BY-SA 4.0.
| Argument | Type | Description |
|---|---|---|
| rsid* | string | dbSNP reference SNP ID for the variant (e.g. rs1799853, rs4244285, rs12248560). Must be prefixed with "rs" followed by digits. PharmGKB annotates variants with known pharmacogenomic relevance. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"rsid"
],
"properties": {
"rsid": {
"type": "string",
"description": "dbSNP reference SNP ID for the variant (e.g. rs1799853, rs4244285, rs12248560). Must be prefixed with \"rs\" followed by digits. PharmGKB annotates variants with known pharmacogenomic relevance."
}
},
"additionalProperties": false
}Read current Telnyx account balance, available credit, currency, pending charges, and credit limit. Useful for cost monitoring before placing high-volume sends (Telnyx)
| Argument | Type | Description |
|---|---|---|
| refresh | boolean | Set to true to bypass the 30-second cache and fetch a fresh balance from Telnyx. Default false. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"refresh": {
"type": "boolean",
"description": "Set to true to bypass the 30-second cache and fetch a fresh balance from Telnyx. Default false."
}
},
"additionalProperties": false
}Classify a destination phone number into the right pricing tier (na / world / premium) and return the recommended send tool and price. Use this BEFORE telnyx.send_sms_* to avoid 400 errors. $0.001/lookup (Telnyx)
| Argument | Type | Description |
|---|---|---|
| to* | string | Destination phone number in E.164 format (e.g. "+14155551234", "+447911123456", "+79991234567"). The classifier returns the recommended send tool and tier-based price. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"to"
],
"properties": {
"to": {
"type": "string",
"minLength": 1,
"description": "Destination phone number in E.164 format (e.g. \"+14155551234\", \"+447911123456\", \"+79991234567\"). The classifier returns the recommended send tool and tier-based price."
}
},
"additionalProperties": false
}List recent Telnyx messages with optional filters: direction (inbound/outbound), date_from (ISO 8601), and pagination limit (max 100). Returns array of {message_id, from, to, text, status, created_at, cost} (Telnyx)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max number of messages to return per page (default 25, max 100). |
| date_from | string | ISO 8601 date — return messages created on or after this date (e.g. "2026-04-26"). |
| direction | string | Filter by message direction: "outbound" (sent by us) or "inbound" (received). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Max number of messages to return per page (default 25, max 100)."
},
"date_from": {
"type": "string",
"description": "ISO 8601 date — return messages created on or after this date (e.g. \"2026-04-26\")."
},
"direction": {
"enum": [
"inbound",
"outbound"
],
"type": "string",
"description": "Filter by message direction: \"outbound\" (sent by us) or \"inbound\" (received)."
}
},
"additionalProperties": false
}⚡ ACTION: Send SMS to North America (NANP +1 — US, Canada, Caribbean). $0.016/message — cheapest tier. Returns 400 if destination is outside +1. Use telnyx.estimate_price first if unsure (Telnyx)
| Argument | Type | Description |
|---|---|---|
| to* | string | Recipient phone number in E.164 format (e.g. "+14155551234"). Trial accounts can only send to verified destination numbers added in the Telnyx portal. |
| from* | string | Sender phone number in E.164 format — must be a Telnyx number you own (e.g. "+15551234567"). Provision via Telnyx portal Numbers > Buy Numbers. |
| text* | string | SMS body text (max 1600 chars; >160 splits into multiple billing segments). |
| messaging_profile_id | string | Optional Telnyx messaging profile UUID to route through a specific profile (10DLC campaign, sender pool). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"to",
"from",
"text"
],
"properties": {
"to": {
"type": "string",
"minLength": 1,
"description": "Recipient phone number in E.164 format (e.g. \"+14155551234\"). Trial accounts can only send to verified destination numbers added in the Telnyx portal."
},
"from": {
"type": "string",
"minLength": 1,
"description": "Sender phone number in E.164 format — must be a Telnyx number you own (e.g. \"+15551234567\"). Provision via Telnyx portal Numbers > Buy Numbers."
},
"text": {
"type": "string",
"maxLength": 1600,
"minLength": 1,
"description": "SMS body text (max 1600 chars; >160 splits into multiple billing segments)."
},
"messaging_profile_id": {
"type": "string",
"description": "Optional Telnyx messaging profile UUID to route through a specific profile (10DLC campaign, sender pool)."
}
},
"additionalProperties": false
}⚡ ACTION: Send SMS to high-cost destinations: Russia +7, Belarus +375, Ukraine +380, China +86, Turkey +90, MENA (SA/AE/EG/JO/...), Africa (NG/KE/ZA/...), and any unknown prefix (default). $0.25/message. Highest tier — use telnyx.estimate_price to verify before sending (Telnyx)
| Argument | Type | Description |
|---|---|---|
| to* | string | Recipient phone number in E.164 format (e.g. "+14155551234"). Trial accounts can only send to verified destination numbers added in the Telnyx portal. |
| from* | string | Sender phone number in E.164 format — must be a Telnyx number you own (e.g. "+15551234567"). Provision via Telnyx portal Numbers > Buy Numbers. |
| text* | string | SMS body text (max 1600 chars; >160 splits into multiple billing segments). |
| messaging_profile_id | string | Optional Telnyx messaging profile UUID to route through a specific profile (10DLC campaign, sender pool). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"to",
"from",
"text"
],
"properties": {
"to": {
"type": "string",
"minLength": 1,
"description": "Recipient phone number in E.164 format (e.g. \"+14155551234\"). Trial accounts can only send to verified destination numbers added in the Telnyx portal."
},
"from": {
"type": "string",
"minLength": 1,
"description": "Sender phone number in E.164 format — must be a Telnyx number you own (e.g. \"+15551234567\"). Provision via Telnyx portal Numbers > Buy Numbers."
},
"text": {
"type": "string",
"maxLength": 1600,
"minLength": 1,
"description": "SMS body text (max 1600 chars; >160 splits into multiple billing segments)."
},
"messaging_profile_id": {
"type": "string",
"description": "Optional Telnyx messaging profile UUID to route through a specific profile (10DLC campaign, sender pool)."
}
},
"additionalProperties": false
}⚡ ACTION: Send SMS to most international destinations: UK +44, EU (DE/FR/IT/ES/NL/PL...), AU +61, JP +81, IN +91, BR +55, MX +52, ZA +27, IL +972, AE +971, SG +65, KR +82. $0.10/message. Returns 400 if destination is in NA tier (use telnyx.send_sms_na) or premium tier (use telnyx.send_sms_premium) (Telnyx)
| Argument | Type | Description |
|---|---|---|
| to* | string | Recipient phone number in E.164 format (e.g. "+14155551234"). Trial accounts can only send to verified destination numbers added in the Telnyx portal. |
| from* | string | Sender phone number in E.164 format — must be a Telnyx number you own (e.g. "+15551234567"). Provision via Telnyx portal Numbers > Buy Numbers. |
| text* | string | SMS body text (max 1600 chars; >160 splits into multiple billing segments). |
| messaging_profile_id | string | Optional Telnyx messaging profile UUID to route through a specific profile (10DLC campaign, sender pool). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"to",
"from",
"text"
],
"properties": {
"to": {
"type": "string",
"minLength": 1,
"description": "Recipient phone number in E.164 format (e.g. \"+14155551234\"). Trial accounts can only send to verified destination numbers added in the Telnyx portal."
},
"from": {
"type": "string",
"minLength": 1,
"description": "Sender phone number in E.164 format — must be a Telnyx number you own (e.g. \"+15551234567\"). Provision via Telnyx portal Numbers > Buy Numbers."
},
"text": {
"type": "string",
"maxLength": 1600,
"minLength": 1,
"description": "SMS body text (max 1600 chars; >160 splits into multiple billing segments)."
},
"messaging_profile_id": {
"type": "string",
"description": "Optional Telnyx messaging profile UUID to route through a specific profile (10DLC campaign, sender pool)."
}
},
"additionalProperties": false
}Get delivery status and events for a previously sent Telnyx message by message UUID. Returns per-recipient status (queued/sending/sent/delivered/failed), parts, sent_at, completed_at, errors, and cost (Telnyx)
| Argument | Type | Description |
|---|---|---|
| message_id* | string | Telnyx message UUID returned by send_sms (e.g. "40ab7e80-94c6-4cb6-8c45-c3ed3e3bf3ec"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"message_id"
],
"properties": {
"message_id": {
"type": "string",
"minLength": 1,
"description": "Telnyx message UUID returned by send_sms (e.g. \"40ab7e80-94c6-4cb6-8c45-c3ed3e3bf3ec\")."
}
},
"additionalProperties": false
}Validate and look up phone number info — format validation, country, national format. Optional: carrier name, line type (mobile/landline/VoIP), caller name CNAM (Twilio)
| Argument | Type | Description |
|---|---|---|
| phone_number* | string | Phone number in E.164 format (e.g. "+14157012311", "+442071234567") |
| include_carrier | boolean | Include carrier/line type info (costs extra credit). Returns carrier name, line type (mobile/landline/voip). |
| include_caller_name | boolean | Include caller name CNAM lookup (costs extra credit). US numbers only. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"phone_number"
],
"properties": {
"phone_number": {
"type": "string",
"minLength": 1,
"description": "Phone number in E.164 format (e.g. \"+14157012311\", \"+442071234567\")"
},
"include_carrier": {
"type": "boolean",
"description": "Include carrier/line type info (costs extra credit). Returns carrier name, line type (mobile/landline/voip)."
},
"include_caller_name": {
"type": "boolean",
"description": "Include caller name CNAM lookup (costs extra credit). US numbers only."
}
},
"additionalProperties": false
}⚡ ACTION: Send SMS message to any phone number worldwide. Requires a Twilio phone number as sender. Returns message SID and delivery status. $0.0083/SMS US outbound (Twilio)
| Argument | Type | Description |
|---|---|---|
| to* | string | Recipient phone number in E.164 format (e.g. "+14155551234") |
| body* | string | SMS message text (max 1600 chars, splits into multiple segments if >160) |
| from* | string | Sender phone number — must be a Twilio number you own (e.g. "+15551234567") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"to",
"from",
"body"
],
"properties": {
"to": {
"type": "string",
"minLength": 1,
"description": "Recipient phone number in E.164 format (e.g. \"+14155551234\")"
},
"body": {
"type": "string",
"maxLength": 1600,
"minLength": 1,
"description": "SMS message text (max 1600 chars, splits into multiple segments if >160)"
},
"from": {
"type": "string",
"minLength": 1,
"description": "Sender phone number — must be a Twilio number you own (e.g. \"+15551234567\")"
}
},
"additionalProperties": false
}⚡ ACTION: Execute up to 20 tool calls in a single request with parallel execution (max 10 concurrent). Each call runs the full pipeline independently with its own billing. Returns array of results with per-call status, data, cost, and duration. Save 5x round-trips vs sequential calls. Batch wrapper is free — you pay only for individual tool calls (APIbase)
| Argument | Type | Description |
|---|---|---|
| calls* | array | Array of tool calls to execute in parallel (max 20) |
| max_parallel | integer | Max concurrent calls (1-10). Default: 10 |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"calls"
],
"properties": {
"calls": {
"type": "array",
"items": {
"type": "object",
"required": [
"tool_id",
"params"
],
"properties": {
"params": {
"type": "object",
"description": "Parameters for the tool call",
"additionalProperties": {}
},
"tool_id": {
"type": "string",
"minLength": 1,
"description": "Tool ID to call (e.g. \"crypto.get_price\")"
},
"idempotency_key": {
"type": "string",
"description": "Optional idempotency key for this specific call"
}
},
"additionalProperties": false
},
"maxItems": 20,
"minItems": 1,
"description": "Array of tool calls to execute in parallel (max 20)"
},
"max_parallel": {
"type": "integer",
"default": 10,
"maximum": 10,
"minimum": 1,
"description": "Max concurrent calls (1-10). Default: 10"
}
},
"additionalProperties": false
}Get ranked list of tools by quality — sort by uptime (most reliable), latency (fastest), or error_rate (fewest errors). Filter by category (e.g. "crypto", "weather"). Discover the best tools for your use case. Free, no charge (APIbase)
| Argument | Type | Description |
|---|---|---|
| sort | string | Sort by: "uptime" (highest availability), "latency" (fastest p50), or "error_rate" (lowest errors). Default: "uptime" |
| limit | integer | Max number of tools to return (1-100). Default: 20 |
| category | string | Filter by tool category prefix (e.g. "crypto", "weather", "finance") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"sort": {
"enum": [
"uptime",
"latency",
"error_rate"
],
"type": "string",
"default": "uptime",
"description": "Sort by: \"uptime\" (highest availability), \"latency\" (fastest p50), or \"error_rate\" (lowest errors). Default: \"uptime\""
},
"limit": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1,
"description": "Max number of tools to return (1-100). Default: 20"
},
"category": {
"type": "string",
"description": "Filter by tool category prefix (e.g. \"crypto\", \"weather\", \"finance\")"
}
},
"additionalProperties": false
}Get quality metrics for any tool — uptime percentage, p50/p95 latency, error rate, total calls in last 24h. Check reliability before calling expensive tools. Updated every 10 minutes. Free, no charge (APIbase)
| Argument | Type | Description |
|---|---|---|
| tool_id* | string | Tool ID to get quality metrics for (e.g. "crypto.get_price", "weather.get_current") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"tool_id"
],
"properties": {
"tool_id": {
"type": "string",
"minLength": 1,
"description": "Tool ID to get quality metrics for (e.g. \"crypto.get_price\", \"weather.get_current\")"
}
},
"additionalProperties": false
}Get full detail for a single open-access PLOS article by DOI, including title, journal, publication date, authors, abstract, and subject tags. Data: api.plos.org, no auth required.
| Argument | Type | Description |
|---|---|---|
| doi* | string | Article DOI, e.g. "10.1371/journal.pone.0004050" (returned as "doi" in plos-search.search results). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"doi"
],
"properties": {
"doi": {
"type": "string",
"minLength": 1,
"description": "Article DOI, e.g. \"10.1371/journal.pone.0004050\" (returned as \"doi\" in plos-search.search results)."
}
},
"additionalProperties": false
}Search the full open-access PLOS research corpus (PLOS ONE, Biology, Medicine, Genetics, Computational Biology, Pathogens, Neglected Tropical Diseases, Global Public Health, Digital Health, Climate, Mental Health, Water, Sustainability and Transformation) by free text or Solr field query, with optional journal filter and sort. Returns DOI, title, journal, authors, abstract, and subjects for each match. Data: api.plos.org, no auth required.
| Argument | Type | Description |
|---|---|---|
| sort | string | Result ordering: "relevance" (default), "date_desc" (newest first), "date_asc" (oldest first). |
| query* | string | Solr query string, e.g. a free-text term ("malaria vaccine") or a field-scoped query ("title:CRISPR" or "author:\"Jane Doe\""). Searches across the full open-access PLOS corpus. |
| journal | string | Restrict results to one PLOS journal (e.g. "PLOS ONE", "PLOS Biology"). |
| max_results | integer | Maximum number of articles to return (1-50, default 10). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"sort": {
"enum": [
"relevance",
"date_desc",
"date_asc"
],
"type": "string",
"description": "Result ordering: \"relevance\" (default), \"date_desc\" (newest first), \"date_asc\" (oldest first)."
},
"query": {
"type": "string",
"minLength": 1,
"description": "Solr query string, e.g. a free-text term (\"malaria vaccine\") or a field-scoped query (\"title:CRISPR\" or \"author:\\\"Jane Doe\\\"\"). Searches across the full open-access PLOS corpus."
},
"journal": {
"enum": [
"PLOS ONE",
"PLOS Biology",
"PLOS Medicine",
"PLOS Genetics",
"PLOS Computational Biology",
"PLOS Pathogens",
"PLOS Neglected Tropical Diseases",
"PLOS Global Public Health",
"PLOS Digital Health",
"PLOS Climate",
"PLOS Mental Health",
"PLOS Water",
"PLOS Sustainability and Transformation"
],
"type": "string",
"description": "Restrict results to one PLOS journal (e.g. \"PLOS ONE\", \"PLOS Biology\")."
},
"max_results": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of articles to return (1-50, default 10)."
}
},
"additionalProperties": false
}Get curated lists of the best podcasts by genre — Technology (127), Business (93), TV & Film (68), Sports (77), Leisure (82), and 60+ more genres. Paginated, returns podcast titles, publishers, episode counts, and descriptions (Listen Notes)
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number (default 1) |
| genre_id | integer | Genre ID to filter (e.g. 93=Business, 127=Technology, 68=TV & Film, 82=Leisure, 77=Sports). Omit for overall best |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"default": 1,
"minimum": 1,
"description": "Page number (default 1)"
},
"genre_id": {
"type": "integer",
"description": "Genre ID to filter (e.g. 93=Business, 127=Technology, 68=TV & Film, 82=Leisure, 77=Sports). Omit for overall best"
}
},
"additionalProperties": false
}Get full details for a podcast by Listen Notes ID — title, publisher, description, episode count, language, country, website, genres, and latest publish date. Use IDs from listennotes.search or listennotes.best (Listen Notes)
| Argument | Type | Description |
|---|---|---|
| id* | string | Listen Notes podcast ID (e.g. "4d3fe717742d4963a85562e9f84d8c79"). Get IDs from listennotes.search or listennotes.best |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "Listen Notes podcast ID (e.g. \"4d3fe717742d4963a85562e9f84d8c79\"). Get IDs from listennotes.search or listennotes.best"
}
},
"additionalProperties": false
}Full-text search across 3.7M+ podcasts and 186M+ episodes. Search by keyword, filter by language and genre, sort by relevance or date. Returns episode titles, podcast names, audio URLs, and duration. The most comprehensive podcast search API available (Listen Notes)
| Argument | Type | Description |
|---|---|---|
| q* | string | Search query — full-text search across 186M+ podcast episodes and 3.7M+ podcasts (e.g. "artificial intelligence", "startup funding", "true crime") |
| type | string | Search type: "episode" (default) searches episode titles/descriptions, "podcast" searches podcast-level metadata |
| limit | integer | Max results (1-10, default 10) |
| offset | integer | Offset for pagination |
| language | string | ISO 639-1 language code (e.g. "en", "es", "fr"). Filters results by podcast language |
| genre_ids | string | Comma-separated genre IDs to filter (e.g. "93,127" for Business+Technology). See Listen Notes genre list |
| sort_by_date | boolean | Sort by date (true) or relevance (false, default) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"minLength": 1,
"description": "Search query — full-text search across 186M+ podcast episodes and 3.7M+ podcasts (e.g. \"artificial intelligence\", \"startup funding\", \"true crime\")"
},
"type": {
"enum": [
"episode",
"podcast"
],
"type": "string",
"default": "episode",
"description": "Search type: \"episode\" (default) searches episode titles/descriptions, \"podcast\" searches podcast-level metadata"
},
"limit": {
"type": "integer",
"default": 10,
"maximum": 10,
"minimum": 1,
"description": "Max results (1-10, default 10)"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Offset for pagination"
},
"language": {
"type": "string",
"description": "ISO 639-1 language code (e.g. \"en\", \"es\", \"fr\"). Filters results by podcast language"
},
"genre_ids": {
"type": "string",
"description": "Comma-separated genre IDs to filter (e.g. \"93,127\" for Business+Technology). See Listen Notes genre list"
},
"sort_by_date": {
"type": "boolean",
"description": "Sort by date (true) or relevance (false, default)"
}
},
"additionalProperties": false
}Get detailed data for any of 900+ Pokemon moves by name or move ID. Returns: type, damage class (physical/special/status), power, accuracy, PP (power points), priority, effect chance, short effect description, full effect text, target scope, generation introduced, and battle metadata (ailment, drain, healing, crit rate, flinch chance). Examples: "tackle" (power 40), "thunderbolt" (power 90, 10% paralysis), "surf" (power 90, hits all adjacent), "swords-dance" (status, raises Attack). Multi-word move names use hyphens: "ice-beam", "fire-blast", "hyper-beam". No auth required; fair-use free API. Source: PokéAPI (pokeapi.co).
| Argument | Type | Description |
|---|---|---|
| name_or_id* | string | number | Move name (e.g. "tackle", "thunderbolt", "surf") or numeric move ID (e.g. 33). Names use hyphens for multi-word moves (e.g. "ice-beam", "fire-blast"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name_or_id"
],
"properties": {
"name_or_id": {
"type": [
"string",
"number"
],
"description": "Move name (e.g. \"tackle\", \"thunderbolt\", \"surf\") or numeric move ID (e.g. 33). Names use hyphens for multi-word moves (e.g. \"ice-beam\", \"fire-blast\")."
}
},
"additionalProperties": false
}Get detailed data for any of 1025+ Pokemon by name or Pokedex ID. Returns: types (e.g. fire/flying), base stats (HP, Attack, Defense, Sp.Atk, Sp.Def, Speed), abilities (including hidden ability), first 20 moves, height (dm), weight (hg), base experience, and sprite image URLs. Examples: "pikachu" (id 25), "charizard" (id 6), "mewtwo" (id 150), "eevee" (id 133). Hyphenated names accepted: "mr-mime", "tapu-koko", "jangmo-o". No auth required; fair-use free API. Source: PokéAPI (pokeapi.co).
| Argument | Type | Description |
|---|---|---|
| name_or_id* | string | number | Pokemon name (e.g. "pikachu", "charizard") or numeric Pokedex ID (e.g. 25, 6). Names are case-insensitive. Hyphenated forms accepted (e.g. "mr-mime", "tapu-koko"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name_or_id"
],
"properties": {
"name_or_id": {
"type": [
"string",
"number"
],
"description": "Pokemon name (e.g. \"pikachu\", \"charizard\") or numeric Pokedex ID (e.g. 25, 6). Names are case-insensitive. Hyphenated forms accepted (e.g. \"mr-mime\", \"tapu-koko\")."
}
},
"additionalProperties": false
}Get species-level information for any Pokemon including Pokedex flavor text, genus (e.g. "Mouse Pokemon"), generation introduced, growth rate, capture rate, base happiness, gender ratio, egg groups, habitat, color, evolution chain URL, and flags for baby/legendary/mythical status. Flavor text is the description shown in the in-game Pokedex (English, from most recent main game). Gender rate: -1 = genderless, 0 = always male, 8 = always female, others are eighths female. Examples: "pikachu", "eevee", "mewtwo", "snorlax". No auth required; fair-use free API. Source: PokéAPI (pokeapi.co).
| Argument | Type | Description |
|---|---|---|
| name_or_id* | string | number | Pokemon species name (e.g. "bulbasaur") or species ID (e.g. 1). Use the base species name, not form names (use "rotom" not "rotom-heat"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name_or_id"
],
"properties": {
"name_or_id": {
"type": [
"string",
"number"
],
"description": "Pokemon species name (e.g. \"bulbasaur\") or species ID (e.g. 1). Use the base species name, not form names (use \"rotom\" not \"rotom-heat\")."
}
},
"additionalProperties": false
}Get the full damage relation chart for any of the 18 Pokemon types. Returns offensive relations (double/half/no damage TO other types) and defensive relations (double/half/no damage FROM other types). Also returns the total count of Pokemon and moves of that type. Valid types: normal, fighting, flying, poison, ground, rock, bug, ghost, steel, fire, water, grass, electric, psychic, ice, dragon, dark, fairy. Useful for team building, battle strategy, and type-effectiveness calculators. No auth required; fair-use free API. Source: PokéAPI (pokeapi.co).
| Argument | Type | Description |
|---|---|---|
| name_or_id* | string | number | Pokemon type name (e.g. "fire", "water", "grass", "electric", "dragon", "ghost") or numeric type ID (e.g. 10 for fire, 11 for water). Valid types: normal, fighting, flying, poison, ground, rock, bug, ghost, steel, fire, water, grass, electric, psychic, ice, dragon, dark, fairy. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name_or_id"
],
"properties": {
"name_or_id": {
"type": [
"string",
"number"
],
"description": "Pokemon type name (e.g. \"fire\", \"water\", \"grass\", \"electric\", \"dragon\", \"ghost\") or numeric type ID (e.g. 10 for fire, 11 for water). Valid types: normal, fighting, flying, poison, ground, rock, bug, ghost, steel, fire, water, grass, electric, psychic, ice, dragon, dark, fairy."
}
},
"additionalProperties": false
}Get balance/allowance on Polymarket
| Argument | Type | Description |
|---|---|---|
| asset_type | string | Asset type: COLLATERAL (USDC) or CONDITIONAL (outcome tokens) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"asset_type": {
"enum": [
"COLLATERAL",
"CONDITIONAL"
],
"type": "string",
"description": "Asset type: COLLATERAL (USDC) or CONDITIONAL (outcome tokens)"
}
},
"additionalProperties": false
}Get detailed info about a prediction market
| Argument | Type | Description |
|---|---|---|
| market_id* | string | Polymarket condition ID or slug |
| include_history | boolean | Include recent price history |
| include_orderbook | boolean | Include current order book snapshot |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"market_id"
],
"properties": {
"market_id": {
"type": "string",
"description": "Polymarket condition ID or slug"
},
"include_history": {
"type": "boolean",
"description": "Include recent price history"
},
"include_orderbook": {
"type": "boolean",
"description": "Include current order book snapshot"
}
},
"additionalProperties": false
}Get price history for a prediction market
| Argument | Type | Description |
|---|---|---|
| days | integer | Number of days of history (1-365) |
| interval | string | Price data interval for history (1h, 4h, 1d, or 1w) |
| market_id* | string | Polymarket condition ID |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"market_id"
],
"properties": {
"days": {
"type": "integer",
"maximum": 365,
"description": "Number of days of history (1-365)"
},
"interval": {
"enum": [
"1h",
"4h",
"1d",
"1w"
],
"type": "string",
"description": "Price data interval for history (1h, 4h, 1d, or 1w)"
},
"market_id": {
"type": "string",
"description": "Polymarket condition ID"
}
},
"additionalProperties": false
}Get order book for a prediction market
| Argument | Type | Description |
|---|---|---|
| depth | integer | Number of price levels per side (1-50) |
| market_id* | string | Polymarket condition ID |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"market_id"
],
"properties": {
"depth": {
"type": "integer",
"maximum": 50,
"description": "Number of price levels per side (1-50)"
},
"market_id": {
"type": "string",
"description": "Polymarket condition ID"
}
},
"additionalProperties": false
}Get midpoint price for a prediction market token
| Argument | Type | Description |
|---|---|---|
| token_id* | string | Polymarket CLOB token ID |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"token_id"
],
"properties": {
"token_id": {
"type": "string",
"description": "Polymarket CLOB token ID"
}
},
"additionalProperties": false
}Search prediction markets on Polymarket
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max number of results (1-100) |
| query* | string | Search query for prediction markets |
| status | string | Filter by market status |
| sort_by | string | Sort order for results |
| category | string | Filter by market category |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"description": "Max number of results (1-100)"
},
"query": {
"type": "string",
"description": "Search query for prediction markets"
},
"status": {
"enum": [
"active",
"resolved",
"all"
],
"type": "string",
"description": "Filter by market status"
},
"sort_by": {
"enum": [
"volume",
"newest",
"ending_soon",
"probability_high",
"probability_low"
],
"type": "string",
"description": "Sort order for results"
},
"category": {
"enum": [
"politics",
"crypto",
"sports",
"finance",
"science",
"culture",
"geopolitics",
"iran",
"economics"
],
"type": "string",
"description": "Filter by market category"
}
},
"additionalProperties": false
}Get trending prediction markets
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max number of results (1-50) |
| sort_by | string | Sort order for trending markets |
| category | string | Filter by market category |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"description": "Max number of results (1-50)"
},
"sort_by": {
"enum": [
"volume_24h",
"newest",
"biggest_move",
"ending_soon"
],
"type": "string",
"description": "Sort order for trending markets"
},
"category": {
"enum": [
"politics",
"crypto",
"sports",
"finance",
"science",
"culture",
"geopolitics"
],
"type": "string",
"description": "Filter by market category"
}
},
"additionalProperties": false
}Cancel an open order on Polymarket
| Argument | Type | Description |
|---|---|---|
| order_id* | string | Polymarket order ID to cancel (from open_orders response) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"order_id"
],
"properties": {
"order_id": {
"type": "string",
"description": "Polymarket order ID to cancel (from open_orders response)"
}
},
"additionalProperties": false
}Get trade history on Polymarket
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max number of results (1-100) |
| market_id | string | Filter trades by market condition ID |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"description": "Max number of results (1-100)"
},
"market_id": {
"type": "string",
"description": "Filter trades by market condition ID"
}
},
"additionalProperties": false
}Get open orders on Polymarket
| Argument | Type | Description |
|---|---|---|
| market_id | string | Filter orders by market condition ID |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"market_id": {
"type": "string",
"description": "Filter orders by market condition ID"
}
},
"additionalProperties": false
}Place a limit order on Polymarket
| Argument | Type | Description |
|---|---|---|
| side* | string | Order side: buy or sell |
| size* | number | Order size in USDC units |
| price* | number | Limit price between 0.01 and 0.99 |
| neg_risk | boolean | Whether this is a negative risk market |
| token_id* | string | Polymarket CLOB token ID to trade |
| tick_size | string | Minimum price increment (e.g. 0.01, 0.001) |
| order_type | string | Order type: Good-Til-Cancelled, Good-Til-Date, Fill-Or-Kill |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"token_id",
"price",
"side",
"size"
],
"properties": {
"side": {
"enum": [
"buy",
"sell"
],
"type": "string",
"description": "Order side: buy or sell"
},
"size": {
"type": "number",
"minimum": 1,
"description": "Order size in USDC units"
},
"price": {
"type": "number",
"maximum": 0.99,
"minimum": 0.01,
"description": "Limit price between 0.01 and 0.99"
},
"neg_risk": {
"type": "boolean",
"description": "Whether this is a negative risk market"
},
"token_id": {
"type": "string",
"description": "Polymarket CLOB token ID to trade"
},
"tick_size": {
"type": "string",
"description": "Minimum price increment (e.g. 0.01, 0.001)"
},
"order_type": {
"enum": [
"GTC",
"GTD",
"FOK"
],
"type": "string",
"description": "Order type: Good-Til-Cancelled, Good-Til-Date, Fill-Or-Kill"
}
},
"additionalProperties": false
}Look up a Japanese postal address by its 7-digit postcode. Returns prefecture, city, suburb, and street-level address in Japanese kanji, hiragana/katakana readings, and romaji, plus JIS administrative code and GPS coordinates. Accepts codes with or without hyphen (e.g. "1500001" or "150-0001"). Coverage: all ~124,000 active Japan Post postcodes, updated regularly. Data source: postcode.teraren.com — MIT license, no auth required.
| Argument | Type | Description |
|---|---|---|
| postcode* | string | Japanese 7-digit postal code with or without hyphen (e.g. "1000001" or "100-0001" for Chiyoda, "1500001" for Shibuya Jinguumae). Hyphens and spaces are stripped automatically. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"postcode"
],
"properties": {
"postcode": {
"type": "string",
"maxLength": 8,
"minLength": 7,
"description": "Japanese 7-digit postal code with or without hyphen (e.g. \"1000001\" or \"100-0001\" for Chiyoda, \"1500001\" for Shibuya Jinguumae). Hyphens and spaces are stripped automatically."
}
},
"additionalProperties": false
}Search Japanese postcodes by free-text query, prefecture code (1–47), or city name. Returns matching postcodes with full address in kanji, kana, and romaji, plus coordinates. Useful for address autocomplete, geocoding Japanese locations, and finding all postcodes in a given area. Queries can mix Japanese (kanji/kana) and romaji. Filter by prefecture JIS code (e.g. 13 for Tokyo, 27 for Osaka) or city name in Japanese. Data source: postcode.teraren.com — MIT license, no auth required.
| Argument | Type | Description |
|---|---|---|
| city | string | Filter by city name in Japanese (e.g. "渋谷区" for Shibuya ward, "大阪市北区" for Kita-ku Osaka). |
| limit | integer | Maximum number of results to return (1–100, default 20). |
| query | string | Free-text search string in Japanese (kanji/kana) or romaji (e.g. "渋谷" for Shibuya, "Shinjuku", "銀座"). Matched against prefecture, city, and suburb fields. |
| prefecture | string | number | Filter by prefecture JIS code (1–47) or prefecture name in Japanese (e.g. 13 or "東京都" for Tokyo, 27 for Osaka). Use the prefectures tool to get all codes. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"city": {
"type": "string",
"description": "Filter by city name in Japanese (e.g. \"渋谷区\" for Shibuya ward, \"大阪市北区\" for Kita-ku Osaka)."
},
"limit": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1,
"description": "Maximum number of results to return (1–100, default 20)."
},
"query": {
"type": "string",
"description": "Free-text search string in Japanese (kanji/kana) or romaji (e.g. \"渋谷\" for Shibuya, \"Shinjuku\", \"銀座\"). Matched against prefecture, city, and suburb fields."
},
"prefecture": {
"type": [
"string",
"number"
],
"description": "Filter by prefecture JIS code (1–47) or prefecture name in Japanese (e.g. 13 or \"東京都\" for Tokyo, 27 for Osaka). Use the prefectures tool to get all codes."
}
},
"additionalProperties": false
}Get the complete list of all 47 Japanese prefectures with JIS codes, official names in kanji, hiragana, katakana, and English, plus geographic region. Use prefecture codes returned here as the "prefecture" filter in the postcode-japan.postal.search tool. Data source: postcode.teraren.com — MIT license, no auth required.
| Argument | Type | Description |
|---|---|---|
| _placeholder | string | No parameters required. Returns all 47 Japanese prefectures with JIS code, names in kanji, hiragana, katakana, English, and region. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"_placeholder": {
"type": "string",
"description": "No parameters required. Returns all 47 Japanese prefectures with JIS code, names in kanji, hiragana, katakana, English, and region."
}
},
"additionalProperties": false
}Get metadata for any Python package from PyPI: version, summary, license, author, dependencies, classifiers, Python version requirements. 550K+ packages. Supports specific version lookup. Complements npm (UC-344) for polyglot dependency intelligence.
| Argument | Type | Description |
|---|---|---|
| package* | string | Python package name (e.g. requests, flask, numpy, anthropic) |
| version | string | Specific version (e.g. 2.31.0). Defaults to latest release. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"package"
],
"properties": {
"package": {
"type": "string",
"minLength": 1,
"description": "Python package name (e.g. requests, flask, numpy, anthropic)"
},
"version": {
"type": "string",
"description": "Specific version (e.g. 2.31.0). Defaults to latest release."
}
},
"additionalProperties": false
}List all published versions of a Python package with upload dates, yanked status, and distribution file types (sdist/wheel). Returns the 50 most recent versions. Useful for dependency auditing, version pinning, and upgrade planning.
| Argument | Type | Description |
|---|---|---|
| package* | string | Python package name to list all versions (e.g. django, pandas, scipy) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"package"
],
"properties": {
"package": {
"type": "string",
"minLength": 1,
"description": "Python package name to list all versions (e.g. django, pandas, scipy)"
}
},
"additionalProperties": false
}Generate a QR code image URL from text or URL — customizable size, color, background, format (PNG/SVG), error correction level. Returns direct image URL (goqr.me)
| Argument | Type | Description |
|---|---|---|
| ecc | string | Error correction level: L (7%), M (15%), Q (25%), H (30%) — higher allows more damage tolerance (default: "L") |
| data* | string | Text or URL to encode into a QR code (required) |
| size | string | Image size in WxH pixels, e.g. "200x200", "400x400" (default: "200x200") |
| color | string | Foreground color as 6-digit hex without #, e.g. "000000" for black (default: "000000") |
| format | string | Image format: "png" or "svg" (default: "png") |
| margin | integer | Quiet zone margin in modules around the QR code (default: 1) |
| bgcolor | string | Background color as 6-digit hex without #, e.g. "ffffff" for white (default: "ffffff") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"data"
],
"properties": {
"ecc": {
"enum": [
"L",
"M",
"Q",
"H"
],
"type": "string",
"description": "Error correction level: L (7%), M (15%), Q (25%), H (30%) — higher allows more damage tolerance (default: \"L\")"
},
"data": {
"type": "string",
"description": "Text or URL to encode into a QR code (required)"
},
"size": {
"type": "string",
"description": "Image size in WxH pixels, e.g. \"200x200\", \"400x400\" (default: \"200x200\")"
},
"color": {
"type": "string",
"description": "Foreground color as 6-digit hex without #, e.g. \"000000\" for black (default: \"000000\")"
},
"format": {
"enum": [
"png",
"svg"
],
"type": "string",
"description": "Image format: \"png\" or \"svg\" (default: \"png\")"
},
"margin": {
"type": "integer",
"maximum": 50,
"minimum": 0,
"description": "Quiet zone margin in modules around the QR code (default: 1)"
},
"bgcolor": {
"type": "string",
"description": "Background color as 6-digit hex without #, e.g. \"ffffff\" for white (default: \"ffffff\")"
}
},
"additionalProperties": false
}Decode a QR code from an image URL — extracts the encoded text or URL from any QR code image (goqr.me)
| Argument | Type | Description |
|---|---|---|
| fileurl* | string | URL of an image containing a QR code to decode (required) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"fileurl"
],
"properties": {
"fileurl": {
"type": "string",
"format": "uri",
"description": "URL of an image containing a QR code to decode (required)"
}
},
"additionalProperties": false
}Get auto loan rate decision for new and used vehicles from US lenders. Returns recommended financing actions, APR rates by term (24-72 months), and estimated monthly payments. Filter by vehicle type and credit tier.
| Argument | Type | Description |
|---|---|---|
| state | string | Two-letter US state code |
| amount | number | Loan amount in USD (e.g. 35000) |
| term_months | string | Loan term: 24, 36, 48, 60, or 72 months |
| credit_score | string | Credit score tier |
| vehicle_type | string | Vehicle type: "new" or "used" |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Two-letter US state code"
},
"amount": {
"type": "number",
"minimum": 1000,
"description": "Loan amount in USD (e.g. 35000)"
},
"term_months": {
"enum": [
"24",
"36",
"48",
"60",
"72"
],
"type": "string",
"description": "Loan term: 24, 36, 48, 60, or 72 months"
},
"credit_score": {
"enum": [
"excellent",
"good",
"fair",
"poor"
],
"type": "string",
"description": "Credit score tier"
},
"vehicle_type": {
"enum": [
"new",
"used"
],
"type": "string",
"description": "Vehicle type: \"new\" or \"used\""
}
},
"additionalProperties": false
}Get Home Equity Line of Credit (HELOC) rate decision. Returns current HELOC APR rates, recommended actions, and lender comparisons. Filter by combined loan-to-value ratio (CLTV), state, and credit score tier.
| Argument | Type | Description |
|---|---|---|
| cltv | number | Combined loan-to-value ratio (0-95) |
| state | string | Two-letter US state code |
| credit_score | string | Credit score tier |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"cltv": {
"type": "number",
"maximum": 95,
"minimum": 0,
"description": "Combined loan-to-value ratio (0-95)"
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Two-letter US state code"
},
"credit_score": {
"enum": [
"excellent",
"good",
"fair",
"poor"
],
"type": "string",
"description": "Credit score tier"
}
},
"additionalProperties": false
}Get AI-powered mortgage rate decision from 4,300+ US lenders. Returns recommended actions, current APR rates, estimated monthly payments, and confidence scores. Supports 30yr/15yr fixed and ARM products. Filter by state, amount, and credit tier.
| Argument | Type | Description |
|---|---|---|
| state | string | Two-letter US state code (e.g. "CA", "NY", "TX") |
| amount | number | Loan amount in USD (e.g. 400000 for a $400K mortgage) |
| intent | string | Loan intent: "purchase" for buying or "refinance" |
| rate_type | string | Rate type: "fixed" or "adjustable" (ARM) |
| term_months | integer | Loan term in months: 180 (15yr), 360 (30yr), or custom |
| credit_score | string | Credit score tier for rate filtering |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Two-letter US state code (e.g. \"CA\", \"NY\", \"TX\")"
},
"amount": {
"type": "number",
"minimum": 10000,
"description": "Loan amount in USD (e.g. 400000 for a $400K mortgage)"
},
"intent": {
"enum": [
"purchase",
"refinance"
],
"type": "string",
"description": "Loan intent: \"purchase\" for buying or \"refinance\""
},
"rate_type": {
"enum": [
"fixed",
"adjustable"
],
"type": "string",
"description": "Rate type: \"fixed\" or \"adjustable\" (ARM)"
},
"term_months": {
"type": "integer",
"description": "Loan term in months: 180 (15yr), 360 (30yr), or custom"
},
"credit_score": {
"enum": [
"excellent",
"good",
"fair",
"poor"
],
"type": "string",
"description": "Credit score tier for rate filtering"
}
},
"additionalProperties": false
}Get personal loan rate decision from US lenders. Returns recommended financing actions, APR rates by term and amount, and monthly payment estimates. Filter by loan amount, term, and credit score tier.
| Argument | Type | Description |
|---|---|---|
| amount | number | Loan amount in USD (e.g. 10000) |
| term_months | string | Loan term: 12, 24, 36, 48, or 60 months |
| credit_score | string | Credit score tier |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"amount": {
"type": "number",
"minimum": 1000,
"description": "Loan amount in USD (e.g. 10000)"
},
"term_months": {
"enum": [
"12",
"24",
"36",
"48",
"60"
],
"type": "string",
"description": "Loan term: 12, 24, 36, 48, or 60 months"
},
"credit_score": {
"enum": [
"excellent",
"good",
"fair",
"poor"
],
"type": "string",
"description": "Credit score tier"
}
},
"additionalProperties": false
}Get full game details by ID or slug — description, platforms, genres, developers, publishers, ratings, Metacritic score, system requirements (RAWG)
| Argument | Type | Description |
|---|---|---|
| id* | any | RAWG game ID (numeric) or slug (e.g. "grand-theft-auto-v", 3498) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"description": "RAWG game ID (numeric) or slug (e.g. \"grand-theft-auto-v\", 3498)"
}
},
"additionalProperties": false
}Get screenshot images for a game — full resolution URLs with dimensions (RAWG)
| Argument | Type | Description |
|---|---|---|
| id* | any | RAWG game ID or slug |
| page | integer | Page number (default 1) |
| page_size | integer | Results per page (default 20, max 40) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"description": "RAWG game ID or slug"
},
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number (default 1)"
},
"page_size": {
"type": "integer",
"maximum": 40,
"minimum": 1,
"description": "Results per page (default 20, max 40)"
}
},
"additionalProperties": false
}Search 800K+ video games — filter by genre, platform, release date, Metacritic score, with ratings, screenshots, and store links (RAWG)
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default 1) |
| dates | string | Filter by release date range YYYY-MM-DD,YYYY-MM-DD (e.g. "2024-01-01,2024-12-31") |
| genres | string | Filter by genre IDs — comma-separated (e.g. "4" for action, "5" for RPG, "4,5" for both) |
| search | string | Search query for games (e.g. "The Witcher", "Red Dead Redemption") |
| ordering | string | Sort field: name, released, added, created, updated, rating, metacritic. Prefix with "-" for descending (e.g. "-rating") |
| page_size | integer | Number of results per page (default 20, max 40) |
| platforms | string | Filter by platform IDs — comma-separated (e.g. "4" for PC, "187" for PS5, "186" for Xbox Series) |
| metacritic | string | Filter by Metacritic score range "min,max" (e.g. "80,100" for highly rated) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)"
},
"dates": {
"type": "string",
"description": "Filter by release date range YYYY-MM-DD,YYYY-MM-DD (e.g. \"2024-01-01,2024-12-31\")"
},
"genres": {
"type": "string",
"description": "Filter by genre IDs — comma-separated (e.g. \"4\" for action, \"5\" for RPG, \"4,5\" for both)"
},
"search": {
"type": "string",
"description": "Search query for games (e.g. \"The Witcher\", \"Red Dead Redemption\")"
},
"ordering": {
"type": "string",
"description": "Sort field: name, released, added, created, updated, rating, metacritic. Prefix with \"-\" for descending (e.g. \"-rating\")"
},
"page_size": {
"type": "integer",
"maximum": 40,
"minimum": 1,
"description": "Number of results per page (default 20, max 40)"
},
"platforms": {
"type": "string",
"description": "Filter by platform IDs — comma-separated (e.g. \"4\" for PC, \"187\" for PS5, \"186\" for Xbox Series)"
},
"metacritic": {
"type": "string",
"description": "Filter by Metacritic score range \"min,max\" (e.g. \"80,100\" for highly rated)"
}
},
"additionalProperties": false
}Get all games in the same series/franchise — sequels, prequels, and spin-offs with ratings and release dates (RAWG)
| Argument | Type | Description |
|---|---|---|
| id* | any | RAWG game ID or slug |
| page | integer | Page number (default 1) |
| page_size | integer | Results per page (default 20, max 40) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"description": "RAWG game ID or slug"
},
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number (default 1)"
},
"page_size": {
"type": "integer",
"maximum": 40,
"minimum": 1,
"description": "Results per page (default 20, max 40)"
}
},
"additionalProperties": false
}Get purchase/download links for a game across stores — Steam, PlayStation Store, Xbox, Epic, GOG, Nintendo (RAWG)
| Argument | Type | Description |
|---|---|---|
| id* | any | RAWG game ID or slug |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"description": "RAWG game ID or slug"
}
},
"additionalProperties": false
}Look up Indian bank branch details (name, address, IFSC capabilities like UPI/NEFT/RTGS/IMPS) by IFSC code. Free, MIT-licensed open data covering all Indian banks.
| Argument | Type | Description |
|---|---|---|
| ifsc_code* | string | 11-character IFSC code (e.g. SBIN0005943). Format: 4 letters (bank code) + 0 + 6 digits (branch code). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"ifsc_code"
],
"properties": {
"ifsc_code": {
"type": "string",
"maxLength": 11,
"minLength": 11,
"description": "11-character IFSC code (e.g. SBIN0005943). Format: 4 letters (bank code) + 0 + 6 digits (branch code)."
}
},
"additionalProperties": false
}Search active for-sale property listings across the US — filter by city, state, ZIP, price range, bedrooms, bathrooms, sqft, property type. Returns address, price, specs, photos. Millions of MLS listings (RapidAPI / Realtor.com data)
| Argument | Type | Description |
|---|---|---|
| city | string | City name, e.g. "Austin" (use with state_code) |
| sort | string | Sort order (default: relevant) |
| limit | integer | Number of results (default 10, max 42) |
| offset | integer | Pagination offset (default 0) |
| beds_min | integer | Minimum number of bedrooms |
| sqft_min | integer | Minimum square footage |
| baths_min | integer | Minimum number of bathrooms |
| price_max | integer | Maximum listing price in USD |
| price_min | integer | Minimum listing price in USD |
| state_code | string | Two-letter US state code, e.g. "TX" |
| postal_code | string | ZIP code, e.g. "78701" (alternative to city+state) |
| property_type | string | Property type filter |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"city": {
"type": "string",
"description": "City name, e.g. \"Austin\" (use with state_code)"
},
"sort": {
"enum": [
"relevant",
"newest",
"price_low",
"price_high",
"open_house_date",
"sqft_high",
"price_reduced_date"
],
"type": "string",
"description": "Sort order (default: relevant)"
},
"limit": {
"type": "integer",
"maximum": 42,
"minimum": 1,
"description": "Number of results (default 10, max 42)"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset (default 0)"
},
"beds_min": {
"type": "integer",
"minimum": 1,
"description": "Minimum number of bedrooms"
},
"sqft_min": {
"type": "integer",
"description": "Minimum square footage"
},
"baths_min": {
"type": "integer",
"minimum": 1,
"description": "Minimum number of bathrooms"
},
"price_max": {
"type": "integer",
"description": "Maximum listing price in USD"
},
"price_min": {
"type": "integer",
"description": "Minimum listing price in USD"
},
"state_code": {
"type": "string",
"maxLength": 2,
"description": "Two-letter US state code, e.g. \"TX\""
},
"postal_code": {
"type": "string",
"description": "ZIP code, e.g. \"78701\" (alternative to city+state)"
},
"property_type": {
"enum": [
"single_family",
"multi_family",
"condo",
"townhomes",
"mobile",
"land",
"farm"
],
"type": "string",
"description": "Property type filter"
}
},
"additionalProperties": false
}Autocomplete location search for US real estate — returns matching cities, ZIP codes, and addresses with coordinates. Use to find valid city/state codes for property searches (RapidAPI / Realtor.com data)
| Argument | Type | Description |
|---|---|---|
| query* | string | Location search query — city name, address, or ZIP code (e.g. "Austin TX", "90210") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"minLength": 2,
"description": "Location search query — city name, address, or ZIP code (e.g. \"Austin TX\", \"90210\")"
}
},
"additionalProperties": false
}Detailed property information by property ID — beds, baths, sqft, year built, lot size, tax assessment, HOA, days on market, photos, last sale price/date. Use for_sale search first to get property_id (RapidAPI / Realtor.com data)
| Argument | Type | Description |
|---|---|---|
| property_id* | string | Property ID from a for_sale search result (e.g. "2734304997") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"property_id"
],
"properties": {
"property_id": {
"type": "string",
"description": "Property ID from a for_sale search result (e.g. \"2734304997\")"
}
},
"additionalProperties": false
}Walk Score (0-100), Transit Score (0-100), and Bike Score (0-100) for any US/Canada address. Measures walkability to amenities, public transit quality, and cycling infrastructure. Industry-standard walkability metric used by 30,000+ websites (Walk Score / Redfin)
| Argument | Type | Description |
|---|---|---|
| address* | string | Full street address, e.g. "1119 8th Avenue Seattle WA 98101" |
| latitude* | number | Latitude of the address (-90 to 90). Use geo.geocode to get coordinates. |
| longitude* | number | Longitude of the address (-180 to 180). Use geo.geocode to get coordinates. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"address",
"latitude",
"longitude"
],
"properties": {
"address": {
"type": "string",
"description": "Full street address, e.g. \"1119 8th Avenue Seattle WA 98101\""
},
"latitude": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude of the address (-90 to 90). Use geo.geocode to get coordinates."
},
"longitude": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude of the address (-180 to 180). Use geo.geocode to get coordinates."
}
},
"additionalProperties": false
}Get a random cocktail recipe with full details — name, category, glass, instructions, ingredients, measures, image. Great for discovery and recommendations (TheCocktailDB)
| Argument | Type | Description |
|---|---|---|
| count | integer | Always returns 1 random cocktail with full recipe |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"count": {
"type": "integer",
"default": 1,
"maximum": 1,
"minimum": 1,
"description": "Always returns 1 random cocktail with full recipe"
}
},
"additionalProperties": false
}Search 10,000+ cocktail recipes by name or filter by ingredient. Returns name, category, glass type, instructions, ingredients with measures, image. Search "margarita" or filter by "Vodka" (TheCocktailDB)
| Argument | Type | Description |
|---|---|---|
| name | string | Cocktail name to search (e.g. "margarita", "mojito", "old fashioned") |
| ingredient | string | Filter by ingredient (e.g. "Vodka", "Rum", "Gin"). Returns cocktails containing this ingredient. Use name OR ingredient, not both. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"name": {
"type": "string",
"description": "Cocktail name to search (e.g. \"margarita\", \"mojito\", \"old fashioned\")"
},
"ingredient": {
"type": "string",
"description": "Filter by ingredient (e.g. \"Vodka\", \"Rum\", \"Gin\"). Returns cocktails containing this ingredient. Use name OR ingredient, not both."
}
},
"additionalProperties": false
}Get full details for a Rijksmuseum artwork by object ID — title (multiple languages), object number, creation date, production location, materials, dimensions, current gallery location. Linked Art JSON-LD format (CIDOC CRM). Use rijks.search to find object IDs first (Rijksmuseum, CC-BY)
| Argument | Type | Description |
|---|---|---|
| object_id* | string | Rijksmuseum numeric ID (e.g. "200107928" for The Night Watch). Use rijks.search to find IDs. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"object_id"
],
"properties": {
"object_id": {
"type": "string",
"minLength": 1,
"description": "Rijksmuseum numeric ID (e.g. \"200107928\" for The Night Watch). Use rijks.search to find IDs."
}
},
"additionalProperties": false
}Search 800,000+ artworks at the Rijksmuseum (Dutch national museum) by title, description, creation date, or object number. Returns Linked Open Data object IDs — use rijks.details for full metadata. Covers Rembrandt, Vermeer, Van Gogh, and centuries of Dutch art. CC-BY license (Rijksmuseum)
| Argument | Type | Description |
|---|---|---|
| title | string | Artwork title search (e.g. "Night Watch", "Self-portrait", "Milkmaid") |
| description | string | Search within artwork descriptions (e.g. "portrait", "landscape") |
| creation_date | string | Filter by creation year or date (e.g. "1642", "1665") |
| object_number | string | Rijksmuseum object number (e.g. "SK-C-5" for Night Watch) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"title": {
"type": "string",
"description": "Artwork title search (e.g. \"Night Watch\", \"Self-portrait\", \"Milkmaid\")"
},
"description": {
"type": "string",
"description": "Search within artwork descriptions (e.g. \"portrait\", \"landscape\")"
},
"creation_date": {
"type": "string",
"description": "Filter by creation year or date (e.g. \"1642\", \"1665\")"
},
"object_number": {
"type": "string",
"description": "Rijksmuseum object number (e.g. \"SK-C-5\" for Night Watch)"
}
},
"additionalProperties": false
}Intelligently match a free-text affiliation string (as found in academic paper bylines or grant records) to research organizations in the ROR registry. Pass the raw affiliation text exactly as it appears — e.g. "Dept. of Physics, Univ. of California, Berkeley, CA, USA" or "Max-Planck-Institut für Astronomie, Heidelberg". ROR's affiliation matching algorithm performs substring detection, name-variant lookup, and scoring to identify candidate organizations. Returns each candidate with: confidence score (0–1), a "chosen" boolean (the best single match), matching_type (e.g. SINGLE SEARCH, COMMON TERMS), and the organization's ROR ID, canonical name, type, and country. Ideal for metadata curation, ORCID affiliation disambiguation, funder acknowledgment normalization, and building organization-level research analytics from unstructured text.
| Argument | Type | Description |
|---|---|---|
| affiliation* | string | Free-text affiliation string to match against the ROR registry, as it appears in an academic paper or grant record (e.g. "Dept. of Physics, Univ. of California, Berkeley, CA, USA"). ROR uses intelligent substring matching to identify the best candidate organizations. Returns each candidate with a confidence score (0–1) and a "chosen" flag. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"affiliation"
],
"properties": {
"affiliation": {
"type": "string",
"minLength": 1,
"description": "Free-text affiliation string to match against the ROR registry, as it appears in an academic paper or grant record (e.g. \"Dept. of Physics, Univ. of California, Berkeley, CA, USA\"). ROR uses intelligent substring matching to identify the best candidate organizations. Returns each candidate with a confidence score (0–1) and a \"chosen\" flag."
}
},
"additionalProperties": false
}Filter the Research Organization Registry (ROR) by organization type, country, and/or status to browse subsets of the 110,000+ global research organizations. Supports combining multiple filters with an optional keyword query. Organization types include: Education (universities, colleges), Healthcare (hospitals, clinics), Company (industry research), Archive (data repositories, libraries), Nonprofit (NGOs, foundations), Government (agencies, national labs), Facility (research infrastructures, telescopes), Funder (grant agencies, funding bodies), and Other. Country is specified as ISO 3166-1 alpha-2 code (US, DE, GB, JP, CN, etc.). Returns total match count and up to 20 results per page with name, type, status, country, city, and website. Useful for generating lists of institutions in a specific country, enumerating funders by country, or counting research organizations by type.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (1-indexed, default 1). Each page returns up to 20 results. |
| query | string | Optional keyword query to narrow results within the filter. Combines with type/country/status filters. |
| types | string | Filter by organization type. Valid values: Education, Healthcare, Company, Archive, Nonprofit, Government, Facility, Funder, Other (e.g. "Education" returns universities and research institutes). |
| status | string | Organization status filter. Valid values: active (default), inactive, withdrawn. Use "inactive" or "withdrawn" to include legacy records. |
| country_code | string | ISO 3166-1 alpha-2 country code to filter organizations by country (e.g. "US", "DE", "GB", "JP"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (1-indexed, default 1). Each page returns up to 20 results."
},
"query": {
"type": "string",
"description": "Optional keyword query to narrow results within the filter. Combines with type/country/status filters."
},
"types": {
"type": "string",
"description": "Filter by organization type. Valid values: Education, Healthcare, Company, Archive, Nonprofit, Government, Facility, Funder, Other (e.g. \"Education\" returns universities and research institutes)."
},
"status": {
"type": "string",
"description": "Organization status filter. Valid values: active (default), inactive, withdrawn. Use \"inactive\" or \"withdrawn\" to include legacy records."
},
"country_code": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO 3166-1 alpha-2 country code to filter organizations by country (e.g. \"US\", \"DE\", \"GB\", \"JP\")."
}
},
"additionalProperties": false
}Retrieve full details for a specific research organization from the Research Organization Registry (ROR) using its unique ROR identifier. Accepts the full URL format (https://ror.org/042nb2s44) or the short alphanumeric ID (042nb2s44). Returns comprehensive organization metadata including all name variants in multiple languages, organization type (Education, Funder, Healthcare, Company, Government, etc.), current status, founding year, primary location with coordinates, official website and Wikipedia URL, cross-registry identifiers (GRID, ISNI, Wikidata, FundRef), and parent/child/related organization relationships. Use after ror.organizations.search to get complete details for a found organization, or when you already know the ROR ID from scholarly metadata.
| Argument | Type | Description |
|---|---|---|
| ror_id* | string | ROR identifier for the organization. Accepts the full URL format (e.g. "https://ror.org/042nb2s44") or the short alphanumeric ID (e.g. "042nb2s44"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"ror_id"
],
"properties": {
"ror_id": {
"type": "string",
"minLength": 1,
"description": "ROR identifier for the organization. Accepts the full URL format (e.g. \"https://ror.org/042nb2s44\") or the short alphanumeric ID (e.g. \"042nb2s44\")."
}
},
"additionalProperties": false
}Search the Research Organization Registry (ROR) for research institutions, universities, hospitals, companies, government agencies, and funders by name, acronym, or keyword. ROR is the open community-driven registry of 110,000+ research organizations worldwide, maintained by DataCite, CrossRef, and the California Digital Library. Each organization has a unique persistent ROR ID (e.g. https://ror.org/042nb2s44 for MIT) used in scholarly metadata, grant systems, and repositories like PubMed, Zenodo, and DataCite. Returns up to 20 results per page with name, acronym, types (Education/Funder/Healthcare/etc.), status, country, city, founding year, and website. Use page parameter to paginate. Ideal for disambiguating author affiliations, validating institution names, and building bibliometric analyses of research output by organization.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (1-indexed, default 1). Each page returns up to 20 results. |
| query* | string | Keyword query to search research organizations by name, acronym, alias, or domain (e.g. "MIT", "Stanford University", "CERN"). |
| all_status | boolean | When true, include inactive and withdrawn organizations in results. By default only active organizations are returned. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (1-indexed, default 1). Each page returns up to 20 results."
},
"query": {
"type": "string",
"minLength": 1,
"description": "Keyword query to search research organizations by name, acronym, alias, or domain (e.g. \"MIT\", \"Stanford University\", \"CERN\")."
},
"all_status": {
"type": "boolean",
"description": "When true, include inactive and withdrawn organizations in results. By default only active organizations are returned."
}
},
"additionalProperties": false
}Retrieve pharmacological and therapeutic classifications for a drug by its RxCUI. Returns mappings to multiple classification systems: ATC (WHO Anatomical Therapeutic Chemical hierarchy used globally), VA Drug Class (US Veterans Affairs system), EPC (FDA Established Pharmacologic Class from drug labels), MOA (Mechanism of Action), and PE (Physiologic Effect). Useful for therapeutic substitution, formulary management, drug utilization reviews, and identifying drug classes for adverse event analysis. Each classification entry includes the class ID, name, type, relationship, and source system.
| Argument | Type | Description |
|---|---|---|
| rxcui* | string | RxNorm concept unique identifier (RxCUI) of the drug ingredient or concept (e.g. "1191" for aspirin). Obtain from rxnorm.drug_search or rxnorm.rxcui_properties. |
| source | string | Filter by classification source. Options: ATCPROD (ATC WHO), VA (Veterans Affairs), FDASPL (FDA SPL/EPC), DAILYMED (DailyMed), RXNORM (RxNorm). Omit to include all sources. |
| class_types | string | Space-separated list of drug classification systems to query. Options: ATC1-4 (WHO Anatomical Therapeutic Chemical), VA (VA Drug Class), EPC (FDA Established Pharmacologic Class), MOA (Mechanism of Action), PE (Physiologic Effect), MESH (MeSH pharmacological actions), DISEASE (indications). Omit to return all available classifications. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"rxcui"
],
"properties": {
"rxcui": {
"type": "string",
"minLength": 1,
"description": "RxNorm concept unique identifier (RxCUI) of the drug ingredient or concept (e.g. \"1191\" for aspirin). Obtain from rxnorm.drug_search or rxnorm.rxcui_properties."
},
"source": {
"type": "string",
"description": "Filter by classification source. Options: ATCPROD (ATC WHO), VA (Veterans Affairs), FDASPL (FDA SPL/EPC), DAILYMED (DailyMed), RXNORM (RxNorm). Omit to include all sources."
},
"class_types": {
"type": "string",
"description": "Space-separated list of drug classification systems to query. Options: ATC1-4 (WHO Anatomical Therapeutic Chemical), VA (VA Drug Class), EPC (FDA Established Pharmacologic Class), MOA (Mechanism of Action), PE (Physiologic Effect), MESH (MeSH pharmacological actions), DISEASE (indications). Omit to return all available classifications."
}
},
"additionalProperties": false
}Look up a drug product by its National Drug Code (NDC) to retrieve its RxNorm mapping and active status. The NDC is the 10- or 11-digit code printed on every US drug package. Returns the standardized 11-digit NDC, current active/inactive status in RxNorm, the mapped RxCUI, the concept name, and the data sources that include this NDC. Useful for medication verification, formulary checks, and cross-referencing between pharmacy systems and RxNorm.
| Argument | Type | Description |
|---|---|---|
| ndc* | string | National Drug Code (NDC) in any of the standard formats: 10-digit (0069-3060-86), 11-digit (00069306086), or hyphenated (0069-3060-86). Found on drug packaging labels in the US. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"ndc"
],
"properties": {
"ndc": {
"type": "string",
"minLength": 1,
"description": "National Drug Code (NDC) in any of the standard formats: 10-digit (0069-3060-86), 11-digit (00069306086), or hyphenated (0069-3060-86). Found on drug packaging labels in the US."
}
},
"additionalProperties": false
}Retrieve detailed RxNorm properties for a drug concept identified by its RxCUI (RxNorm Concept Unique Identifier). Returns the canonical name, synonym, term type (TTY), language, and suppression status. The RxCUI is the definitive US drug identifier — used in medication reconciliation, clinical decision support, and insurance formularies. Obtain the RxCUI by searching with rxnorm.drugs.search first.
| Argument | Type | Description |
|---|---|---|
| rxcui* | string | RxNorm concept unique identifier (RxCUI) — a numeric string assigned by NLM (e.g. "1191" for aspirin, "161" for acetaminophen). Obtain from rxnorm.drug_search. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"rxcui"
],
"properties": {
"rxcui": {
"type": "string",
"minLength": 1,
"description": "RxNorm concept unique identifier (RxCUI) — a numeric string assigned by NLM (e.g. \"1191\" for aspirin, \"161\" for acetaminophen). Obtain from rxnorm.drug_search."
}
},
"additionalProperties": false
}Search the NIH RxNorm drug database by generic name, brand name, or ingredient. Returns standardized drug concepts with their RxCUI identifiers, term types (ingredient, brand name, clinical drug, branded drug), and synonyms. RxNorm is the US standard drug nomenclature used by EHRs, pharmacies, and insurers. Use the RxCUI from results with rxnorm.drugs.properties and rxnorm.drugs.class for deeper drug information. Filter by term type (tty) to focus on ingredients (IN), brand names (BN), or clinical drug formulations (SCD/SBD).
| Argument | Type | Description |
|---|---|---|
| tty | string | Filter by RxNorm term type (TTY). Common values: IN=Ingredient, BN=Brand Name, SCD=Semantic Clinical Drug (includes dose/form), SBD=Semantic Branded Drug. Omit to return all types. |
| name* | string | Drug name to search — generic name (e.g. "aspirin"), brand name (e.g. "Tylenol"), or ingredient (e.g. "acetaminophen") |
| limit | integer | Maximum number of drug concepts to return (1–100, default 20) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"tty": {
"enum": [
"IN",
"PIN",
"MIN",
"SCD",
"SBD",
"BN",
"SCDC",
"SCDF",
"SBDC",
"SBDF",
"GPCK",
"BPCK"
],
"type": "string",
"description": "Filter by RxNorm term type (TTY). Common values: IN=Ingredient, BN=Brand Name, SCD=Semantic Clinical Drug (includes dose/form), SBD=Semantic Branded Drug. Omit to return all types."
},
"name": {
"type": "string",
"minLength": 1,
"description": "Drug name to search — generic name (e.g. \"aspirin\"), brand name (e.g. \"Tylenol\"), or ingredient (e.g. \"acetaminophen\")"
},
"limit": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1,
"description": "Maximum number of drug concepts to return (1–100, default 20)"
}
},
"additionalProperties": false
}Find cheapest flight destinations from an origin airport
| Argument | Type | Description |
|---|---|---|
| origin* | string | Origin airport IATA code (e.g. JFK, LAX) |
| max_fare | number | Maximum fare in USD to filter results |
| return_date* | string | Return date in YYYY-MM-DD format |
| point_of_sale | string | 2-letter country code for pricing (e.g. US, GB) |
| departure_date* | string | Departure date in YYYY-MM-DD format |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"origin",
"departure_date",
"return_date"
],
"properties": {
"origin": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "Origin airport IATA code (e.g. JFK, LAX)"
},
"max_fare": {
"type": "number",
"description": "Maximum fare in USD to filter results",
"exclusiveMinimum": 0
},
"return_date": {
"type": "string",
"description": "Return date in YYYY-MM-DD format"
},
"point_of_sale": {
"type": "string",
"default": "US",
"maxLength": 2,
"minLength": 2,
"description": "2-letter country code for pricing (e.g. US, GB)"
},
"departure_date": {
"type": "string",
"description": "Departure date in YYYY-MM-DD format"
}
},
"additionalProperties": false
}Search for real-time flight offers with prices between airports (Sabre GDS)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max number of flight offers (1-50) |
| origin* | string | Origin airport IATA code (e.g. JFK, LAX) |
| destination* | string | Destination airport IATA code (e.g. CDG, LHR) |
| return_date | string | Return date in YYYY-MM-DD format for round trips |
| point_of_sale | string | 2-letter country code for pricing (e.g. US, GB) |
| departure_date* | string | Departure date in YYYY-MM-DD format |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"origin",
"destination",
"departure_date"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Max number of flight offers (1-50)"
},
"origin": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "Origin airport IATA code (e.g. JFK, LAX)"
},
"destination": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "Destination airport IATA code (e.g. CDG, LHR)"
},
"return_date": {
"type": "string",
"description": "Return date in YYYY-MM-DD format for round trips"
},
"point_of_sale": {
"type": "string",
"default": "US",
"maxLength": 2,
"minLength": 2,
"description": "2-letter country code for pricing (e.g. US, GB)"
},
"departure_date": {
"type": "string",
"description": "Departure date in YYYY-MM-DD format"
}
},
"additionalProperties": false
}Look up airline details by IATA or ICAO code
| Argument | Type | Description |
|---|---|---|
| airline_code* | string | Airline IATA (2-char) or ICAO (3-char) code |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"airline_code"
],
"properties": {
"airline_code": {
"type": "string",
"maxLength": 3,
"minLength": 2,
"description": "Airline IATA (2-char) or ICAO (3-char) code"
}
},
"additionalProperties": false
}Get travel theme categories (beach, skiing, romantic, etc.)
| Argument | Type | Description |
|---|---|---|
| locale | string | Response locale (e.g. en-US, de-DE) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"locale": {
"type": "string",
"description": "Response locale (e.g. en-US, de-DE)"
}
},
"additionalProperties": false
}Get full SAM.gov registration details for a federal contractor by UEI (Unique Entity Identifier). Returns legal name, CAGE code, addresses, NAICS/PSC codes, business certifications, entity structure, organization type, and registration dates. Source: SAM.gov (GSA).
| Argument | Type | Description |
|---|---|---|
| uei* | string | Unique Entity Identifier (UEI) — 12-character SAM.gov ID (e.g. KM99JJBNQ9M5 for Lockheed Martin) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"uei"
],
"properties": {
"uei": {
"type": "string",
"minLength": 1,
"description": "Unique Entity Identifier (UEI) — 12-character SAM.gov ID (e.g. KM99JJBNQ9M5 for Lockheed Martin)"
}
},
"additionalProperties": false
}Search 700K+ registered US federal contractors and grantees by company name, state, or NAICS code. Returns UEI (Unique Entity Identifier), CAGE code, registration status, business types (Small Business, 8(a), HUBZone, WOSB, Veteran-Owned), and NAICS codes. Source: SAM.gov (GSA).
| Argument | Type | Description |
|---|---|---|
| name* | string | Company or organization name to search (e.g. "Lockheed", "Google", "Deloitte"). Supports partial match. |
| limit | integer | Number of results (1-25, default 10) |
| state | string | US state code to filter (e.g. VA, CA, TX) |
| naics_code | string | NAICS industry code to filter (e.g. 541512 for Computer Systems Design) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"minLength": 1,
"description": "Company or organization name to search (e.g. \"Lockheed\", \"Google\", \"Deloitte\"). Supports partial match."
},
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Number of results (1-25, default 10)"
},
"state": {
"type": "string",
"maxLength": 2,
"description": "US state code to filter (e.g. VA, CA, TX)"
},
"naics_code": {
"type": "string",
"description": "NAICS industry code to filter (e.g. 541512 for Computer Systems Design)"
}
},
"additionalProperties": false
}Get Auditor-General of South Africa (AGSA) audit outcomes for municipalities. Opinion codes: clean=Clean Audit, unqualified_emphasis_of_matter=Unqualified with Emphasis of Matter, qualified=Qualified Opinion, adverse=Adverse Opinion, disclaimer=Disclaimer of Opinion. Returns year, opinion label, and PDF report URL. Filter by demarcation code and/or year. Data covers 2010-2024 for all 257 municipalities. Useful for transparency reporting, credit risk assessment, and governance analysis. No auth required. Source: SA National Treasury MFMA data portal.
| Argument | Type | Description |
|---|---|---|
| year | integer | Financial year-end filter (e.g. 2022 = financial year ended June 2022). Range: 2010-2024. |
| limit | integer | Maximum number of audit opinion records to return (1-100, default 20). |
| demarcation_code | string | Municipality demarcation code to filter (e.g. CPT=Cape Town, JHB=Johannesburg, ETH=eThekwini/Durban, TSH=Tshwane, EKU=Ekurhuleni). Omit to retrieve opinions across all municipalities. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"year": {
"type": "integer",
"maximum": 2024,
"minimum": 2010,
"description": "Financial year-end filter (e.g. 2022 = financial year ended June 2022). Range: 2010-2024."
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of audit opinion records to return (1-100, default 20)."
},
"demarcation_code": {
"type": "string",
"maxLength": 6,
"minLength": 2,
"description": "Municipality demarcation code to filter (e.g. CPT=Cape Town, JHB=Johannesburg, ETH=eThekwini/Durban, TSH=Tshwane, EKU=Ekurhuleni). Omit to retrieve opinions across all municipalities."
}
},
"additionalProperties": false
}Get income and expenditure (Statement of Financial Performance) data for a South African municipality. Returns audited actual (AUDA) annual line items from the mSCOA chart of accounts. Covers revenue sources (rates, grants, service charges) and expenditure categories (employee costs, repairs, capital transfers). Data is Section 71-level aggregation from 2019-20 onwards. Requires demarcation code (e.g. CPT, JHB, ETH, TSH, EKU, BUF). No auth required. Source: SA National Treasury MFMA incexp_v2 cube.
| Argument | Type | Description |
|---|---|---|
| year | integer | Financial year-end to retrieve (e.g. 2022). Omit for all available years. Returns audited actual figures (AUDA) at annual period level. |
| limit | integer | Maximum line items to return (1-200, default 50). |
| demarcation_code* | string | Municipality demarcation code (e.g. CPT=Cape Town, JHB=Johannesburg, ETH=eThekwini, TSH=Tshwane, EKU=Ekurhuleni, BUF=Buffalo City). Required. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"demarcation_code"
],
"properties": {
"year": {
"type": "integer",
"maximum": 2024,
"minimum": 2010,
"description": "Financial year-end to retrieve (e.g. 2022). Omit for all available years. Returns audited actual figures (AUDA) at annual period level."
},
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Maximum line items to return (1-200, default 50)."
},
"demarcation_code": {
"type": "string",
"maxLength": 6,
"minLength": 2,
"description": "Municipality demarcation code (e.g. CPT=Cape Town, JHB=Johannesburg, ETH=eThekwini, TSH=Tshwane, EKU=Ekurhuleni, BUF=Buffalo City). Required."
}
},
"additionalProperties": false
}List all South African municipalities registered with the National Treasury. Returns up to 300 municipalities with demarcation code, name, province, category, phone number, and website URL. Filter by province code (EC, GP, KZN, WC, etc.) or category (A=Metro, B=Local, C=District). South Africa has 8 metropolitan (A), ~205 local (B), and 44 district (C) municipalities. Demarcation codes are needed for other samuni tools (e.g. CPT=Cape Town, JHB=Johannesburg, ETH=eThekwini/Durban, TSH=Tshwane, EKU=Ekurhuleni). No auth required. Source: SA National Treasury Municipal Finance Management Act (MFMA) data portal.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of municipalities to return (1-300, default 50). Use 300 for full list. |
| category | string | Municipality category: A=Metropolitan, B=Local (most), C=District. SA has 8 metros (A), ~205 local (B), and 44 district (C) municipalities. |
| province_code | string | Filter by province code: EC=Eastern Cape, FS=Free State, GP=Gauteng, KZN=KwaZulu-Natal, LP=Limpopo, MP=Mpumalanga, NC=Northern Cape, NW=North West, WC=Western Cape |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 300,
"minimum": 1,
"description": "Maximum number of municipalities to return (1-300, default 50). Use 300 for full list."
},
"category": {
"enum": [
"A",
"B",
"C"
],
"type": "string",
"description": "Municipality category: A=Metropolitan, B=Local (most), C=District. SA has 8 metros (A), ~205 local (B), and 44 district (C) municipalities."
},
"province_code": {
"enum": [
"EC",
"FS",
"GP",
"KZN",
"LP",
"MP",
"NC",
"NW",
"WC"
],
"type": "string",
"description": "Filter by province code: EC=Eastern Cape, FS=Free State, GP=Gauteng, KZN=KwaZulu-Natal, LP=Limpopo, MP=Mpumalanga, NC=Northern Cape, NW=North West, WC=Western Cape"
}
},
"additionalProperties": false
}Get contact details for senior officials of a South African municipality. Returns role, name, title, email address, and phone number. Common roles: Mayor/Executive Mayor, Deputy Mayor/Executive Mayor, Municipal Manager, Chief Financial Officer, Speaker, Chief Audit Executive. Requires demarcation code (e.g. CPT=Cape Town, JHB=Johannesburg, ETH=eThekwini). No auth required. Source: SA National Treasury MFMA officials cube.
| Argument | Type | Description |
|---|---|---|
| role | string | Filter by role name (e.g. "Mayor/Executive Mayor", "Chief Financial Officer", "Municipal Manager"). Case-sensitive, partial matches not supported. |
| demarcation_code* | string | Municipality demarcation code to look up officials for (e.g. CPT=Cape Town, JHB=Johannesburg, ETH=eThekwini, TSH=Tshwane). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"demarcation_code"
],
"properties": {
"role": {
"type": "string",
"description": "Filter by role name (e.g. \"Mayor/Executive Mayor\", \"Chief Financial Officer\", \"Municipal Manager\"). Case-sensitive, partial matches not supported."
},
"demarcation_code": {
"type": "string",
"maxLength": 6,
"minLength": 2,
"description": "Municipality demarcation code to look up officials for (e.g. CPT=Cape Town, JHB=Johannesburg, ETH=eThekwini, TSH=Tshwane)."
}
},
"additionalProperties": false
}Browse the SCB statistics database tree by path. Top-level categories: BE (population), AM (labour market), HE (households), NR (national accounts), PR (prices/inflation), MI (environment), AA (general), BO (housing), EN (energy), FM (financial markets), HA (trade), JO (agriculture), LE (living conditions). Returns child nodes (subcategories, type=l) or table descriptors at leaf nodes (type=t). Use empty path '' to get top-level. Navigate hierarchically to find tables for scb.table_metadata.
| Argument | Type | Description |
|---|---|---|
| path | string | Hierarchical path through SCB taxonomy. Empty '' gets top-level categories. Examples: 'BE' (population), 'BE/BE0101' (population statistics tables), 'AM' (labour market), 'NR' (national accounts), 'PR' (prices/inflation), 'MI' (environment), 'HE' (household finances). Use scb.catalog recursively to navigate until type=t (table leaf) nodes appear. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"path": {
"type": "string",
"default": "",
"description": "Hierarchical path through SCB taxonomy. Empty '' gets top-level categories. Examples: 'BE' (population), 'BE/BE0101' (population statistics tables), 'AM' (labour market), 'NR' (national accounts), 'PR' (prices/inflation), 'MI' (environment), 'HE' (household finances). Use scb.catalog recursively to navigate until type=t (table leaf) nodes appear."
}
},
"additionalProperties": false
}Get metadata for a specific SCB statistical table — title, dimensions (variables like Region, Alder/age, Kon/sex, Tid/year), valid value codes for each dimension, and latest update timestamp. Use this BEFORE scb.table_query to discover what filter values are accepted. Example path: 'BE/BE0101/BE0101A/BefolkningNy' (Sweden population by region/age/sex/year).
| Argument | Type | Description |
|---|---|---|
| table_path* | string | Full path to a leaf table (type='t' from scb.catalog), e.g. 'BE/BE0101/BE0101A/BefolkningNy' (Sweden population by region/age/sex/year). 'AM/AKU/AKU01/AKU01A' (labour market, employed persons). Returns title, dimension codes, and valid values to use in scb.table_query. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"table_path"
],
"properties": {
"table_path": {
"type": "string",
"description": "Full path to a leaf table (type='t' from scb.catalog), e.g. 'BE/BE0101/BE0101A/BefolkningNy' (Sweden population by region/age/sex/year). 'AM/AKU/AKU01/AKU01A' (labour market, employed persons). Returns title, dimension codes, and valid values to use in scb.table_query."
}
},
"additionalProperties": false
}Run a statistical query against an SCB table — specify dimension filters to slice data by region, age, sex, year, etc. Returns JSON-stat2 format with labeled dimensions and numeric values. Call scb.table_metadata first to discover valid dimension codes and value codes. Example: Sweden total population (Region='00', filter='vs:RegionRiket99'), latest year (Tid filter='top' values=['1']).
| Argument | Type | Description |
|---|---|---|
| query* | array | Array of dimension filters. Each filter selects which values to include for one dimension. Example: [{code:'Region',selection:{filter:'vs:RegionRiket99',values:['00']}}, {code:'ContentsCode',selection:{filter:'item',values:['BE0101N1']}}, {code:'Tid',selection:{filter:'top',values:['1']}}]. Response is JSON-stat2 format with dimension labels and numeric values array. |
| table_path* | string | Full path to the leaf table to query — same as scb.table_metadata table_path. Example: 'BE/BE0101/BE0101A/BefolkningNy'. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"table_path",
"query"
],
"properties": {
"query": {
"type": "array",
"items": {
"type": "object",
"required": [
"code",
"selection"
],
"properties": {
"code": {
"type": "string",
"description": "Dimension code from scb.table_metadata variables[].code. Examples: 'Region', 'Alder', 'Kon', 'Tid', 'ContentsCode'."
},
"selection": {
"type": "object",
"required": [
"filter",
"values"
],
"properties": {
"filter": {
"type": "string",
"description": "Filter type. Common values: 'item' (select by exact code), 'vs:RegionRiket99' (Sweden total), 'vs:RegionKommun07' (municipality level), 'top' (select N most recent — use with Tid/year dimensions), 'all' (all values). Use the valueSet codes from metadata."
},
"values": {
"type": "array",
"items": {
"type": "string"
},
"description": "Array of value codes to select. Get valid codes from scb.table_metadata variables[].values. For filter='item': list codes like ['00','01']. For filter='top': list count like ['3'] (3 most recent). For filter='all': use ['*']. Example: Region '00' = Sweden total, Kon '1'=men '2'=women."
}
},
"description": "Selection criteria for this dimension.",
"additionalProperties": false
}
},
"description": "Filter for one dimension (variable) in the table.",
"additionalProperties": false
},
"description": "Array of dimension filters. Each filter selects which values to include for one dimension. Example: [{code:'Region',selection:{filter:'vs:RegionRiket99',values:['00']}}, {code:'ContentsCode',selection:{filter:'item',values:['BE0101N1']}}, {code:'Tid',selection:{filter:'top',values:['1']}}]. Response is JSON-stat2 format with dimension labels and numeric values array."
},
"table_path": {
"type": "string",
"description": "Full path to the leaf table to query — same as scb.table_metadata table_path. Example: 'BE/BE0101/BE0101A/BefolkningNy'."
}
},
"additionalProperties": false
}Get molecular formula and molecular weight for any compound by name, CAS number, or SMILES. Returns formula (e.g. "C9H8O4" for aspirin) and weight in daltons (e.g. 180.157). Accepts any chemical identifier format (NCI CACTUS)
| Argument | Type | Description |
|---|---|---|
| identifier* | string | Chemical identifier — compound name (e.g. "ibuprofen"), CAS number (e.g. "15687-27-1"), or SMILES string. Returns molecular formula and weight |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"identifier"
],
"properties": {
"identifier": {
"type": "string",
"minLength": 1,
"description": "Chemical identifier — compound name (e.g. \"ibuprofen\"), CAS number (e.g. \"15687-27-1\"), or SMILES string. Returns molecular formula and weight"
}
},
"additionalProperties": false
}Get all known names, synonyms, CAS numbers, and registry IDs for a chemical compound. Input any identifier (name, CAS, SMILES, InChIKey) and get the full list of aliases. Useful for finding alternative names, trade names, and cross-references (NCI CACTUS)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of names/synonyms to return (1-100). Default: 20 |
| identifier* | string | Chemical identifier to look up synonyms for — compound name, CAS number, SMILES, or InChIKey (e.g. "aspirin", "50-78-2") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"identifier"
],
"properties": {
"limit": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1,
"description": "Maximum number of names/synonyms to return (1-100). Default: 20"
},
"identifier": {
"type": "string",
"minLength": 1,
"description": "Chemical identifier to look up synonyms for — compound name, CAS number, SMILES, or InChIKey (e.g. \"aspirin\", \"50-78-2\")"
}
},
"additionalProperties": false
}Convert any chemical identifier to SMILES, InChI, and InChIKey. Input a compound name (e.g. "aspirin"), CAS number (e.g. "50-78-2"), SMILES, or InChIKey and get all other representations. The only universal chemical ID converter — essential for chemistry workflows and cross-database lookups (NCI CACTUS)
| Argument | Type | Description |
|---|---|---|
| output | string | Output format: "all" (SMILES + InChI + InChIKey), "smiles" (canonical SMILES only), "stdinchi" (Standard InChI only), "stdinchikey" (InChIKey only). Default: "all" |
| identifier* | string | Chemical identifier to resolve — compound name (e.g. "aspirin", "caffeine"), CAS number (e.g. "50-78-2"), SMILES (e.g. "CC(=O)Oc1ccccc1C(O)=O"), or InChIKey (e.g. "BSYNRYMUTXBXSQ-UHFFFAOYSA-N") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"identifier"
],
"properties": {
"output": {
"enum": [
"all",
"smiles",
"stdinchi",
"stdinchikey"
],
"type": "string",
"default": "all",
"description": "Output format: \"all\" (SMILES + InChI + InChIKey), \"smiles\" (canonical SMILES only), \"stdinchi\" (Standard InChI only), \"stdinchikey\" (InChIKey only). Default: \"all\""
},
"identifier": {
"type": "string",
"minLength": 1,
"description": "Chemical identifier to resolve — compound name (e.g. \"aspirin\", \"caffeine\"), CAS number (e.g. \"50-78-2\"), SMILES (e.g. \"CC(=O)Oc1ccccc1C(O)=O\"), or InChIKey (e.g. \"BSYNRYMUTXBXSQ-UHFFFAOYSA-N\")"
}
},
"additionalProperties": false
}Look up a gene by symbol (e.g. "BRCA1", "TP53") in any of 300+ vertebrate and non-vertebrate species. Returns Ensembl gene ID, genomic coordinates, biotype, description, and (optionally) the full list of transcripts with their coordinates. Data: rest.ensembl.org (EMBL-EBI / Wellcome Sanger Institute), no auth required.
| Argument | Type | Description |
|---|---|---|
| expand | boolean | Include the list of transcripts for this gene in the response. Default: true |
| symbol* | string | Gene symbol to look up (e.g. "BRCA1", "TP53", "EGFR") |
| species* | string | Species name in Ensembl format — scientific snake_case (e.g. "homo_sapiens", "mus_musculus") or common alias (e.g. "human", "mouse") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"species",
"symbol"
],
"properties": {
"expand": {
"type": "boolean",
"default": true,
"description": "Include the list of transcripts for this gene in the response. Default: true"
},
"symbol": {
"type": "string",
"minLength": 1,
"description": "Gene symbol to look up (e.g. \"BRCA1\", \"TP53\", \"EGFR\")"
},
"species": {
"type": "string",
"minLength": 1,
"description": "Species name in Ensembl format — scientific snake_case (e.g. \"homo_sapiens\", \"mus_musculus\") or common alias (e.g. \"human\", \"mouse\")"
}
},
"additionalProperties": false
}Retrieve the raw DNA sequence for a genomic region (e.g. "17:7668402-7687550" on GRCh38). Returns the nucleotide sequence, molecule type, and sequence length. Useful for primer design, variant context, and comparative sequence analysis. Data: rest.ensembl.org (EMBL-EBI / Wellcome Sanger Institute), no auth required.
| Argument | Type | Description |
|---|---|---|
| region* | string | Genomic region in "chromosome:start-end" format, GRCh38 coordinates (e.g. "X:1000000-1000100", "17:7668402-7687550" for TP53) |
| species* | string | Species name in Ensembl format — scientific snake_case (e.g. "homo_sapiens") or common alias (e.g. "human", "mouse") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"species",
"region"
],
"properties": {
"region": {
"type": "string",
"minLength": 1,
"description": "Genomic region in \"chromosome:start-end\" format, GRCh38 coordinates (e.g. \"X:1000000-1000100\", \"17:7668402-7687550\" for TP53)"
},
"species": {
"type": "string",
"minLength": 1,
"description": "Species name in Ensembl format — scientific snake_case (e.g. \"homo_sapiens\") or common alias (e.g. \"human\", \"mouse\")"
}
},
"additionalProperties": false
}Get the full taxonomic record for a species by its ITIS TSN (Taxonomic Serial Number): accepted scientific name, author, kingdom, taxonomic rank, parent taxon, validity/usage status, known synonyms, and common names in multiple languages (itis.gov, USGS public data)
| Argument | Type | Description |
|---|---|---|
| tsn* | string | Taxonomic Serial Number (TSN) — ITIS's unique numeric identifier for a taxon, e.g. "180543" for Ursus arctos. Obtain a TSN from itistaxonomy.search_scientific_name or itistaxonomy.search_common_name. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"tsn"
],
"properties": {
"tsn": {
"type": "string",
"minLength": 1,
"description": "Taxonomic Serial Number (TSN) — ITIS's unique numeric identifier for a taxon, e.g. \"180543\" for Ursus arctos. Obtain a TSN from itistaxonomy.search_scientific_name or itistaxonomy.search_common_name."
}
},
"additionalProperties": false
}Search the ITIS database by common (vernacular) name or partial name, e.g. "cougar" or "grizzly bear". Returns matching taxa with their TSN and the language of the common name (itis.gov, USGS public data)
| Argument | Type | Description |
|---|---|---|
| query* | string | Common (vernacular) name or partial name to search (e.g. "cougar", "grizzly bear"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"minLength": 1,
"description": "Common (vernacular) name or partial name to search (e.g. \"cougar\", \"grizzly bear\")."
}
},
"additionalProperties": false
}Search the ITIS (Integrated Taxonomic Information System) database by scientific name or partial name. Returns matching taxa with their TSN (Taxonomic Serial Number), full scientific name, author citation, and kingdom — the TSN can then be used with itistaxonomy.get_full_record for full classification detail (itis.gov, USGS public data)
| Argument | Type | Description |
|---|---|---|
| query* | string | Scientific name or partial name to search (e.g. "Puma concolor", "Bison bison", or genus only "Ursus"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"minLength": 1,
"description": "Scientific name or partial name to search (e.g. \"Puma concolor\", \"Bison bison\", or genus only \"Ursus\")."
}
},
"additionalProperties": false
}Get full DFT-computed properties for a material by Materials Project ID (e.g. mp-149 for silicon). Returns: band gap, formation energy, thermodynamic stability, density, crystal structure, spacegroup, magnetism, bulk/shear modulus, Poisson ratio, Fermi energy, database cross-references. 150K+ materials (Materials Project)
| Argument | Type | Description |
|---|---|---|
| material_id* | string | Materials Project ID (e.g. "mp-149" for silicon, "mp-19017" for LiFePO4). Get IDs from materials.search |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"material_id"
],
"properties": {
"material_id": {
"type": "string",
"minLength": 1,
"description": "Materials Project ID (e.g. \"mp-149\" for silicon, \"mp-19017\" for LiFePO4). Get IDs from materials.search"
}
},
"additionalProperties": false
}Get mechanical/elastic properties for a material: bulk modulus, shear modulus (Voigt-Reuss-Hill averages), universal anisotropy index, Poisson ratio, and full 6x6 elastic tensor (IEEE format). Essential for structural materials screening and mechanical simulations (Materials Project)
| Argument | Type | Description |
|---|---|---|
| material_id* | string | Materials Project ID (e.g. "mp-149"). Returns bulk/shear modulus, Poisson ratio, elastic tensor |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"material_id"
],
"properties": {
"material_id": {
"type": "string",
"minLength": 1,
"description": "Materials Project ID (e.g. \"mp-149\"). Returns bulk/shear modulus, Poisson ratio, elastic tensor"
}
},
"additionalProperties": false
}Search 150,000+ inorganic materials by chemical formula, elements, band gap, stability, or metallic character. Returns DFT-computed properties: band gap, formation energy, density, crystal system. Filter semiconductors (band_gap 1-3 eV), stable battery cathodes (elements Li,Fe,O + is_stable), or metals. DOE/Lawrence Berkeley Lab data, CC BY 4.0 (Materials Project)
| Argument | Type | Description |
|---|---|---|
| skip | integer | Offset for pagination |
| limit | integer | Max results (1-50, default 10) |
| formula | string | Chemical formula to search (e.g. "Si", "Fe2O3", "LiFePO4"). Exact or reduced formula |
| elements | string | Comma-separated elements to filter (e.g. "Li,Fe,O" — returns materials containing these elements) |
| is_metal | boolean | Filter for metals (true) or non-metals (false) |
| is_stable | boolean | Filter for thermodynamically stable materials only (energy_above_hull = 0) |
| band_gap_max | number | Maximum band gap in eV (e.g. 3.0). Use with band_gap_min for range filter |
| band_gap_min | number | Minimum band gap in eV (e.g. 1.0). Use with band_gap_max for range filter |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"skip": {
"type": "integer",
"minimum": 0,
"description": "Offset for pagination"
},
"limit": {
"type": "integer",
"default": 10,
"maximum": 50,
"minimum": 1,
"description": "Max results (1-50, default 10)"
},
"formula": {
"type": "string",
"description": "Chemical formula to search (e.g. \"Si\", \"Fe2O3\", \"LiFePO4\"). Exact or reduced formula"
},
"elements": {
"type": "string",
"description": "Comma-separated elements to filter (e.g. \"Li,Fe,O\" — returns materials containing these elements)"
},
"is_metal": {
"type": "boolean",
"description": "Filter for metals (true) or non-metals (false)"
},
"is_stable": {
"type": "boolean",
"description": "Filter for thermodynamically stable materials only (energy_above_hull = 0)"
},
"band_gap_max": {
"type": "number",
"description": "Maximum band gap in eV (e.g. 3.0). Use with band_gap_min for range filter"
},
"band_gap_min": {
"type": "number",
"description": "Minimum band gap in eV (e.g. 1.0). Use with band_gap_max for range filter"
}
},
"additionalProperties": false
}Get chemical component data for a ligand/small molecule by its 3-letter PDB code — name, molecular formula, weight, type, formal charge, heavy atom count, SMILES/InChI descriptors. Covers ATP, HEM, NAG, drug molecules, cofactors, ions, and 40K+ chemical entities in the PDB (RCSB PDB)
| Argument | Type | Description |
|---|---|---|
| ligand_id* | string | Chemical component identifier — standard 3-letter code (e.g. "ATP" for adenosine triphosphate, "HEM" for heme, "NAG" for N-acetylglucosamine, "ZN" for zinc ion) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"ligand_id"
],
"properties": {
"ligand_id": {
"type": "string",
"maxLength": 5,
"minLength": 1,
"description": "Chemical component identifier — standard 3-letter code (e.g. \"ATP\" for adenosine triphosphate, \"HEM\" for heme, \"NAG\" for N-acetylglucosamine, \"ZN\" for zinc ion)"
}
},
"additionalProperties": false
}Search 220K+ macromolecular 3D structures in the Protein Data Bank by keyword, protein name, organism, or author. Returns PDB IDs with relevance scores. The canonical database for structural biology, X-ray crystallography, cryo-EM, and NMR structures (RCSB PDB)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of results (1-50). Default: 10 |
| query* | string | Search query — keyword, protein name, organism, or author (e.g. "insulin", "hemoglobin", "Homo sapiens", "Watson") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"default": 10,
"maximum": 50,
"minimum": 1,
"description": "Maximum number of results (1-50). Default: 10"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Search query — keyword, protein name, organism, or author (e.g. \"insulin\", \"hemoglobin\", \"Homo sapiens\", \"Watson\")"
}
},
"additionalProperties": false
}Search protein structures by amino acid sequence similarity (BLAST). Input a protein sequence and find all PDB structures with matching chains. Configure identity cutoff (e.g. 90%) and E-value threshold. Returns PDB entity IDs ranked by similarity score. Essential for homology modeling and structure prediction (RCSB PDB)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of results (1-50). Default: 10 |
| sequence* | string | Protein amino acid sequence in one-letter code (e.g. "MVLSPADKTNVKAAWGKVGAHAGEYGAEALERMFLSFPTTKTYFPHFDLSH" — first 50 residues of human hemoglobin alpha) |
| evalue_cutoff | number | Maximum E-value threshold for BLAST significance. Default: 0.1 |
| identity_cutoff | number | Minimum sequence identity (0.1-1.0). Default: 0.9 (90% identical) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"sequence"
],
"properties": {
"limit": {
"type": "integer",
"default": 10,
"maximum": 50,
"minimum": 1,
"description": "Maximum number of results (1-50). Default: 10"
},
"sequence": {
"type": "string",
"minLength": 10,
"description": "Protein amino acid sequence in one-letter code (e.g. \"MVLSPADKTNVKAAWGKVGAHAGEYGAEALERMFLSFPTTKTYFPHFDLSH\" — first 50 residues of human hemoglobin alpha)"
},
"evalue_cutoff": {
"type": "number",
"default": 0.1,
"description": "Maximum E-value threshold for BLAST significance. Default: 0.1"
},
"identity_cutoff": {
"type": "number",
"default": 0.9,
"maximum": 1,
"minimum": 0.1,
"description": "Minimum sequence identity (0.1-1.0). Default: 0.9 (90% identical)"
}
},
"additionalProperties": false
}Get full details for a 3D protein structure by PDB ID — title, experimental method (X-ray/cryo-EM/NMR), resolution, molecular weight, chain counts (protein/DNA/RNA), deposit date, primary citation with DOI and PubMed ID. Essential for drug design and structural analysis (RCSB PDB)
| Argument | Type | Description |
|---|---|---|
| pdb_id* | string | 4-character PDB identifier (e.g. "4HHB" for hemoglobin, "1BNA" for DNA, "6LU7" for SARS-CoV-2 main protease) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"pdb_id"
],
"properties": {
"pdb_id": {
"type": "string",
"maxLength": 4,
"minLength": 4,
"description": "4-character PDB identifier (e.g. \"4HHB\" for hemoglobin, \"1BNA\" for DNA, \"6LU7\" for SARS-CoV-2 main protease)"
}
},
"additionalProperties": false
}Get full annotation details for a protein by UniProt accession number (e.g. P69905, P01308). Returns protein name, EC numbers, alternative names, organism and lineage, gene names, sequence (first 200 aa), molecular weight, biological function, subcellular location, associated diseases, keywords, cross-references to PDB/Ensembl/RefSeq/OMIM/PubMed, and feature count. P69905 = hemoglobin alpha chain; P01308 = human insulin; P04637 = tumor suppressor p53 (TP53). CC BY 4.0 — Universal Protein Resource (UniProt Consortium)
| Argument | Type | Description |
|---|---|---|
| accession* | string | UniProt accession number (e.g. "P69905" for hemoglobin alpha, "P01308" for insulin, "P53_HUMAN" entry name also accepted). Six or ten character alphanumeric code |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"accession"
],
"properties": {
"accession": {
"type": "string",
"minLength": 1,
"description": "UniProt accession number (e.g. \"P69905\" for hemoglobin alpha, \"P01308\" for insulin, \"P53_HUMAN\" entry name also accepted). Six or ten character alphanumeric code"
}
},
"additionalProperties": false
}Get sequence-level annotations and functional features for a protein by UniProt accession. Returns active sites, binding sites, signal peptides, transmembrane regions, disulfide bonds, post-translational modifications, domain boundaries, secondary structure elements (helix, strand, turn), natural variants, and chain cleavage sites — all with exact sequence positions. Essential for structural biology, drug target analysis, and protein engineering workflows. CC BY 4.0 — Universal Protein Resource (UniProt Consortium)
| Argument | Type | Description |
|---|---|---|
| accession* | string | UniProt accession number to retrieve sequence features for (e.g. "P69905", "P01308"). Returns active sites, domains, signal peptides, transmembrane regions, disulfide bonds, variants, and secondary structure |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"accession"
],
"properties": {
"accession": {
"type": "string",
"minLength": 1,
"description": "UniProt accession number to retrieve sequence features for (e.g. \"P69905\", \"P01308\"). Returns active sites, domains, signal peptides, transmembrane regions, disulfide bonds, variants, and secondary structure"
}
},
"additionalProperties": false
}Search the UniProt protein sequence database for proteins by name, gene, or organism. UniProt is the world's leading repository for protein sequences and functional annotations, covering 250M+ sequences from Swiss-Prot (reviewed) and TrEMBL (unreviewed). Returns accession, protein name, organism, gene names, sequence length, review status, and annotation score. Supports field-specific queries (gene:TP53, organism:9606) and free-text search. Use reviewed:true to restrict to Swiss-Prot's manually curated, high-quality entries. CC BY 4.0 — Universal Protein Resource (UniProt Consortium)
| Argument | Type | Description |
|---|---|---|
| gene | string | Gene name filter (exact or partial). E.g. "TP53", "EGFR", "BRAC1". Combined with query using AND logic |
| limit | integer | Number of results to return (1–25, default 5) |
| query* | string | Protein or gene search term — e.g. "insulin", "hemoglobin", "BRCA1". Supports UniProt query syntax: field:value pairs (e.g. "protein_name:kinase") |
| reviewed | boolean | If true, restrict to Swiss-Prot (manually reviewed) entries only. Swiss-Prot has higher quality annotations than TrEMBL (unreviewed) |
| organism_id | integer | NCBI taxonomy ID to filter by organism. Common IDs: 9606 (human), 10090 (mouse), 10116 (rat), 7227 (fruit fly), 6239 (C. elegans), 3702 (A. thaliana) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"gene": {
"type": "string",
"description": "Gene name filter (exact or partial). E.g. \"TP53\", \"EGFR\", \"BRAC1\". Combined with query using AND logic"
},
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Number of results to return (1–25, default 5)"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Protein or gene search term — e.g. \"insulin\", \"hemoglobin\", \"BRCA1\". Supports UniProt query syntax: field:value pairs (e.g. \"protein_name:kinase\")"
},
"reviewed": {
"type": "boolean",
"description": "If true, restrict to Swiss-Prot (manually reviewed) entries only. Swiss-Prot has higher quality annotations than TrEMBL (unreviewed)"
},
"organism_id": {
"type": "integer",
"description": "NCBI taxonomy ID to filter by organism. Common IDs: 9606 (human), 10090 (mouse), 10116 (rat), 7227 (fruit fly), 6239 (C. elegans), 3702 (A. thaliana)"
}
},
"additionalProperties": false
}Search UniProt taxonomy to find organism names, NCBI taxonomy IDs, lineages, and protein counts. Returns taxon ID, scientific name, common name, taxonomic rank, full lineage path, and the number of reviewed (Swiss-Prot) and unreviewed (TrEMBL) proteins for that organism. Use to resolve organism names to taxonomy IDs for protein_search filtering (e.g. "human" → taxon_id 9606, "mouse" → 10090, "E. coli K12" → 83333). CC BY 4.0 — Universal Protein Resource (UniProt Consortium)
| Argument | Type | Description |
|---|---|---|
| rank | string | Filter by taxonomic rank (e.g. "species" to exclude higher-level taxa) |
| limit | integer | Number of taxonomy results (1–20, default 5) |
| query* | string | Organism or taxonomic name to search — e.g. "human", "Homo sapiens", "Mus musculus", "bacteria", "fungi". Returns taxonomy ID, lineage, and protein counts |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"rank": {
"enum": [
"kingdom",
"phylum",
"class",
"order",
"family",
"genus",
"species"
],
"type": "string",
"description": "Filter by taxonomic rank (e.g. \"species\" to exclude higher-level taxa)"
},
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of taxonomy results (1–20, default 5)"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Organism or taxonomic name to search — e.g. \"human\", \"Homo sapiens\", \"Mus musculus\", \"bacteria\", \"fungi\". Returns taxonomy ID, lineage, and protein counts"
}
},
"additionalProperties": false
}Scrape any web page and get clean content — markdown (default), plain text, or raw HTML. Handles JavaScript rendering, anti-bot bypass, proxy rotation. Returns LLM-ready output. Cheapest web scraper with PAYG pricing (Spider.cloud)
| Argument | Type | Description |
|---|---|---|
| url* | string | URL to scrape (e.g. "https://example.com/page") |
| format | string | Output format: markdown (default, best for LLMs), text (plain), raw (HTML), commonmark |
| wait_for | integer | Wait N ms for JS to render before scraping (0-30000) |
| readability | boolean | Enable readability mode — pre-processes page for LLM consumption |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "URL to scrape (e.g. \"https://example.com/page\")"
},
"format": {
"enum": [
"markdown",
"text",
"raw",
"commonmark"
],
"type": "string",
"default": "markdown",
"description": "Output format: markdown (default, best for LLMs), text (plain), raw (HTML), commonmark"
},
"wait_for": {
"type": "integer",
"maximum": 30000,
"minimum": 0,
"description": "Wait N ms for JS to render before scraping (0-30000)"
},
"readability": {
"type": "boolean",
"description": "Enable readability mode — pre-processes page for LLM consumption"
}
},
"additionalProperties": false
}Web search that returns page titles, descriptions, and URLs. Combine with spider.scrape to get full content. Results ranked by relevance (Spider.cloud)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max results (1-20, default 5) |
| query* | string | Web search query (e.g. "best MCP servers 2026") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"default": 5,
"maximum": 20,
"minimum": 1,
"description": "Max results (1-20, default 5)"
},
"query": {
"type": "string",
"description": "Web search query (e.g. \"best MCP servers 2026\")"
}
},
"additionalProperties": false
}Look up EPA enforcement actions taken against public water systems under the Safe Drinking Water Act. Filter by PWSID (Public Water System Identifier) to get all enforcement history for a specific utility, or filter by enforcement action type code. Returns enforcement date, action type, and originator. Enforcement types include Formal Administrative Orders (EFG), Compliance Schedules, Referral to State, and Civil Penalties. Combine with sdwis.water.violations to understand the full compliance picture for a water system. Data source: EPA SDWIS Federal Reporting Services, US Gov public domain.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of enforcement actions to return (1–100, default 20) |
| pwsid | string | Public Water System Identifier (PWSID) to look up enforcement actions for a specific system (e.g. CA3310067) |
| action_type | string | Enforcement action type code (e.g. EFG for Formal Enforcement Order, 3EF for Third Violation) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of enforcement actions to return (1–100, default 20)"
},
"pwsid": {
"type": "string",
"description": "Public Water System Identifier (PWSID) to look up enforcement actions for a specific system (e.g. CA3310067)"
},
"action_type": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "Enforcement action type code (e.g. EFG for Formal Enforcement Order, 3EF for Third Violation)"
}
},
"additionalProperties": false
}Look up the geographic service areas of EPA-regulated public water systems. Returns counties, cities, and zip codes served by each utility, along with area type and tribal codes. Filter by state or county to discover which water systems serve a specific area. Filter by PWSID to get all geographic areas served by a specific utility. Useful for mapping water service boundaries, identifying utilities for an address, or understanding the geographic scope of a water quality issue. Data source: EPA SDWIS Federal Reporting Services Geographic Areas table, US Gov public domain.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of service area records to return (1–100, default 20) |
| pwsid | string | Public Water System Identifier (PWSID) to get service areas for a specific system (e.g. CA3310067) |
| state | string | State or primacy agency code to filter service areas (e.g. CA, TX, FL) |
| county | string | County name served by the water system (e.g. LOS ANGELES) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of service area records to return (1–100, default 20)"
},
"pwsid": {
"type": "string",
"description": "Public Water System Identifier (PWSID) to get service areas for a specific system (e.g. CA3310067)"
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "State or primacy agency code to filter service areas (e.g. CA, TX, FL)"
},
"county": {
"type": "string",
"description": "County name served by the water system (e.g. LOS ANGELES)"
}
},
"additionalProperties": false
}Search EPA Safe Drinking Water Information System (SDWIS) for public water systems by state, system type (Community/Transient/Non-Transient), and activity status. Returns PWSID, system name, population served, service connections, water source type, and operator information. Covers 150,000+ US public water systems regulated under the Safe Drinking Water Act. Use sdwis.water.violations to check health violations for a specific system. Data source: EPA SDWIS Federal Reporting Services (data.epa.gov/efservice), US Gov public domain.
| Argument | Type | Description |
|---|---|---|
| type | string | Public water system type: CWS (Community), TNCWS (Transient Non-Community), NTNCWS (Non-Transient Non-Community) |
| limit | integer | Maximum number of water systems to return (1–100, default 20) |
| state | string | US state code or primacy agency code (e.g. CA, TX, FL). Omit for all states. |
| activity | string | Activity status code: A (Active), I (Inactive), N (New), M (Merger), P (Proposed). Default is all. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"type": {
"enum": [
"CWS",
"TNCWS",
"NTNCWS"
],
"type": "string",
"description": "Public water system type: CWS (Community), TNCWS (Transient Non-Community), NTNCWS (Non-Transient Non-Community)"
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of water systems to return (1–100, default 20)"
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "US state code or primacy agency code (e.g. CA, TX, FL). Omit for all states."
},
"activity": {
"enum": [
"A",
"I",
"N",
"M",
"P"
],
"type": "string",
"description": "Activity status code: A (Active), I (Inactive), N (New), M (Merger), P (Proposed). Default is all."
}
},
"additionalProperties": false
}Search EPA SDWIS for drinking water violations by state and violation type. Returns violation code, health-based flag (MCL/Treatment Technique), contaminant code, compliance status, measured value, compliance period, return-to-compliance date, and public notification tier. Filter by health_based=true to focus on Maximum Contaminant Level (MCL) and Treatment Technique (TT) violations that directly endanger public health. Violation categories: MCL, TT, MRDL, MR, MON, RPT, PN. Use sdwis.water.enforcement to get enforcement actions associated with a PWSID from violations. Data source: EPA SDWIS Federal Reporting Services, US Gov public domain.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of violations to return (1–100, default 20) |
| state | string | State or primacy agency code (e.g. CA, TX). Two-letter abbreviation. Omit for all states. |
| category | string | Violation category: MCL (Maximum Contaminant Level), TT (Treatment Technique), MRDL (Disinfectant), MR (Monitoring/Reporting), MON (Monitoring), RPT (Reporting), PN (Public Notification), OTHER |
| health_based | boolean | If true, return only health-based violations (MCL, TT, MRDL). If false or omitted, return all. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of violations to return (1–100, default 20)"
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "State or primacy agency code (e.g. CA, TX). Two-letter abbreviation. Omit for all states."
},
"category": {
"enum": [
"MCL",
"TT",
"MRDL",
"MR",
"MON",
"RPT",
"PN",
"OTHER"
],
"type": "string",
"description": "Violation category: MCL (Maximum Contaminant Level), TT (Treatment Technique), MRDL (Disinfectant), MR (Monitoring/Reporting), MON (Monitoring), RPT (Reporting), PN (Public Notification), OTHER"
},
"health_based": {
"type": "boolean",
"description": "If true, return only health-based violations (MCL, TT, MRDL). If false or omitted, return all."
}
},
"additionalProperties": false
}Extract clean readable content from up to 20 URLs — returns text, title, author, published date. Eliminates scraping. Perfect for feeding web pages into agent context windows (Tavily)
| Argument | Type | Description |
|---|---|---|
| urls* | array | URLs to extract clean content from (1-20 URLs). Returns readable text, title, author, date. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"urls"
],
"properties": {
"urls": {
"type": "array",
"items": {
"type": "string",
"format": "uri"
},
"maxItems": 20,
"minItems": 1,
"description": "URLs to extract clean content from (1-20 URLs). Returns readable text, title, author, date."
}
},
"additionalProperties": false
}AI-optimized web search — returns synthesized answer + curated results with extracted page content and relevance scores. Built for LLM/agent RAG pipelines. Supports domain filtering and recency (Tavily)
| Argument | Type | Description |
|---|---|---|
| days | integer | Recency filter — only include results from the last N days |
| query* | string | Search query — Tavily returns AI-synthesized answer + curated results with extracted content |
| max_results | integer | Number of results to return (default 5, max 20) |
| search_depth | string | Search depth: "basic" (faster, 1 credit) or "advanced" (deeper, 2 credits). Default: basic |
| include_answer | boolean | Include AI-synthesized answer based on search results (default true) |
| exclude_domains | array | Exclude results from these domains (e.g. ["reddit.com"]) |
| include_domains | array | Only include results from these domains (e.g. ["wikipedia.org", "arxiv.org"]) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"days": {
"type": "integer",
"minimum": 1,
"description": "Recency filter — only include results from the last N days"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Search query — Tavily returns AI-synthesized answer + curated results with extracted content"
},
"max_results": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of results to return (default 5, max 20)"
},
"search_depth": {
"enum": [
"basic",
"advanced"
],
"type": "string",
"description": "Search depth: \"basic\" (faster, 1 credit) or \"advanced\" (deeper, 2 credits). Default: basic"
},
"include_answer": {
"type": "boolean",
"description": "Include AI-synthesized answer based on search results (default true)"
},
"exclude_domains": {
"type": "array",
"items": {
"type": "string"
},
"description": "Exclude results from these domains (e.g. [\"reddit.com\"])"
},
"include_domains": {
"type": "array",
"items": {
"type": "string"
},
"description": "Only include results from these domains (e.g. [\"wikipedia.org\", \"arxiv.org\"])"
}
},
"additionalProperties": false
}Google Image search results — image URL, thumbnail, dimensions, source domain. Search any visual content worldwide (Serper.dev)
| Argument | Type | Description |
|---|---|---|
| q* | string | Image search query (e.g. "golden gate bridge sunset") |
| gl | string | Country code (e.g. "us") |
| num | integer | Number of images (default 10, max 100) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"minLength": 1,
"description": "Image search query (e.g. \"golden gate bridge sunset\")"
},
"gl": {
"type": "string",
"maxLength": 2,
"description": "Country code (e.g. \"us\")"
},
"num": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of images (default 10, max 100)"
}
},
"additionalProperties": false
}Real-time Google News articles — title, source, date, snippet, image. Filter by time (past hour/day/week/month). Global coverage in 70+ languages (Serper.dev)
| Argument | Type | Description |
|---|---|---|
| q* | string | News search query (e.g. "AI agents", "Base network") |
| gl | string | Country code for localized news (e.g. "us", "gb") |
| hl | string | Language code (e.g. "en", "de") |
| num | integer | Number of articles (default 10, max 100) |
| tbs | string | Time filter: "qdr:h" (past hour), "qdr:d" (past day), "qdr:w" (past week), "qdr:m" (past month) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"minLength": 1,
"description": "News search query (e.g. \"AI agents\", \"Base network\")"
},
"gl": {
"type": "string",
"maxLength": 2,
"description": "Country code for localized news (e.g. \"us\", \"gb\")"
},
"hl": {
"type": "string",
"maxLength": 5,
"description": "Language code (e.g. \"en\", \"de\")"
},
"num": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of articles (default 10, max 100)"
},
"tbs": {
"type": "string",
"description": "Time filter: \"qdr:h\" (past hour), \"qdr:d\" (past day), \"qdr:w\" (past week), \"qdr:m\" (past month)"
}
},
"additionalProperties": false
}Google Shopping product listings — title, price, source, rating, delivery info, product images. Compare prices across retailers (Serper.dev)
| Argument | Type | Description |
|---|---|---|
| q* | string | Product search query (e.g. "macbook pro 16 inch", "wireless headphones") |
| gl | string | Country code for localized prices (e.g. "us", "gb") |
| num | integer | Number of products (default 10, max 100) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"minLength": 1,
"description": "Product search query (e.g. \"macbook pro 16 inch\", \"wireless headphones\")"
},
"gl": {
"type": "string",
"maxLength": 2,
"description": "Country code for localized prices (e.g. \"us\", \"gb\")"
},
"num": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of products (default 10, max 100)"
}
},
"additionalProperties": false
}Real-time Google web search results — organic listings, knowledge graph, answer box, people also ask, related searches. Supports country and language targeting. Powered by Serper.dev
| Argument | Type | Description |
|---|---|---|
| q* | string | Search query (e.g. "best restaurants in Berlin", "how does MCP protocol work") |
| gl | string | Country code for localized results (e.g. "us", "gb", "de", "fr") |
| hl | string | Language code for results (e.g. "en", "de", "fr", "es") |
| num | integer | Number of results to return (default 10, max 100) |
| page | integer | Page number for pagination (default 1) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"minLength": 1,
"description": "Search query (e.g. \"best restaurants in Berlin\", \"how does MCP protocol work\")"
},
"gl": {
"type": "string",
"maxLength": 2,
"description": "Country code for localized results (e.g. \"us\", \"gb\", \"de\", \"fr\")"
},
"hl": {
"type": "string",
"maxLength": 5,
"description": "Language code for results (e.g. \"en\", \"de\", \"fr\", \"es\")"
},
"num": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of results to return (default 10, max 100)"
},
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)"
}
},
"additionalProperties": false
}Extract clean text content from up to 10 URLs — returns title, author, published date, full text. Use for feeding web pages into agent context (Exa)
| Argument | Type | Description |
|---|---|---|
| urls* | array | URLs to extract content from (1-10). Returns clean text, title, author, date. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"urls"
],
"properties": {
"urls": {
"type": "array",
"items": {
"type": "string",
"format": "uri"
},
"maxItems": 10,
"minItems": 1,
"description": "URLs to extract content from (1-10). Returns clean text, title, author, date."
}
},
"additionalProperties": false
}Find web pages semantically similar to a given URL — discover related content, competitors, alternatives without knowing what to search for. Unique capability for research agents (Exa)
| Argument | Type | Description |
|---|---|---|
| url* | string | Reference URL — Exa finds pages semantically similar to this one |
| num_results | integer | Number of similar pages (default 10, max 25) |
| include_text | boolean | Include full extracted page text (default false) |
| start_published_date | string | Only include similar pages published after this date (ISO format) |
| exclude_source_domain | boolean | Exclude results from same domain as input URL (default true) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Reference URL — Exa finds pages semantically similar to this one"
},
"num_results": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Number of similar pages (default 10, max 25)"
},
"include_text": {
"type": "boolean",
"description": "Include full extracted page text (default false)"
},
"start_published_date": {
"type": "string",
"description": "Only include similar pages published after this date (ISO format)"
},
"exclude_source_domain": {
"type": "boolean",
"description": "Exclude results from same domain as input URL (default true)"
}
},
"additionalProperties": false
}Neural/semantic web search — finds conceptually related pages, not just keyword matches. Supports category filters (company, research paper, news, people, tweet), domain filtering, date range. Returns relevance scores and highlighted excerpts (Exa)
| Argument | Type | Description |
|---|---|---|
| type | string | Search type: "auto" (balanced), "neural" (semantic similarity), "keyword" (traditional). Default: auto |
| query* | string | Natural language search query — Exa finds semantically related pages, not just keyword matches |
| category | string | Category filter for specialized indexes (optional) |
| num_results | integer | Number of results (default 10, max 25) |
| include_text | boolean | Include full extracted page text in results (default false — saves tokens) |
| exclude_domains | array | Exclude results from these domains |
| include_domains | array | Only include results from these domains (e.g. ["arxiv.org"]) |
| end_published_date | string | Filter: only results published before this date |
| include_highlights | boolean | Include key sentence highlights (default true) |
| start_published_date | string | Filter: only results published after this date (ISO format, e.g. "2025-01-01") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"type": {
"enum": [
"auto",
"neural",
"keyword"
],
"type": "string",
"description": "Search type: \"auto\" (balanced), \"neural\" (semantic similarity), \"keyword\" (traditional). Default: auto"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Natural language search query — Exa finds semantically related pages, not just keyword matches"
},
"category": {
"enum": [
"company",
"research paper",
"news",
"people",
"tweet"
],
"type": "string",
"description": "Category filter for specialized indexes (optional)"
},
"num_results": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Number of results (default 10, max 25)"
},
"include_text": {
"type": "boolean",
"description": "Include full extracted page text in results (default false — saves tokens)"
},
"exclude_domains": {
"type": "array",
"items": {
"type": "string"
},
"description": "Exclude results from these domains"
},
"include_domains": {
"type": "array",
"items": {
"type": "string"
},
"description": "Only include results from these domains (e.g. [\"arxiv.org\"])"
},
"end_published_date": {
"type": "string",
"description": "Filter: only results published before this date"
},
"include_highlights": {
"type": "boolean",
"description": "Include key sentence highlights (default true)"
},
"start_published_date": {
"type": "string",
"description": "Filter: only results published after this date (ISO format, e.g. \"2025-01-01\")"
}
},
"additionalProperties": false
}Resolve a stock ticker symbol (exact match) or company name substring to a SEC Central Index Key (CIK) — the identifier required by all other sec-edgar tools. Returns matching company name, ticker, and CIK. Data: www.sec.gov (US Securities and Exchange Commission EDGAR system), no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of matching companies to return, 1-25 (default 10). |
| query* | string | Ticker symbol (exact match, e.g. "AAPL") or company name substring (e.g. "Apple") to search for. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Maximum number of matching companies to return, 1-25 (default 10)."
},
"query": {
"type": "string",
"minLength": 1,
"description": "Ticker symbol (exact match, e.g. \"AAPL\") or company name substring (e.g. \"Apple\") to search for."
}
},
"additionalProperties": false
}Get a company's recent SEC filings (10-K annual reports, 10-Q quarterly reports, 8-K current reports, proxy statements, insider transaction forms, etc.) plus basic entity profile — legal name, SIC industry classification, exchanges, fiscal year end. Optional filter by form type. Each filing includes filing date, accession number, and a direct document URL. Requires a CIK from sec-edgar.company_lookup. Data: data.sec.gov (US Securities and Exchange Commission EDGAR system), no auth required.
| Argument | Type | Description |
|---|---|---|
| cik* | string | SEC Central Index Key for the company, e.g. "320193" or "0000320193". Obtained from sec-edgar.company_lookup. |
| limit | integer | Maximum number of filings to return, 1-50 (default 10, most recent first). |
| form_type | string | Filter by SEC form type, e.g. "10-K", "10-Q", "8-K", "4" (case-insensitive). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"cik"
],
"properties": {
"cik": {
"type": "string",
"minLength": 1,
"description": "SEC Central Index Key for the company, e.g. \"320193\" or \"0000320193\". Obtained from sec-edgar.company_lookup."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of filings to return, 1-50 (default 10, most recent first)."
},
"form_type": {
"type": "string",
"description": "Filter by SEC form type, e.g. \"10-K\", \"10-Q\", \"8-K\", \"4\" (case-insensitive)."
}
},
"additionalProperties": false
}Get the historical time series for a single standardized XBRL financial concept (e.g. Assets, Liabilities, Revenues, NetIncomeLoss, StockholdersEquity) as reported by a company across its SEC filings — one value per fiscal period with the filing it came from. Sourced directly from structured XBRL data extracted from 10-K/10-Q filings, not free text. Requires a CIK from sec-edgar.company_lookup. Data: data.sec.gov (US Securities and Exchange Commission EDGAR system), no auth required.
| Argument | Type | Description |
|---|---|---|
| cik* | string | SEC Central Index Key for the company, e.g. "320193" or "0000320193". Obtained from sec-edgar.company_lookup. |
| tag* | string | XBRL concept tag name, e.g. "Assets", "Liabilities", "Revenues", "NetIncomeLoss", "StockholdersEquity", "CashAndCashEquivalentsAtCarryingValue", "EarningsPerShareBasic". |
| unit | string | Unit of measure to filter by, e.g. "USD" or "shares" (default: USD if available). |
| limit | integer | Maximum number of reported values to return, 1-100 (default 20, most recent first). |
| taxonomy | string | XBRL taxonomy the tag belongs to — "us-gaap" for financial statement concepts (default), "dei" for document/entity metadata like EntityCommonStockSharesOutstanding. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"cik",
"tag"
],
"properties": {
"cik": {
"type": "string",
"minLength": 1,
"description": "SEC Central Index Key for the company, e.g. \"320193\" or \"0000320193\". Obtained from sec-edgar.company_lookup."
},
"tag": {
"type": "string",
"minLength": 1,
"description": "XBRL concept tag name, e.g. \"Assets\", \"Liabilities\", \"Revenues\", \"NetIncomeLoss\", \"StockholdersEquity\", \"CashAndCashEquivalentsAtCarryingValue\", \"EarningsPerShareBasic\"."
},
"unit": {
"type": "string",
"description": "Unit of measure to filter by, e.g. \"USD\" or \"shares\" (default: USD if available)."
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of reported values to return, 1-100 (default 20, most recent first)."
},
"taxonomy": {
"enum": [
"us-gaap",
"dei"
],
"type": "string",
"description": "XBRL taxonomy the tag belongs to — \"us-gaap\" for financial statement concepts (default), \"dei\" for document/entity metadata like EntityCommonStockSharesOutstanding."
}
},
"additionalProperties": false
}Validate email for fraud risk — checks deliverability, disposable/temporary providers, honeypot traps, spam traps, leaked credentials, catch-all detection. Returns fraud score (0-100), SMTP verification, domain age, and abuse history. Goes beyond basic validation (IPQualityScore)
| Argument | Type | Description |
|---|---|---|
| fast | boolean | Skip SMTP verification for faster response (default false) |
| email* | string | Email address to validate and check for fraud (e.g. "[email protected]") |
| abuse_strictness | integer | Abuse detection sensitivity 0-2 (0=low, 2=aggressive) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"email"
],
"properties": {
"fast": {
"type": "boolean",
"description": "Skip SMTP verification for faster response (default false)"
},
"email": {
"type": "string",
"description": "Email address to validate and check for fraud (e.g. \"[email protected]\")"
},
"abuse_strictness": {
"type": "integer",
"maximum": 2,
"minimum": 0,
"description": "Abuse detection sensitivity 0-2 (0=low, 2=aggressive)"
}
},
"additionalProperties": false
}Check any IP address for fraud signals — proxy, VPN, Tor, bot, crawler detection with fraud score (0-100). Returns geolocation (country, city, ISP, ASN), abuse velocity, connection type, and 9+ risk indicators. Essential for e-commerce fraud prevention (IPQualityScore)
| Argument | Type | Description |
|---|---|---|
| ip* | string | IPv4 or IPv6 address to check (e.g. "8.8.8.8", "2001:4860:4860::8888") |
| strictness | integer | Detection strictness 0-3 (0=least strict, 3=most aggressive). Higher catches more fraud but may flag legitimate users |
| allow_public_access_points | boolean | Allow public WiFi/library IPs to pass without penalty (default false) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"ip"
],
"properties": {
"ip": {
"type": "string",
"description": "IPv4 or IPv6 address to check (e.g. \"8.8.8.8\", \"2001:4860:4860::8888\")"
},
"strictness": {
"type": "integer",
"maximum": 3,
"minimum": 0,
"description": "Detection strictness 0-3 (0=least strict, 3=most aggressive). Higher catches more fraud but may flag legitimate users"
},
"allow_public_access_points": {
"type": "boolean",
"description": "Allow public WiFi/library IPs to pass without penalty (default false)"
}
},
"additionalProperties": false
}Check phone number for fraud risk — detects VOIP, prepaid, risky numbers, carrier info, line type (mobile/landline/VOIP), active status, leaked data. Returns fraud score (0-100) and geographic location. Supports international numbers with country filter (IPQualityScore)
| Argument | Type | Description |
|---|---|---|
| phone* | string | Phone number to check in E.164 or national format (e.g. "+12125551234", "2125551234") |
| country | string | ISO 2-letter country code for national format numbers (e.g. "US", "GB") |
| strictness | integer | Fraud detection strictness 0-2 |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"phone"
],
"properties": {
"phone": {
"type": "string",
"description": "Phone number to check in E.164 or national format (e.g. \"+12125551234\", \"2125551234\")"
},
"country": {
"type": "string",
"description": "ISO 2-letter country code for national format numbers (e.g. \"US\", \"GB\")"
},
"strictness": {
"type": "integer",
"maximum": 2,
"minimum": 0,
"description": "Fraud detection strictness 0-2"
}
},
"additionalProperties": false
}Scan any URL for malware, phishing, suspicious content, adult content, spamming, and domain parking. Returns risk score (0-100), domain reputation, domain age, IP address, HTTP status. Protects agents from visiting malicious URLs (IPQualityScore)
| Argument | Type | Description |
|---|---|---|
| url* | string | Full URL to scan for malware, phishing, and threats (e.g. "https://example.com/page") |
| strictness | integer | Scanning strictness 0-2 (0=least strict, 2=most aggressive) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Full URL to scan for malware, phishing, and threats (e.g. \"https://example.com/page\")"
},
"strictness": {
"type": "integer",
"maximum": 2,
"minimum": 0,
"description": "Scanning strictness 0-2 (0=least strict, 2=most aggressive)"
}
},
"additionalProperties": false
}Search researcher/author records by display name. Returns Semantic Scholar author ID, name, institutional affiliations, total paper count, total citation count, and h-index. Useful for identifying a researcher before filtering semanticscholar.papers_search results by author, or for author-level impact metrics. Data: api.semanticscholar.org, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of results to return (1-25, default 10) |
| query* | string | Search query for researcher/author name (e.g. "geoffrey hinton") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Number of results to return (1-25, default 10)"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Search query for researcher/author name (e.g. \"geoffrey hinton\")"
}
},
"additionalProperties": false
}Fetch full details for one academic paper by Semantic Scholar paper ID, DOI (e.g. "10.1038/nature14539"), or ArXiv ID (e.g. "ARXIV:1706.03762"). Returns title, full abstract, an AI-generated one-sentence TLDR summary, all authors, venue, fields of study, citation and reference counts, and open-access PDF link when available. Call semanticscholar.papers_search first to discover a paper_id from a text query. Data: api.semanticscholar.org, no auth required.
| Argument | Type | Description |
|---|---|---|
| paper_id* | string | Semantic Scholar paper ID (40-char hash), DOI (e.g. "10.1038/nature14539"), or ArXiv ID (e.g. "ARXIV:1706.03762") to fetch full details for |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"paper_id"
],
"properties": {
"paper_id": {
"type": "string",
"minLength": 1,
"description": "Semantic Scholar paper ID (40-char hash), DOI (e.g. \"10.1038/nature14539\"), or ArXiv ID (e.g. \"ARXIV:1706.03762\") to fetch full details for"
}
},
"additionalProperties": false
}Search 200M+ academic papers by title and abstract text across all fields of study. Returns Semantic Scholar paper ID, DOI, title, year, venue, authors, citation count, and open-access PDF link when available. Complements openalex.works_search (broader topic classification) with Semantic Scholar's AI-driven relevance ranking and TLDR summaries. Call semanticscholar.get_paper with a result paper_id, DOI, or ArXiv ID for full detail including abstract and TLDR. Data: api.semanticscholar.org, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of results to return (1-25, default 10) |
| query* | string | Search query across paper title and abstract (e.g. "transformer attention") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Number of results to return (1-25, default 10)"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Search query across paper title and abstract (e.g. \"transformer attention\")"
}
},
"additionalProperties": false
}Get the latest telemetered rainfall reading for one SEPA gauge station by station_no. Returns the reading value (mm) and timestamp, the accumulation window in minutes, and the station's name and coordinates. Telemetry is transmitted once or twice per day. Call sepa-scotland.stations_search first to find a station_no. Data: SEPA, no auth required, Open Government Licence v3.0.
| Argument | Type | Description |
|---|---|---|
| station_no* | string | SEPA rainfall gauge station number (e.g. "15018"). Obtain from sepa-scotland.stations_search. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"station_no"
],
"properties": {
"station_no": {
"type": "string",
"minLength": 1,
"description": "SEPA rainfall gauge station number (e.g. \"15018\"). Obtain from sepa-scotland.stations_search."
}
},
"additionalProperties": false
}Get historical rainfall totals for one SEPA gauge station by station_no, aggregated by period: "hourly" (last 7 days), "daily" (last month), or "monthly" (multi-year archive, commonly a decade or more). Returns a timestamped list of rainfall totals in mm. Call sepa-scotland.stations_search first to find a station_no. Data: SEPA, no auth required, Open Government Licence v3.0.
| Argument | Type | Description |
|---|---|---|
| period | string | Aggregation period: "hourly" (last 7 days), "daily" (last month), or "monthly" (multi-year history). Default "daily". |
| station_no* | string | SEPA rainfall gauge station number (e.g. "15018"). Obtain from sepa-scotland.stations_search. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"station_no"
],
"properties": {
"period": {
"enum": [
"hourly",
"daily",
"monthly"
],
"type": "string",
"description": "Aggregation period: \"hourly\" (last 7 days), \"daily\" (last month), or \"monthly\" (multi-year history). Default \"daily\"."
},
"station_no": {
"type": "string",
"minLength": 1,
"description": "SEPA rainfall gauge station number (e.g. \"15018\"). Obtain from sepa-scotland.stations_search."
}
},
"additionalProperties": false
}Search Scotland's ~280-gauge live rainfall telemetry network by station name substring (e.g. "Glasgow"), or list all stations. Returns each station's number, name, latitude/longitude, and latest reading (value in mm and timestamp). Call sepa-scotland.station_current or sepa-scotland.rainfall_history with a result's station_no for live or historical data. Data: SEPA (Scottish Environment Protection Agency), no auth required, Open Government Licence v3.0.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of stations to return (1-50, default 20) |
| query | string | Substring to match against rainfall gauge station names (e.g. "Glasgow"). Omit to list all ~280 stations. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of stations to return (1-50, default 20)"
},
"query": {
"type": "string",
"description": "Substring to match against rainfall gauge station names (e.g. \"Glasgow\"). Omit to list all ~280 stations."
}
},
"additionalProperties": false
}Full product card by sku: shipping_options, delivery_slots, refund_policy and the merchant's encryption key (for end-to-end encrypted order details).
| Argument | Type | Description |
|---|---|---|
| sku* | string | |
| merchant* | string | Merchant slug. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"merchant",
"sku"
],
"properties": {
"sku": {
"type": "string"
},
"merchant": {
"type": "string",
"description": "Merchant slug."
}
},
"additionalProperties": false
}Full-text search in one merchant storefront (slug). Only active merchants and reviewed products; returns sku, title, price_usd, availability, requires_pii, fulfillment_mode. Page with next_cursor.
| Argument | Type | Description |
|---|---|---|
| limit | integer | |
| query | string | |
| cursor | string | |
| category | string | |
| merchant* | string | Merchant slug. |
| max_price_usd | number |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"merchant"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1
},
"query": {
"type": "string",
"maxLength": 200
},
"cursor": {
"type": "string"
},
"category": {
"type": "string"
},
"merchant": {
"type": "string",
"description": "Merchant slug."
},
"max_price_usd": {
"type": "number",
"minimum": 0
}
},
"additionalProperties": false
}Accept the four merchant documents (merchant-agreement, aup, dpa, refund-framework) by signing the APIbase acceptance message with the merchant wallet. Activates the merchant and returns the mk_live_ API key once.
| Argument | Type | Description |
|---|---|---|
| method | string | |
| wallet* | string | |
| message* | string | The exact acceptance text (see docs/integrator.md). |
| signature* | string | |
| doc_hashes* | array |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"wallet",
"doc_hashes",
"message",
"signature"
],
"properties": {
"method": {
"enum": [
"wallet_signature",
"checkbox+wallet_signature"
],
"type": "string"
},
"wallet": {
"type": "string"
},
"message": {
"type": "string",
"description": "The exact acceptance text (see docs/integrator.md)."
},
"signature": {
"type": "string"
},
"doc_hashes": {
"type": "array",
"items": {
"type": "object",
"required": [
"doc_id",
"version",
"sha256"
],
"properties": {
"doc_id": {
"type": "string"
},
"sha256": {
"type": "string"
},
"version": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"additionalProperties": false
}Delete products by sku (needs catalog:write). Refused with 409 and quote_ids while an open quote holds one of the skus.
| Argument | Type | Description |
|---|---|---|
| skus* | array |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"skus"
],
"properties": {
"skus": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 500,
"minItems": 1
}
},
"additionalProperties": false
}Create or update up to 500 products, idempotent by sku (needs catalog:write). Prices $1.00..limits.max_order_usd; one $0.01 __apibase_test item (is_test) is allowed. Items in a prohibited category come back in rejected[]; instruction-like text is saved as flagged and hidden until reviewed.
| Argument | Type | Description |
|---|---|---|
| items* | array | F-2 items: sku, title, description, price_usd, category, ... (see docs/integrator.md#catalog). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {}
},
"maxItems": 500,
"description": "F-2 items: sku, title, description, price_usd, category, ... (see docs/integrator.md#catalog)."
}
},
"additionalProperties": false
}Connection check for your merchant (any valid key): storefront initialize, tools/list = 6, a quote for the test SKU (voided at once, no payment), a signed webhook ping, and whether a PAID test order exists. Returns status connected|incomplete with per-step status ok|fail|skipped and a code; the public twin (statuses and codes only) is public_url.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}Deactivate the storefront (needs orders:write). No new quotes; open orders stay serviceable with existing keys.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}PAID -> CONFIRMED (needs orders:write); stops the confirm SLA (48 h by default). Repeating is a no-op. Another merchant's order is 404.
| Argument | Type | Description |
|---|---|---|
| order_id* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"order_id"
],
"properties": {
"order_id": {
"type": "string"
}
},
"additionalProperties": false
}Attach an https:// link (invoice, receipt) to your order (needs orders:write); the paying buyer sees it in shop.order.get documents.
| Argument | Type | Description |
|---|---|---|
| url* | string | |
| order_id* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"order_id",
"url"
],
"properties": {
"url": {
"type": "string"
},
"order_id": {
"type": "string"
}
},
"additionalProperties": false
}CONFIRMED -> SHIPPED for a physical order (needs orders:write): tracking {carrier, number, url?} and delivery_eta (ISO 8601); stops the ship SLA. Later, call again with delivered_at to mark it DELIVERED (starts the refund window). The buyer sees the tracking in shop.order.get. Repeating is a no-op.
| Argument | Type | Description |
|---|---|---|
| order_id* | string | |
| tracking | object | |
| delivered_at | string | |
| delivery_eta | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"order_id"
],
"properties": {
"order_id": {
"type": "string"
},
"tracking": {
"type": "object",
"required": [
"carrier",
"number"
],
"properties": {
"url": {
"type": "string"
},
"number": {
"type": "string"
},
"carrier": {
"type": "string"
}
},
"additionalProperties": false
},
"delivered_at": {
"type": "string"
},
"delivery_eta": {
"type": "string"
}
},
"additionalProperties": false
}Your own orders (needs orders:read), newest first. Filters: state, since (ISO 8601); pass next_cursor back as cursor for the next page.
| Argument | Type | Description |
|---|---|---|
| limit | integer | |
| since | string | |
| state | string | |
| cursor | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1
},
"since": {
"type": "string"
},
"state": {
"type": "string"
},
"cursor": {
"type": "string"
}
},
"additionalProperties": false
}Register a refund (needs refunds:write). The refund is YOUR transaction: send USDC back to the payer's wallet on the order's rail, then pass its tx_hash. APIbase only reads the chain and verifies: the transaction is confirmed, pays the payer, value >= amount. Verified: the order goes REFUND_PENDING -> REFUNDED (the refunds reach the order total) or PARTIALLY_REFUNDED (send further refunds until the total); otherwise 422 refund_rejected with the reason and the order is unchanged. More than the order total is 400. The platform fee is not returned. A transaction settles one refund only.
| Argument | Type | Description |
|---|---|---|
| amount* | string | |
| tx_hash* | string | |
| order_id* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"order_id",
"amount",
"tx_hash"
],
"properties": {
"amount": {
"type": "string"
},
"tx_hash": {
"type": "string"
},
"order_id": {
"type": "string"
}
},
"additionalProperties": false
}Register a merchant (status pending). Sign the sign-in message (purpose register, nonce from GET /api/v1/shop/auth/nonce) with the merchant wallet. Returns the documents to accept via shop.merchant.accept_terms.
| Argument | Type | Description |
|---|---|---|
| name* | string | |
| slug* | string | |
| wallet* | string | |
| country* | string | ISO 3166-1 alpha-2 |
| message* | string | Signed sign-in message (purpose register). |
| category* | string | |
| site_url* | string | |
| signature* | string | |
| contact_email* | string | |
| payout_wallet | string | |
| encryption_key* | object | |
| recovery_wallet | string | |
| payout_wallet_base | string | |
| payout_wallet_tempo | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"wallet",
"slug",
"name",
"category",
"country",
"contact_email",
"site_url",
"encryption_key",
"message",
"signature"
],
"properties": {
"name": {
"type": "string"
},
"slug": {
"type": "string"
},
"wallet": {
"type": "string"
},
"country": {
"type": "string",
"description": "ISO 3166-1 alpha-2"
},
"message": {
"type": "string",
"description": "Signed sign-in message (purpose register)."
},
"category": {
"type": "string"
},
"site_url": {
"type": "string"
},
"signature": {
"type": "string"
},
"contact_email": {
"type": "string"
},
"payout_wallet": {
"type": "string"
},
"encryption_key": {
"type": "object",
"required": [
"kid",
"alg",
"pub",
"sig_by_wallet"
],
"properties": {
"alg": {
"type": "string"
},
"kid": {
"type": "string"
},
"pub": {
"type": "string"
},
"sig_by_wallet": {
"type": "string",
"description": "EIP-191 signature by `wallet` over the encryption-key text."
}
},
"additionalProperties": false
},
"recovery_wallet": {
"type": "string"
},
"payout_wallet_base": {
"type": "string"
},
"payout_wallet_tempo": {
"type": "string"
}
},
"additionalProperties": false
}Revoke the Bearer key used for this call and return a fresh mk_live_ key (shown once). Works for deactivated merchants too, so open orders can still be closed.
| Argument | Type | Description |
|---|---|---|
| encryption_key | object | Optional: ALSO replace the buyer-data encryption key. New kid, same sig_by_wallet rule as registration. Envelopes sealed to the old kid are not re-encrypted: fetch them first. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"encryption_key": {
"type": "object",
"required": [
"kid",
"alg",
"pub",
"sig_by_wallet"
],
"properties": {
"alg": {
"type": "string"
},
"kid": {
"type": "string"
},
"pub": {
"type": "string"
},
"sig_by_wallet": {
"type": "string",
"description": "EIP-191 signature by `wallet` over the encryption-key text."
}
},
"description": "Optional: ALSO replace the buyer-data encryption key. New kid, same sig_by_wallet rule as registration. Envelopes sealed to the old kid are not re-encrypted: fetch them first.",
"additionalProperties": false
}
},
"additionalProperties": false
}Your own sales statistics (needs stats:read), the test SKU excluded: quotes -> paid -> closed, gross/net/fee, average order, refunds, disputes, top-20 products, by rail, by agent (client name/version, user-agent family, 8-char wallet hash prefix), webhook success % and p95, overdue SLA counts, the Base fee receivable (owed, invoiced, open fee invoices). Optional from/to (ISO 8601, default last 30 days, at most 366), group day|week. format=csv returns one row per paid order with tx_hash (payer as hash prefix only). Cached for 60 s.
| Argument | Type | Description |
|---|---|---|
| to | string | |
| from | string | |
| group | string | |
| format | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"to": {
"type": "string"
},
"from": {
"type": "string"
},
"group": {
"enum": [
"day",
"week"
],
"type": "string"
},
"format": {
"enum": [
"json",
"csv"
],
"type": "string"
}
},
"additionalProperties": false
}Register (or update with endpoint_id) an https webhook endpoint for the events you pick (needs webhooks:write): order.paid, order.confirmed, order.shipped, order.delivered, order.cancelled, refund.requested, refund.verified, dispute.opened, catalog.rejected, merchant.key_rotated, merchant.keys_reissued, subscription.started, subscription.renewed, subscription.past_due, subscription.canceled, subscription.expired, subscription.pull_failed, stream.settle_due. The URL must resolve to public addresses only. A new endpoint returns its whsec_ signing secret ONCE. Deliveries are signed (X-APIbase-Signature: t=<unix>,v1=HMAC-SHA256(secret, t.body)); dedupe by order_id. Another merchant's endpoint_id is 404.
| Argument | Type | Description |
|---|---|---|
| url* | string | |
| events* | array | |
| endpoint_id | string | |
| rotate_secret | boolean |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url",
"events"
],
"properties": {
"url": {
"type": "string"
},
"events": {
"type": "array",
"items": {
"type": "string"
}
},
"endpoint_id": {
"type": "string"
},
"rotate_secret": {
"type": "boolean"
}
},
"additionalProperties": false
}QUOTED: free cancel, the quote is voided and held stock released. After payment: before the merchant confirms it is always a refund (state REFUND_PENDING, due in 7 days); later only if the merchant accepts returns and the refund window is open, else 409 with the policy. Digital content delivered under waive_withdrawal cannot be cancelled.
| Argument | Type | Description |
|---|---|---|
| reason* | string | |
| order_id* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"order_id",
"reason"
],
"properties": {
"reason": {
"type": "string",
"maxLength": 500,
"minLength": 1
},
"order_id": {
"type": "string"
}
},
"additionalProperties": false
}Open a dispute on an order you paid (PAID..DELIVERED). reason_code: not_received, not_as_described, duplicate, canceled_recurring, agent_error, other; note up to 1000 characters. The order becomes DISPUTED and the merchant has 7 days to answer (by refunding it); an unanswered dispute expires and counts in the merchant's reputation, which can suspend its quotes. A verified refund resolves the dispute. One open dispute per order; another identity's order is 404.
| Argument | Type | Description |
|---|---|---|
| note | string | |
| order_id* | string | |
| reason_code* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"order_id",
"reason_code"
],
"properties": {
"note": {
"type": "string",
"maxLength": 1000
},
"order_id": {
"type": "string"
},
"reason_code": {
"enum": [
"not_received",
"not_as_described",
"duplicate",
"canceled_recurring",
"agent_error",
"other"
],
"type": "string"
}
},
"additionalProperties": false
}Order state, events, tracking {carrier, number, url?} and delivery_eta (null until the merchant ships), refund_policy and tx_hash. For the identity that paid also: fulfillment (the delivered content, repeatable), documents (merchant links), merchant_contact {email, site_url} while the order is open (not once CLOSED). Poll this after a payment_pending answer.
| Argument | Type | Description |
|---|---|---|
| order_id* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"order_id"
],
"properties": {
"order_id": {
"type": "string"
}
},
"additionalProperties": false
}Pay a quote with x402 (X-Payment header on this /mcp call, exact total_usd to the merchant payout wallet). The payment is settled and its receipt awaited BEFORE anything is delivered: status paid carries order {order_id, state, tx_hash, fulfillment?}; payment_pending (receipt not seen within 30 s) carries order_id, poll shop.order.get; repeating the call without payment on a quote you already paid returns already_placed. Without a payment the result is an error carrying the 402 challenge (accepts[0].payTo/amount, extra.quote_id) and pay.mpp.url for MPP clients. Errors: 402 payment_amount_mismatch, 410 quote_expired (a new quote is attached), 429 test_sku_daily_cap, 422 pii_required (+ merchant_encryption_key), 409 merchant_key_rotated, 400 pii_plaintext_rejected.
| Argument | Type | Description |
|---|---|---|
| pii | any | Buyer data the quote lists in requires_pii, ONE envelope per kind: {"<kind>": {kid, alg: "hpke-x25519-sha256-chacha20" | "sealed-box-x25519", ciphertext_b64}}, encrypted to merchant_encryption_key (AAD = quote_id, max 16 KB). Plaintext is refused with 400 pii_plaintext_rejected. |
| quote_id* | string | |
| buyer_company | string | |
| waive_withdrawal | boolean |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"quote_id"
],
"properties": {
"pii": {
"description": "Buyer data the quote lists in requires_pii, ONE envelope per kind: {\"<kind>\": {kid, alg: \"hpke-x25519-sha256-chacha20\" | \"sealed-box-x25519\", ciphertext_b64}}, encrypted to merchant_encryption_key (AAD = quote_id, max 16 KB). Plaintext is refused with 400 pii_plaintext_rejected."
},
"quote_id": {
"type": "string"
},
"buyer_company": {
"type": "string",
"maxLength": 200
},
"waive_withdrawal": {
"type": "boolean"
}
},
"additionalProperties": false
}Price snapshot for items of one merchant (slug): total_usd, expiry (15 min by default), stock held until then. Pay with x402 using pay.x402 (payTo, amount, network, asset, extra.quote_id). Physical items need shipping_option (an id from the product shipping_options; its price is added as shipping_usd) and, when the product lists delivery_slots, delivery_slot (held until the quote expires). A subscription item is quoted alone with subscribe: true (422 if the item has no subscription); the quote is period 1. Errors: 409 out_of_stock (alternatives), 409 slot_unavailable (alternatives = free slots), 429 test_sku_daily_cap.
| Argument | Type | Description |
|---|---|---|
| items* | array | |
| merchant* | string | Merchant slug. |
| buyer_ref | string | |
| subscribe | boolean | true: quote period 1 of the item subscription (one item, qty 1). The answer carries subscription_terms. |
| delivery_slot | string | |
| shipping_option | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"merchant",
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"sku",
"qty"
],
"properties": {
"qty": {
"type": "integer",
"minimum": 1
},
"sku": {
"type": "string"
},
"variant": {
"type": "string"
}
},
"additionalProperties": false
},
"minItems": 1
},
"merchant": {
"type": "string",
"description": "Merchant slug."
},
"buyer_ref": {
"type": "string",
"maxLength": 200
},
"subscribe": {
"type": "boolean",
"description": "true: quote period 1 of the item subscription (one item, qty 1). The answer carries subscription_terms."
},
"delivery_slot": {
"type": "string"
},
"shipping_option": {
"type": "string"
}
},
"additionalProperties": false
}Cancel a subscription you pay for. The period already paid runs to current_period_end (access_until); no further renewal quotes are issued. Idempotent. Another identity's subscription is 404.
| Argument | Type | Description |
|---|---|---|
| reason | string | |
| subscription_id* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"subscription_id"
],
"properties": {
"reason": {
"type": "string",
"maxLength": 500
},
"subscription_id": {
"type": "string"
}
},
"additionalProperties": false
}Tempo subscription of a merchant that runs its own renewal key: shop.subscription.get then carries pull_setup {key_id, token, limit, expiry, how}. Authorize that key address from the paying account (viem/tempo accessKey.authorize with expiry and limits [{token, amount: limit}], key address = pull_setup.key_id), then call this with the authorize tx_hash. The platform reads the keychain: the key must be authorized by the paying wallet, not revoked, not expired, and its remaining USDC limit must cover one period (400 keychain_not_authorized | keychain_expired | keychain_limit_too_low). On success pull_mode = tempo_keychain: the merchant renews each period with its key and pays the gas; you never sign again. Cancel with shop.subscription.cancel (the merchant then has nothing to pull) or revoke the key yourself with accessKey.revoke. Active or past_due, Tempo only; another identity's subscription is 404.
| Argument | Type | Description |
|---|---|---|
| tx_hash* | string | |
| subscription_id* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"subscription_id",
"tx_hash"
],
"properties": {
"tx_hash": {
"type": "string"
},
"subscription_id": {
"type": "string"
}
},
"additionalProperties": false
}Status of a subscription you pay for: status (active | past_due | canceled | expired), period_no, current_period_end, next_charge_at. From 72 h before to 72 h after current_period_end the answer carries renew {quote_id, expires_at, total_usd, period_no, pay}: pay that quote with x402 (shop.order.pay) to buy the next period; the same quote is returned while it lives, a new one once it expired. Nothing is charged automatically unless a pull is set up (pull_mode base_preauth, tempo_keychain or mpp_subscription): otherwise the buyer's agent renews by paying. pull_mode mpp_subscription (day/week plans paid on Tempo with the MPP subscription intent) shows renewal_key = the address of the key you authorized; the platform renews each period with it and pays the gas, and cancel never touches the chain (revoke the key yourself with accessKey.revoke). Once the period is over unpaid the call fails with 402 subscription_renewal_due (same renew attached); 72 h later the subscription is canceled (status_reason unpaid). Another identity's subscription is 404.
| Argument | Type | Description |
|---|---|---|
| subscription_id* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"subscription_id"
],
"properties": {
"subscription_id": {
"type": "string"
}
},
"additionalProperties": false
}Store 1..12 pre-signed USDC authorizations (EIP-3009 TransferWithAuthorization, signed with viem signTypedData) for the FUTURE periods of a Base subscription you pay for, so the platform pulls each period when it starts. Each authorization is for one period: from = the wallet that paid the subscription, to = the merchant payout wallet, value = the plan price in micro-USDC (when the platform fee is on, value = price - fee plus a second fee_authorization to the fee wallet for the fee; without it the fee is invoiced to the merchant), validAfter = the unix start of the period, validBefore 1 h to 72 h after it, a fresh nonce. The whole call is refused (422, nothing stored) if any item does not match. Nothing is debited early; cancel with shop.subscription.cancel (stored authorizations are never executed after it) or on-chain with cancelAuthorization(authorizer, nonce, signature) on the USDC contract. Status active or past_due, Base only; another identity's subscription is 404.
| Argument | Type | Description |
|---|---|---|
| authorizations* | array | |
| subscription_id* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"subscription_id",
"authorizations"
],
"properties": {
"authorizations": {
"type": "array",
"items": {
"type": "object",
"required": [
"period_no",
"authorization",
"signature"
],
"properties": {
"period_no": {
"type": "integer",
"minimum": 2
},
"signature": {
"type": "string"
},
"authorization": {
"type": "object",
"required": [
"from",
"to",
"value",
"validAfter",
"validBefore",
"nonce"
],
"properties": {
"to": {
"type": "string"
},
"from": {
"type": "string"
},
"nonce": {
"type": "string"
},
"value": {
"type": "string"
},
"validAfter": {
"type": "string"
},
"validBefore": {
"type": "string"
}
},
"additionalProperties": false
},
"fee_authorization": {
"type": "object",
"required": [
"authorization",
"signature"
],
"properties": {
"signature": {
"type": "string"
},
"authorization": {
"type": "object",
"required": [
"from",
"to",
"value",
"validAfter",
"validBefore",
"nonce"
],
"properties": {
"to": {
"type": "string"
},
"from": {
"type": "string"
},
"nonce": {
"type": "string"
},
"value": {
"type": "string"
},
"validAfter": {
"type": "string"
},
"validBefore": {
"type": "string"
}
},
"additionalProperties": false
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1
},
"subscription_id": {
"type": "string"
}
},
"additionalProperties": false
}Get the 7-day daily fire weather risk forecast for a location in Sweden from SMHI. Provides the Canadian Forest Fire Weather Index (FWI) system adapted for Swedish conditions. Returns per-day values for: fwiindex (composite fire danger 1–6 scale), grassfire (grass fire risk 1–6), forestdry (forest drought index), fwi (Fire Weather Index), isi (Initial Spread Index), bui (Build-Up Index), ffmc (Fine Fuel Moisture Code), dmc (Duff Moisture Code), dc (Drought Code), plus weather inputs: t (temperature °C), ws (wind speed m/s), wd (wind direction °), r (relative humidity %), and accumulated precipitation over 1/2/3/5/7/10/14/20/30/40/50/60 days. fwiindex scale: 1=Very low, 2=Low, 3=Moderate, 4=High, 5=Very high, 6=Extreme. Covers Sweden only (lat 55–70°N, lon 10–30°E). No API key required — SMHI open data, Creative Commons BY 4.0.
| Argument | Type | Description |
|---|---|---|
| period | string | Forecast period granularity. "daily" = 7 daily steps (default, recommended for planning). "hourly" = sub-daily steps with higher temporal resolution. |
| latitude* | number | Latitude in decimal degrees for the location in Sweden (55–70°N). Examples: 59.3293 = Stockholm, 55.6050 = Malmö, 65.5848 = Sundsvall. |
| longitude* | number | Longitude in decimal degrees for the location in Sweden (10–30°E). Examples: 18.0686 = Stockholm, 13.0038 = Malmö, 17.3102 = Sundsvall. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude"
],
"properties": {
"period": {
"enum": [
"daily",
"hourly"
],
"type": "string",
"default": "daily",
"description": "Forecast period granularity. \"daily\" = 7 daily steps (default, recommended for planning). \"hourly\" = sub-daily steps with higher temporal resolution."
},
"latitude": {
"type": "number",
"maximum": 70,
"minimum": 55,
"description": "Latitude in decimal degrees for the location in Sweden (55–70°N). Examples: 59.3293 = Stockholm, 55.6050 = Malmö, 65.5848 = Sundsvall."
},
"longitude": {
"type": "number",
"maximum": 30,
"minimum": 10,
"description": "Longitude in decimal degrees for the location in Sweden (10–30°E). Examples: 18.0686 = Stockholm, 13.0038 = Malmö, 17.3102 = Sundsvall."
}
},
"additionalProperties": false
}Get an 82-step hourly weather forecast (~10 days) for any point in Europe from the Swedish Meteorological and Hydrological Institute (SMHI). Uses SMHI's high-resolution NWP model (snow1g) covering most of Europe at ~2.5 km grid spacing. Each hourly step includes 25 parameters: air temperature (°C), wind speed (m/s), wind direction (°), wind gust (m/s), relative humidity (%), sea-level pressure (hPa), visibility (km), thunderstorm probability (%), cloud cover (%), precipitation amount (mm/h, with min/max/median), precipitation probability (%), frozen precipitation probability (%), symbol_code (WMO weather symbol 1–27). Swedish weather symbol codes: 1=clear sky, 2=nearly clear, 3=variable cloudiness, 4=half-cloudy, 5=cloudy, 6=overcast, 7=fog, 8=light rain, 9=moderate rain, 10=heavy rain, 11=thunderstorm, 12=light sleet, 13=moderate sleet, 14=heavy sleet, 15=light snow, 16=moderate snow, 17=heavy snow. No API key required — SMHI open data, Creative Commons BY 4.0.
| Argument | Type | Description |
|---|---|---|
| latitude* | number | Latitude in decimal degrees (WGS84). Covers most of Europe. Examples: 59.3293 = Stockholm, 57.7089 = Göteborg, 67.8558 = Umeå, 51.5074 = London. |
| longitude* | number | Longitude in decimal degrees (WGS84). Covers most of Europe. Examples: 18.0686 = Stockholm, 11.9746 = Göteborg, 20.2253 = Umeå, -0.1278 = London. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude"
],
"properties": {
"latitude": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude in decimal degrees (WGS84). Covers most of Europe. Examples: 59.3293 = Stockholm, 57.7089 = Göteborg, 67.8558 = Umeå, 51.5074 = London."
},
"longitude": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude in decimal degrees (WGS84). Covers most of Europe. Examples: 18.0686 = Stockholm, 11.9746 = Göteborg, 20.2253 = Umeå, -0.1278 = London."
}
},
"additionalProperties": false
}Get weather observations from a specific SMHI monitoring station in Sweden — current readings or time-series history (up to several months). SMHI operates 1000+ stations from southern Malmö to Abisko in the Arctic Circle. Stations measure different parameters: major airports (Stockholm-Arlanda, Göteborg-Landvetter) typically have temperature, wind, humidity, pressure, and visibility; automated rural stations may have just temperature and precipitation. Returns timestamp, numeric value, unit, and quality flag (G=approved, Y=provisional). Common station IDs: "97400" = Stockholm-Arlanda, "98230" = Stockholm-Observatoriekullen, "72630" = Göteborg, "61740" = Malmö, "188800" = Abisko (Lapland). Common parameter IDs: "1" = temperature (°C), "4" = wind speed (m/s), "6" = humidity (%), "9" = pressure (hPa), "39" = dew-point (°C). No API key required — SMHI open data, Creative Commons BY 4.0.
| Argument | Type | Description |
|---|---|---|
| period | string | Time window for observations. "latest-hour" = most recent single reading. "latest-day" = last 24 hours with hourly readings (~25 values, default). "latest-months" = recent months of data (availability varies by station). |
| station_id* | string | SMHI weather station ID (numeric string). Common examples: "97400" = Stockholm-Arlanda Flygplats, "98230" = Stockholm-Observatoriekullen A, "72630" = Göteborg, "188800" = Abisko (Lapland), "61740" = Malmö. Station IDs can be found via the SMHI Open Data Meteorological Observations catalog (opendata-download-metobs.smhi.se) — over 1000 stations across Sweden. |
| parameter_id | string | SMHI measurement parameter ID. Defaults to "1" (air temperature, °C, hourly). Common values: "1" = air temperature (°C), "4" = wind speed (m/s), "6" = relative humidity (%), "9" = sea-level pressure (hPa), "12" = visibility (m), "39" = dew-point temperature (°C). Not all parameters are measured at every station. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"station_id"
],
"properties": {
"period": {
"enum": [
"latest-hour",
"latest-day",
"latest-months"
],
"type": "string",
"default": "latest-day",
"description": "Time window for observations. \"latest-hour\" = most recent single reading. \"latest-day\" = last 24 hours with hourly readings (~25 values, default). \"latest-months\" = recent months of data (availability varies by station)."
},
"station_id": {
"type": "string",
"description": "SMHI weather station ID (numeric string). Common examples: \"97400\" = Stockholm-Arlanda Flygplats, \"98230\" = Stockholm-Observatoriekullen A, \"72630\" = Göteborg, \"188800\" = Abisko (Lapland), \"61740\" = Malmö. Station IDs can be found via the SMHI Open Data Meteorological Observations catalog (opendata-download-metobs.smhi.se) — over 1000 stations across Sweden."
},
"parameter_id": {
"type": "string",
"default": "1",
"description": "SMHI measurement parameter ID. Defaults to \"1\" (air temperature, °C, hourly). Common values: \"1\" = air temperature (°C), \"4\" = wind speed (m/s), \"6\" = relative humidity (%), \"9\" = sea-level pressure (hPa), \"12\" = visibility (m), \"39\" = dew-point temperature (°C). Not all parameters are measured at every station."
}
},
"additionalProperties": false
}Get all currently active official weather warnings issued by SMHI for Sweden. Returns event type, warning level, affected areas, and time windows in English. Warning levels: MESSAGE (advisory), YELLOW (moderate risk), ORANGE (significant risk), RED (extreme risk). Event types include: WIND (storm), PRECIPITATION (heavy rain/snow), THUNDERSTORM, SNOWFALL, SLEET, FIRE (wildfire risk), FROST, FOG, HIGH_TEMPERATURE, LOW_SEA_LEVEL, HIGH_SEA_LEVEL, WATER_SHORTAGE, WIND_SEA, AVALANCHE. Each warning specifies the Swedish counties (Länen) and municipalities affected. SMHI is the official Swedish meteorological authority — these are the same warnings issued to emergency services and broadcast to the Swedish public. No API key required — SMHI open data, Creative Commons BY 4.0.
| Argument | Type | Description |
|---|---|---|
| language | string | Response language preference (not sent to API — all warnings include English). "en" = English area names (default). "sv" = Swedish area names. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"language": {
"enum": [
"en",
"sv"
],
"type": "string",
"default": "en",
"description": "Response language preference (not sent to API — all warnings include English). \"en\" = English area names (default). \"sv\" = Swedish area names."
}
},
"additionalProperties": false
}Get full record for a Smithsonian Open Access item by ID — title, unit code (which of 19 museums), license (CC0 flag), record_link (canonical URL), data_source, online media (images/audio/video), freetext metadata, indexed structured fields. Use smithsonian.search to find IDs first (Smithsonian, CC0 subset)
| Argument | Type | Description |
|---|---|---|
| id* | string | Smithsonian record ID from a previous search result (e.g. "edanmdm-nmnhvz_5068559" or "ld1-*"). Use smithsonian.search first to find IDs. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "Smithsonian record ID from a previous search result (e.g. \"edanmdm-nmnhvz_5068559\" or \"ld1-*\"). Use smithsonian.search first to find IDs."
}
},
"additionalProperties": false
}Full-text search across 11M+ records from 19 Smithsonian museums — art, artifacts, scientific specimens, archives. Filter by type (objects/species/archives/books/online_media/events/places), sort by relevancy/newest/updated/random, and CC0-only by default. Covers National Museum of Natural History, Air and Space, American Art, Portrait Gallery, Freer|Sackler, and more (Smithsonian Open Access, CC0 subset)
| Argument | Type | Description |
|---|---|---|
| q* | string | Full-text search query. Example: "dinosaur", "picasso", "apollo 11". Supports EDAN query syntax (field:value, AND/OR). |
| rows | integer | Number of results to return (1-100, default 10). |
| sort | string | Sort order for results. Default: relevancy. |
| type | string | Filter by record type. E.g. "objects" for 3D objects, "species" for scientific specimens. |
| start | integer | Offset for pagination (default 0). Useful with rowCount from previous call. |
| cc0_only | boolean | Filter results to CC0-licensed records only (default true). Set false to include all records with their license field. |
| online_media_type | string | Filter to items that have media of a specific type. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"minLength": 1,
"description": "Full-text search query. Example: \"dinosaur\", \"picasso\", \"apollo 11\". Supports EDAN query syntax (field:value, AND/OR)."
},
"rows": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of results to return (1-100, default 10)."
},
"sort": {
"enum": [
"relevancy",
"newest",
"updated",
"random"
],
"type": "string",
"description": "Sort order for results. Default: relevancy."
},
"type": {
"enum": [
"archives",
"books",
"online_media",
"objects",
"events",
"places",
"species"
],
"type": "string",
"description": "Filter by record type. E.g. \"objects\" for 3D objects, \"species\" for scientific specimens."
},
"start": {
"type": "integer",
"minimum": 0,
"description": "Offset for pagination (default 0). Useful with rowCount from previous call."
},
"cc0_only": {
"type": "boolean",
"description": "Filter results to CC0-licensed records only (default true). Set false to include all records with their license field."
},
"online_media_type": {
"enum": [
"Images",
"Sound recordings",
"Videos"
],
"type": "string",
"description": "Filter to items that have media of a specific type."
}
},
"additionalProperties": false
}Get recent posts from a Bluesky user by handle — post text, timestamps, like/repost counts. Up to 100 posts per request (AT Protocol / Bluesky)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of posts to return (default 20, max 100) |
| handle* | string | Bluesky handle to get posts from (e.g. "jay.bsky.team") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"handle"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of posts to return (default 20, max 100)"
},
"handle": {
"type": "string",
"minLength": 3,
"description": "Bluesky handle to get posts from (e.g. \"jay.bsky.team\")"
}
},
"additionalProperties": false
}Get a Bluesky user profile — display name, bio, avatar URL, follower/following/post counts, account creation date. Lookup by handle (e.g. "jay.bsky.team") (AT Protocol / Bluesky)
| Argument | Type | Description |
|---|---|---|
| handle* | string | Bluesky handle (e.g. "jay.bsky.team", "pfrazee.com", "apibase.bsky.social") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"handle"
],
"properties": {
"handle": {
"type": "string",
"minLength": 3,
"description": "Bluesky handle (e.g. \"jay.bsky.team\", \"pfrazee.com\", \"apibase.bsky.social\")"
}
},
"additionalProperties": false
}Search posts across the Bluesky decentralized social network by keyword. Returns post text, author handle, display name, like/repost/reply counts, timestamps. Sort by relevance or latest. Filter by language (AT Protocol / Bluesky)
| Argument | Type | Description |
|---|---|---|
| q* | string | Search query for Bluesky posts (e.g. "MCP server", "AI agents", "Claude") |
| lang | string | Filter by language code (e.g. "en", "ja", "pt") |
| sort | string | Sort order: "top" (relevance) or "latest" (chronological) |
| limit | integer | Max results (default 25, max 100) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"minLength": 1,
"description": "Search query for Bluesky posts (e.g. \"MCP server\", \"AI agents\", \"Claude\")"
},
"lang": {
"type": "string",
"description": "Filter by language code (e.g. \"en\", \"ja\", \"pt\")"
},
"sort": {
"enum": [
"top",
"latest"
],
"type": "string",
"description": "Sort order: \"top\" (relevance) or \"latest\" (chronological)"
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Max results (default 25, max 100)"
}
},
"additionalProperties": false
}Trending hashtags on Mastodon — top topics with usage counts. Track social media trends on the decentralized network. No auth needed (Mastodon.social)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of trending hashtags to return (default 10, max 20) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of trending hashtags to return (default 10, max 20)"
}
},
"additionalProperties": false
}Trending posts on Mastodon (Fediverse) — popular content across the decentralized social network. Returns post text, author, reblogs, favourites, replies. No auth needed, $0 upstream (Mastodon.social)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of trending posts to return (default 10, max 40) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 40,
"minimum": 1,
"description": "Number of trending posts to return (default 10, max 40)"
}
},
"additionalProperties": false
}Get full metadata and column schema for one dataset on a specific Socrata portal — description, attribution, tags, view/download counts, last data update time, and the full column list (name, field name, data type, description). Use socrata.dataset_search first to find a domain + dataset_id. Data: per-portal Socrata views API (e.g. data.cityofnewyork.us), no auth required.
| Argument | Type | Description |
|---|---|---|
| domain* | string | Socrata portal hostname, e.g. "data.cityofnewyork.us" (from socrata.dataset_search results) |
| dataset_id* | string | Socrata dataset 4x4 identifier, e.g. "erm2-nwe9" (from socrata.dataset_search results) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"domain",
"dataset_id"
],
"properties": {
"domain": {
"type": "string",
"maxLength": 253,
"minLength": 3,
"description": "Socrata portal hostname, e.g. \"data.cityofnewyork.us\" (from socrata.dataset_search results)"
},
"dataset_id": {
"type": "string",
"pattern": "^[a-z0-9]{4}-[a-z0-9]{4}$",
"description": "Socrata dataset 4x4 identifier, e.g. \"erm2-nwe9\" (from socrata.dataset_search results)"
}
},
"additionalProperties": false
}Run a SoQL query against a specific dataset's actual data rows on a Socrata portal — supports $select, $where, $order, $group, $limit, and $offset clauses (see socrata.dataset_metadata for column names). Returns the matching rows as JSON. Use socrata.dataset_search first to find a domain + dataset_id. Data: per-portal Socrata resource API (e.g. data.cityofnewyork.us), no auth required.
| Argument | Type | Description |
|---|---|---|
| group | string | SoQL $group clause, e.g. "complaint_type" |
| limit | integer | Max rows to return, 1-1000 (default 50) |
| order | string | SoQL $order clause, e.g. "created_date DESC" |
| where | string | SoQL $where clause, e.g. "borough='BROOKLYN'" or "created_date>'2026-01-01'" |
| domain* | string | Socrata portal hostname, e.g. "data.cityofnewyork.us" (from socrata.dataset_search results) |
| offset | integer | Pagination offset (default 0) |
| select | string | SoQL $select clause, e.g. "complaint_type,count(*)" (see socrata.dataset_metadata for column names) |
| dataset_id* | string | Socrata dataset 4x4 identifier, e.g. "erm2-nwe9" (from socrata.dataset_search results) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"domain",
"dataset_id"
],
"properties": {
"group": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "SoQL $group clause, e.g. \"complaint_type\""
},
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Max rows to return, 1-1000 (default 50)"
},
"order": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "SoQL $order clause, e.g. \"created_date DESC\""
},
"where": {
"type": "string",
"maxLength": 500,
"minLength": 1,
"description": "SoQL $where clause, e.g. \"borough='BROOKLYN'\" or \"created_date>'2026-01-01'\""
},
"domain": {
"type": "string",
"maxLength": 253,
"minLength": 3,
"description": "Socrata portal hostname, e.g. \"data.cityofnewyork.us\" (from socrata.dataset_search results)"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset (default 0)"
},
"select": {
"type": "string",
"maxLength": 500,
"minLength": 1,
"description": "SoQL $select clause, e.g. \"complaint_type,count(*)\" (see socrata.dataset_metadata for column names)"
},
"dataset_id": {
"type": "string",
"pattern": "^[a-z0-9]{4}-[a-z0-9]{4}$",
"description": "Socrata dataset 4x4 identifier, e.g. \"erm2-nwe9\" (from socrata.dataset_search results)"
}
},
"additionalProperties": false
}Search the Socrata Discovery API — a single cross-portal catalog covering thousands of independently-hosted government/civic open-data portals worldwide (NYC, HHS, states, counties, and more) — by free-text query, portal domain, category, and/or tags. Returns each dataset's id, name, description, hosting domain, category, tags, license, and URL. Use the returned domain + id with socrata.dataset_metadata or socrata.query_dataset. Data: api.us.socrata.com, no auth required.
| Argument | Type | Description |
|---|---|---|
| only | string | Asset type to return (default "dataset") |
| tags | string | Comma-separated tag filter, e.g. "budget,finance" |
| limit | integer | Max results to return, 1-50 (default 10) |
| query | string | Free-text search across dataset name/description/tags, e.g. "covid" or "budget" |
| offset | integer | Pagination offset (default 0) |
| domains | string | Comma-separated Socrata portal hostname(s) to scope the search to, e.g. "data.cityofnewyork.us" |
| category | string | Filter by Socrata domain category, e.g. "Health", "Transportation", "Public Safety" |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"only": {
"enum": [
"dataset",
"chart",
"map",
"file",
"story",
"href"
],
"type": "string",
"description": "Asset type to return (default \"dataset\")"
},
"tags": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Comma-separated tag filter, e.g. \"budget,finance\""
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Max results to return, 1-50 (default 10)"
},
"query": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Free-text search across dataset name/description/tags, e.g. \"covid\" or \"budget\""
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset (default 0)"
},
"domains": {
"type": "string",
"maxLength": 500,
"minLength": 1,
"description": "Comma-separated Socrata portal hostname(s) to scope the search to, e.g. \"data.cityofnewyork.us\""
},
"category": {
"type": "string",
"maxLength": 100,
"minLength": 1,
"description": "Filter by Socrata domain category, e.g. \"Health\", \"Transportation\", \"Public Safety\""
}
},
"additionalProperties": false
}Get USDA SSURGO soil properties for a US location by lat/lon (WGS84). Returns dominant component(s) with depth-stratified horizons including drainage class, taxonomic class, pH, organic matter %, and sand/silt/clay percentages per horizon. Coverage: US continental + Alaska + Hawaii + territories; international/water/unsurveyed points return empty components array. Authoritative source: NRCS Soil Data Access (no auth, unlimited free, US Gov open data)
| Argument | Type | Description |
|---|---|---|
| lat* | number | Latitude in WGS84 decimal degrees (e.g. 42.0 for central Iowa farmland, 38.89 for Washington DC). Coverage: US continental + Alaska + Hawaii + territories. |
| lon* | number | Longitude in WGS84 decimal degrees (e.g. -93.5 for central Iowa, -77.03 for Washington DC). Note: longitude FIRST in coordinate pairs only matters for SQL — this field is independent. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude in WGS84 decimal degrees (e.g. 42.0 for central Iowa farmland, 38.89 for Washington DC). Coverage: US continental + Alaska + Hawaii + territories."
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude in WGS84 decimal degrees (e.g. -93.5 for central Iowa, -77.03 for Washington DC). Note: longitude FIRST in coordinate pairs only matters for SQL — this field is independent."
}
},
"additionalProperties": false
}List solar system bodies — planets, moons, asteroids, comets, dwarf planets. Returns name, body type, gravity, radius, and moon count. 1,400+ bodies. Filter by type. Source: Solar System OpenData (MIT license).
| Argument | Type | Description |
|---|---|---|
| body_type | string | Filter by body type: planet, moon, asteroid, comet, dwarf_planet, or all (default: all) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"body_type": {
"enum": [
"planet",
"moon",
"asteroid",
"comet",
"dwarf_planet",
"all"
],
"type": "string",
"description": "Filter by body type: planet, moon, asteroid, comet, dwarf_planet, or all (default: all)"
}
},
"additionalProperties": false
}Get comprehensive data for a solar system body — mass, radius, density, gravity, escape velocity, temperature, axial tilt, orbital period, semi-major axis, eccentricity, inclination, discoverer, and list of moons. Source: Solar System OpenData.
| Argument | Type | Description |
|---|---|---|
| id* | string | Body ID from search results (e.g. "mars", "jupiter", "moon", "europa", "ceres") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "Body ID from search results (e.g. \"mars\", \"jupiter\", \"moon\", \"europa\", \"ceres\")"
}
},
"additionalProperties": false
}Latest OVATION aurora visibility forecast aggregated into 10-degree latitude bands. Returns observation/forecast times plus top northern and southern hemisphere bands by max aurora probability — useful for aurora-tourism agents and high-latitude visibility checks. Source: NOAA SWPC (NODD public domain)
| Argument | Type | Description |
|---|---|---|
| refresh | boolean | No-op flag for cache busting. Set to true to bypass the 5-minute cache and fetch the latest aurora oval forecast. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"refresh": {
"type": "boolean",
"description": "No-op flag for cache busting. Set to true to bypass the 5-minute cache and fetch the latest aurora oval forecast."
}
},
"additionalProperties": false
}Current planetary K-index with G1-G5 storm severity classification, plus the maximum K-index observed in the rolling 6-hour window. Returns latest reading, window_max, and the last N 1-minute observations. Source: NOAA SWPC real-time stream (NODD public domain)
| Argument | Type | Description |
|---|---|---|
| points | integer | Number of recent 1-minute K-index readings to return alongside the latest reading (default 30, max 120). The full 6-hour rolling window is always scanned for the window_max field regardless of this value. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"points": {
"type": "integer",
"maximum": 120,
"minimum": 1,
"description": "Number of recent 1-minute K-index readings to return alongside the latest reading (default 30, max 120). The full 6-hour rolling window is always scanned for the window_max field regardless of this value."
}
},
"additionalProperties": false
}Currently active sunspot regions with NOAA AR number, location (heliographic), area, spot class, magnetic class, and 24-hour C/M/X-class flare probabilities. Sorted by most recently observed first. Source: NOAA SWPC (NODD public domain)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max number of active sunspot regions to return, sorted by most recently observed first (default 20, max 50). Each entry includes NOAA AR number, location, magnetic class, and C/M/X-class flare probabilities. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Max number of active sunspot regions to return, sorted by most recently observed first (default 20, max 50). Each entry includes NOAA AR number, location, magnetic class, and C/M/X-class flare probabilities."
}
},
"additionalProperties": false
}Real-time solar wind speed (km/s), proton density (per cm³), and temperature (K) from the ACE/DSCOVR L1 monitors. Returns the latest reading plus the last N 1-minute observations. Source: NOAA SWPC RTSW (NODD public domain)
| Argument | Type | Description |
|---|---|---|
| points | integer | Number of recent 1-minute solar-wind readings to return alongside the latest reading (default 20, max 60). Each reading includes proton speed (km/s), density (per cm³), temperature (K), and quality score. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"points": {
"type": "integer",
"maximum": 60,
"minimum": 1,
"description": "Number of recent 1-minute solar-wind readings to return alongside the latest reading (default 20, max 60). Each reading includes proton speed (km/s), density (per cm³), temperature (K), and quality score."
}
},
"additionalProperties": false
}Search federal awards by agency name (e.g. "Defense", "NASA", "Health and Human Services"). Returns top awards by amount for a fiscal year. Source: USAspending.gov — covers all federal agencies.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of top awards to return (1-25, default 10) |
| agency_name* | string | Federal agency name or keyword (e.g. "Defense", "NASA", "Health and Human Services") |
| fiscal_year | integer | Fiscal year (e.g. 2025). Default: current year. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"agency_name"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Number of top awards to return (1-25, default 10)"
},
"agency_name": {
"type": "string",
"minLength": 1,
"description": "Federal agency name or keyword (e.g. \"Defense\", \"NASA\", \"Health and Human Services\")"
},
"fiscal_year": {
"type": "integer",
"maximum": 2026,
"minimum": 2000,
"description": "Fiscal year (e.g. 2025). Default: current year."
}
},
"additionalProperties": false
}Search 60M+ US federal contract and grant awards by keyword, recipient, or NAICS code. Returns award amount, recipient, agency, dates, and description. Sorted by amount descending. Source: USAspending.gov (DATA Act mandate, US Gov open data).
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of results to return (1-25, default 10) |
| keyword* | string | Search keyword for federal awards (e.g. "artificial intelligence", "cybersecurity", company name) |
| award_type | string | Filter by award type: contracts, grants, or all (default: all) |
| fiscal_year | integer | Fiscal year to filter (e.g. 2025). Default: current year. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"keyword"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "Number of results to return (1-25, default 10)"
},
"keyword": {
"type": "string",
"minLength": 1,
"description": "Search keyword for federal awards (e.g. \"artificial intelligence\", \"cybersecurity\", company name)"
},
"award_type": {
"enum": [
"contracts",
"grants",
"all"
],
"type": "string",
"description": "Filter by award type: contracts, grants, or all (default: all)"
},
"fiscal_year": {
"type": "integer",
"maximum": 2026,
"minimum": 2000,
"description": "Fiscal year to filter (e.g. 2025). Default: current year."
}
},
"additionalProperties": false
}Get total US federal spending by state for contracts, grants, or all awards in a fiscal year. Returns all 50+ states sorted by spending amount. Useful for regional economic analysis and policy research. Source: USAspending.gov.
| Argument | Type | Description |
|---|---|---|
| award_type | string | Filter by award type: contracts, grants, or all (default: all) |
| fiscal_year | integer | Fiscal year (e.g. 2025). Default: current year. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"award_type": {
"enum": [
"contracts",
"grants",
"all"
],
"type": "string",
"description": "Filter by award type: contracts, grants, or all (default: all)"
},
"fiscal_year": {
"type": "integer",
"maximum": 2026,
"minimum": 2017,
"description": "Fiscal year (e.g. 2025). Default: current year."
}
},
"additionalProperties": false
}Search 86K+ food ingredients with nutrition data — sortable by calories, protein, fat, or carbs (Spoonacular)
| Argument | Type | Description |
|---|---|---|
| sort | string | Sort results by nutrient value |
| query* | string | Ingredient search query (e.g. "banana", "olive oil", "chicken breast") |
| number | integer | Number of results to return (default 10, max 100) |
| sort_direction | string | Sort direction (default asc) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"sort": {
"enum": [
"calories",
"protein",
"fat",
"carbs"
],
"type": "string",
"description": "Sort results by nutrient value"
},
"query": {
"type": "string",
"description": "Ingredient search query (e.g. \"banana\", \"olive oil\", \"chicken breast\")"
},
"number": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of results to return (default 10, max 100)"
},
"sort_direction": {
"enum": [
"asc",
"desc"
],
"type": "string",
"description": "Sort direction (default asc)"
}
},
"additionalProperties": false
}Analyze a recipe by title and ingredient list — returns full nutrition breakdown, dietary labels, and caloric distribution (Spoonacular)
| Argument | Type | Description |
|---|---|---|
| title* | string | Recipe title (e.g. "Spaghetti Carbonara") |
| servings | integer | Number of servings (default 1) |
| ingredients* | array | List of ingredient strings (e.g. ["200g spaghetti", "100g guanciale", "2 eggs"]) |
| instructions | string | Cooking instructions as plain text |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"title",
"ingredients"
],
"properties": {
"title": {
"type": "string",
"description": "Recipe title (e.g. \"Spaghetti Carbonara\")"
},
"servings": {
"type": "integer",
"minimum": 1,
"description": "Number of servings (default 1)"
},
"ingredients": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of ingredient strings (e.g. [\"200g spaghetti\", \"100g guanciale\", \"2 eggs\"])"
},
"instructions": {
"type": "string",
"description": "Cooking instructions as plain text"
}
},
"additionalProperties": false
}Find recipes using ingredients you have on hand — shows used/missing ingredients count, ranked by ingredient match (Spoonacular)
| Argument | Type | Description |
|---|---|---|
| number | integer | Number of results to return (default 10, max 100) |
| ranking | integer | Ranking mode: 1 = maximize used ingredients, 2 = minimize missing ingredients (default 1) |
| ingredients* | string | Comma-separated list of ingredients you have (e.g. "chicken,rice,tomato") |
| ignore_pantry | boolean | Ignore common pantry items like water, flour, salt (default false) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"ingredients"
],
"properties": {
"number": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of results to return (default 10, max 100)"
},
"ranking": {
"type": "integer",
"maximum": 2,
"minimum": 1,
"description": "Ranking mode: 1 = maximize used ingredients, 2 = minimize missing ingredients (default 1)"
},
"ingredients": {
"type": "string",
"description": "Comma-separated list of ingredients you have (e.g. \"chicken,rice,tomato\")"
},
"ignore_pantry": {
"type": "boolean",
"description": "Ignore common pantry items like water, flour, salt (default false)"
}
},
"additionalProperties": false
}Get full recipe details by ID — ingredients, step-by-step instructions, nutrition facts, dietary labels, prep time, servings, and price per serving (Spoonacular)
| Argument | Type | Description |
|---|---|---|
| id* | integer | Spoonacular recipe ID (from recipe_search or by_ingredients results) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"description": "Spoonacular recipe ID (from recipe_search or by_ingredients results)"
}
},
"additionalProperties": false
}Search 365K+ recipes with dietary filters (vegan, keto, gluten-free), cuisine, meal type, and max prep time — includes nutrition data per result (Spoonacular)
| Argument | Type | Description |
|---|---|---|
| diet | string | Diet filter: gluten free, ketogenic, vegetarian, lacto-vegetarian, ovo-vegetarian, vegan, pescetarian, paleo, primal, whole30 |
| type | string | Meal type: main course, side dish, dessert, appetizer, salad, bread, breakfast, soup, beverage, sauce, marinade, fingerfood, snack, drink |
| query | string | Search query for recipes (e.g. "pasta", "chicken soup") |
| number | integer | Number of results to return (default 10, max 100) |
| offset | integer | Offset for pagination (default 0) |
| cuisine | string | Cuisine filter — comma-separated (e.g. "italian", "mexican,chinese") |
| intolerances | string | Intolerances filter — comma-separated (e.g. "dairy,gluten,peanut,shellfish") |
| max_ready_time | integer | Maximum preparation time in minutes |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"diet": {
"type": "string",
"description": "Diet filter: gluten free, ketogenic, vegetarian, lacto-vegetarian, ovo-vegetarian, vegan, pescetarian, paleo, primal, whole30"
},
"type": {
"type": "string",
"description": "Meal type: main course, side dish, dessert, appetizer, salad, bread, breakfast, soup, beverage, sauce, marinade, fingerfood, snack, drink"
},
"query": {
"type": "string",
"description": "Search query for recipes (e.g. \"pasta\", \"chicken soup\")"
},
"number": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of results to return (default 10, max 100)"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Offset for pagination (default 0)"
},
"cuisine": {
"type": "string",
"description": "Cuisine filter — comma-separated (e.g. \"italian\", \"mexican,chinese\")"
},
"intolerances": {
"type": "string",
"description": "Intolerances filter — comma-separated (e.g. \"dairy,gluten,peanut,shellfish\")"
},
"max_ready_time": {
"type": "integer",
"description": "Maximum preparation time in minutes"
}
},
"additionalProperties": false
}Basketball games and scores — NBA, EuroLeague, and 100+ leagues worldwide. Filter by date, league, season, team. Live and historical data (API-Sports)
| Argument | Type | Description |
|---|---|---|
| date | string | Date in YYYY-MM-DD format. Returns all basketball games for that day. |
| team | integer | Team ID to filter games |
| league | integer | League ID (e.g. 12 = NBA) |
| season | string | Season (e.g. "2025-2026") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"date": {
"type": "string",
"description": "Date in YYYY-MM-DD format. Returns all basketball games for that day."
},
"team": {
"type": "integer",
"description": "Team ID to filter games"
},
"league": {
"type": "integer",
"description": "League ID (e.g. 12 = NBA)"
},
"season": {
"type": "string",
"description": "Season (e.g. \"2025-2026\")"
}
},
"additionalProperties": false
}Get NBA and NFL game results by date — scores, teams, status (Final/In Progress/Scheduled). Filter by date, season, or team. Covers all NBA and NFL games with real-time scores (BallDontLie)
| Argument | Type | Description |
|---|---|---|
| date | string | Game date (YYYY-MM-DD, e.g. "2026-03-29"). Returns all games on that date |
| limit | integer | Max results (1-25, default 10) |
| sport | string | Sport league: "nba" (default) or "nfl" |
| season | integer | Season year (e.g. 2025 for 2025-26 season) |
| team_id | integer | Filter by team ID (get IDs from bdl.teams) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"date": {
"type": "string",
"description": "Game date (YYYY-MM-DD, e.g. \"2026-03-29\"). Returns all games on that date"
},
"limit": {
"type": "integer",
"default": 10,
"maximum": 25,
"minimum": 1,
"description": "Max results (1-25, default 10)"
},
"sport": {
"enum": [
"nba",
"nfl"
],
"type": "string",
"default": "nba",
"description": "Sport league: \"nba\" (default) or \"nfl\""
},
"season": {
"type": "integer",
"description": "Season year (e.g. 2025 for 2025-26 season)"
},
"team_id": {
"type": "integer",
"description": "Filter by team ID (get IDs from bdl.teams)"
}
},
"additionalProperties": false
}Search NBA players by name — returns position, jersey number, and current team. Example: "lebron" → LeBron James #23 F, Los Angeles Lakers (BallDontLie)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max results (1-25, default 10) |
| search | string | Search by player name (e.g. "lebron", "curry", "mahomes") |
| team_id | integer | Filter by team ID |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"default": 10,
"maximum": 25,
"minimum": 1,
"description": "Max results (1-25, default 10)"
},
"search": {
"type": "string",
"description": "Search by player name (e.g. \"lebron\", \"curry\", \"mahomes\")"
},
"team_id": {
"type": "integer",
"description": "Filter by team ID"
}
},
"additionalProperties": false
}List NBA and NFL teams with conference, division, city, and abbreviation. Filter by conference (East/West for NBA, AFC/NFC for NFL) or division (BallDontLie)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max results (1-30, default 30) |
| sport | string | Sport league: "nba" (default) or "nfl" |
| division | string | Filter by division (e.g. "Atlantic", "Pacific" for NBA) |
| conference | string | Filter by conference (e.g. "East", "West" for NBA; "AFC", "NFC" for NFL) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"default": 30,
"maximum": 30,
"minimum": 1,
"description": "Max results (1-30, default 30)"
},
"sport": {
"enum": [
"nba",
"nfl"
],
"type": "string",
"default": "nba",
"description": "Sport league: \"nba\" (default) or \"nfl\""
},
"division": {
"type": "string",
"description": "Filter by division (e.g. \"Atlantic\", \"Pacific\" for NBA)"
},
"conference": {
"type": "string",
"description": "Filter by conference (e.g. \"East\", \"West\" for NBA; \"AFC\", \"NFC\" for NFL)"
}
},
"additionalProperties": false
}Football/soccer fixtures, live scores, and results — filter by date, league (Premier League, La Liga, Champions League...), team. 2000+ leagues, 171 countries. 362+ fixtures per day (API-Sports)
| Argument | Type | Description |
|---|---|---|
| date | string | Date in YYYY-MM-DD format (e.g. "2026-03-20"). Returns all fixtures for that day. |
| live | boolean | Set to true to get only live/in-play fixtures |
| team | integer | Team ID to filter fixtures |
| league | integer | League ID (e.g. 39 = Premier League, 140 = La Liga, 78 = Bundesliga) |
| season | integer | Season year (e.g. 2025) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"date": {
"type": "string",
"description": "Date in YYYY-MM-DD format (e.g. \"2026-03-20\"). Returns all fixtures for that day."
},
"live": {
"type": "boolean",
"description": "Set to true to get only live/in-play fixtures"
},
"team": {
"type": "integer",
"description": "Team ID to filter fixtures"
},
"league": {
"type": "integer",
"description": "League ID (e.g. 39 = Premier League, 140 = La Liga, 78 = Bundesliga)"
},
"season": {
"type": "integer",
"description": "Season year (e.g. 2025)"
}
},
"additionalProperties": false
}Search football leagues and cups by country or name. Returns league ID, name, type (league/cup), country, logo. Use IDs for fixtures and standings queries (API-Sports)
| Argument | Type | Description |
|---|---|---|
| search | string | Search league by name (e.g. "Premier", "Champions") |
| country | string | Country name to filter leagues (e.g. "England", "Spain", "Germany") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"search": {
"type": "string",
"description": "Search league by name (e.g. \"Premier\", \"Champions\")"
},
"country": {
"type": "string",
"description": "Country name to filter leagues (e.g. \"England\", \"Spain\", \"Germany\")"
}
},
"additionalProperties": false
}League table/standings — rank, points, wins, draws, losses, goals for/against. All major leagues: Premier League (39), La Liga (140), Bundesliga (78), Serie A (135), Ligue 1 (61) (API-Sports)
| Argument | Type | Description |
|---|---|---|
| league* | integer | League ID (e.g. 39 = Premier League, 140 = La Liga, 135 = Serie A) |
| season | integer | Season year (default: current season, e.g. 2025) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"league"
],
"properties": {
"league": {
"type": "integer",
"description": "League ID (e.g. 39 = Premier League, 140 = La Liga, 135 = Serie A)"
},
"season": {
"type": "integer",
"description": "Season year (default: current season, e.g. 2025)"
}
},
"additionalProperties": false
}Get the full metadata for a specific SSB table — dimension codes, valid value codes, and human-readable labels needed to construct a data query. Returns table title, last-updated timestamp, and an array of variables (dimensions) each with its code (e.g. "Region"), readable name, list of valid value codes, and corresponding labels. This is the required second step before querying data: call ssbnorway.data.search to find a table ID, then ssbnorway.data.metadata to learn the dimension codes and valid values, then ssbnorway.data.query to retrieve actual data. Common table IDs: "07459" (population by region/sex/age/year), "09842" (GDP per capita), "05111" (labour force), "03013" (CPI).
| Argument | Type | Description |
|---|---|---|
| table_id* | string | SSB table ID (numeric string). Obtain from ssbnorway.search results. Common tables: "07459" (population by region/sex/age/year), "09842" (GDP per capita by year), "05111" (labour force status by sex/age/year), "03013" (CPI / consumer price index by year), "08655" (exports/imports by product/country/year). Returns dimension codes and valid values required for ssbnorway.query. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"table_id"
],
"properties": {
"table_id": {
"type": "string",
"description": "SSB table ID (numeric string). Obtain from ssbnorway.search results. Common tables: \"07459\" (population by region/sex/age/year), \"09842\" (GDP per capita by year), \"05111\" (labour force status by sex/age/year), \"03013\" (CPI / consumer price index by year), \"08655\" (exports/imports by product/country/year). Returns dimension codes and valid values required for ssbnorway.query."
}
},
"additionalProperties": false
}Fetch statistical data from a specific SSB Norway table using dimension filters. Returns a JSON-stat2 dataset with dimension labels, value arrays, and metadata (updated timestamp, source, notes). Use ssbnorway.data.search to find the table ID, ssbnorway.data.metadata to get valid dimension codes and values, then pass them here as a query array. Each filter specifies a dimension code and selected values. Use filter="item" with specific value codes to select rows, filter="top" with count to get the N most recent years. Unfiltered dimensions with elimination=true are aggregated into totals. Covers 1,900+ statistical domains across Norway.
| Argument | Type | Description |
|---|---|---|
| query* | array | Array of dimension filters. Each filter selects specific values for one variable. Unfiltered dimensions are aggregated (eliminated) if elimination=true, or omitted. Example: [{code:'ContentsCode',selection:{filter:'item',values:['Personer1']}}, {code:'Tid',selection:{filter:'top',values:['3']}}]. Response is JSON-stat2 with label, updated, dimension map, and values array. |
| table_id* | string | SSB table ID to query — the numeric ID from ssbnorway.search or ssbnorway.metadata. Example: "07459" for population, "09842" for GDP. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"table_id",
"query"
],
"properties": {
"query": {
"type": "array",
"items": {
"type": "object",
"required": [
"code",
"selection"
],
"properties": {
"code": {
"type": "string",
"description": "Dimension code from ssbnorway.metadata variables[].code. Examples: 'Region', 'Kjonn', 'Alder', 'ContentsCode', 'Tid'."
},
"selection": {
"type": "object",
"required": [
"filter",
"values"
],
"properties": {
"filter": {
"type": "string",
"description": "Filter type. Use 'item' to select specific values by code, 'top' to select the N most recent periods (for Tid/year dimensions, e.g. values=[\"3\"]), 'all' to include all values for a dimension."
},
"values": {
"type": "array",
"items": {
"type": "string"
},
"description": "Array of value codes. For filter='item': codes from ssbnorway.metadata variables[].values (e.g. [\"0\"] for 'The whole country' in Region). For filter='top': a single count string like [\"5\"] for 5 most recent years. For filter='all': use [\"*\"]."
}
},
"description": "Selection criteria for this dimension.",
"additionalProperties": false
}
},
"description": "Filter specifying which values to include for one table dimension.",
"additionalProperties": false
},
"description": "Array of dimension filters. Each filter selects specific values for one variable. Unfiltered dimensions are aggregated (eliminated) if elimination=true, or omitted. Example: [{code:'ContentsCode',selection:{filter:'item',values:['Personer1']}}, {code:'Tid',selection:{filter:'top',values:['3']}}]. Response is JSON-stat2 with label, updated, dimension map, and values array."
},
"table_id": {
"type": "string",
"description": "SSB table ID to query — the numeric ID from ssbnorway.search or ssbnorway.metadata. Example: \"07459\" for population, \"09842\" for GDP."
}
},
"additionalProperties": false
}Search 300K+ Statistics Norway (SSB) statistical tables by keyword. Returns matching table IDs, full titles, subject paths, relevance scores, and publication dates. SSB is the Norwegian national statistics authority and covers population, GDP, employment, prices, energy, immigration, health, education, trade, and more. Use the returned table ID with ssbnorway.data.metadata to discover dimension codes, then ssbnorway.data.query to fetch data. Example keywords: "population", "gdp", "unemployment", "cpi inflation", "exports", "immigration", "energy", "housing prices", "fertility".
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of tables to return (1–50, default 10). |
| query* | string | Keyword to search for in SSB table titles. Examples: "population", "gdp", "unemployment", "inflation", "energy", "immigration", "agriculture", "exports". Returns tables matching the keyword with IDs, titles, and publication dates. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"default": 10,
"maximum": 50,
"minimum": 1,
"description": "Maximum number of tables to return (1–50, default 10)."
},
"query": {
"type": "string",
"description": "Keyword to search for in SSB table titles. Examples: \"population\", \"gdp\", \"unemployment\", \"inflation\", \"energy\", \"immigration\", \"agriculture\", \"exports\". Returns tables matching the keyword with IDs, titles, and publication dates."
}
},
"additionalProperties": false
}Get Norwegian population statistics from the official SSB population register (table 07459). Returns total resident population by year as a JSON-stat2 dataset. Covers Norway as a whole (region_code="0") or any county/municipality by region code. Data goes back to 1986 and is updated annually (reference date January 1st each year). Region codes: "0" = whole country, "03" = Oslo, "11" = Rogaland, "15" = Møre og Romsdal, "18" = Nordland, "46" = Vestland, "50" = Trøndelag. Use ssbnorway.data.metadata on table 07459 to get all 994 municipality-level region codes. This is a simplified shortcut — for sex/age breakdowns use ssbnorway.data.query with table 07459 and the Kjonn/Alder dimension codes from ssbnorway.data.metadata.
| Argument | Type | Description |
|---|---|---|
| years | integer | Number of most recent years to include (1–20, default 5). Table 07459 covers 1986 to the current reference year. |
| region_code | string | Norwegian region code from SSB classification. "0" = The whole country (default). County codes (2024 structure): "31" Østfold, "32" Akershus, "03" Oslo, "33" Buskerud, "34" Innlandet, "38" Telemark, "39" Vestfold, "40" Aust-Agder, "42" Vest-Agder, "11" Rogaland, "46" Vestland, "15" Møre og Romsdal, "50" Trøndelag, "18" Nordland, "55" Troms, "56" Finnmark. Use ssbnorway.metadata on table 07459 for all valid municipality codes. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"years": {
"type": "integer",
"default": 5,
"maximum": 20,
"minimum": 1,
"description": "Number of most recent years to include (1–20, default 5). Table 07459 covers 1986 to the current reference year."
},
"region_code": {
"type": "string",
"default": "0",
"description": "Norwegian region code from SSB classification. \"0\" = The whole country (default). County codes (2024 structure): \"31\" Østfold, \"32\" Akershus, \"03\" Oslo, \"33\" Buskerud, \"34\" Innlandet, \"38\" Telemark, \"39\" Vestfold, \"40\" Aust-Agder, \"42\" Vest-Agder, \"11\" Rogaland, \"46\" Vestland, \"15\" Møre og Romsdal, \"50\" Trøndelag, \"18\" Nordland, \"55\" Troms, \"56\" Finnmark. Use ssbnorway.metadata on table 07459 for all valid municipality codes."
}
},
"additionalProperties": false
}Get the most recently released Standard Ebooks (up to the latest 15), most-recent first. Returns title, author, publish date, summary, subjects, cover image URL, and direct download links (EPUB, advanced EPUB, Kobo Kepub, Kindle AZW3, XHTML). Data: standardebooks.org Atom feed, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max number of recent releases to return (default 15, max 15 — feed size is fixed). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 15,
"minimum": 1,
"description": "Max number of recent releases to return (default 15, max 15 — feed size is fixed)."
}
},
"additionalProperties": false
}Search the Standard Ebooks catalog of carefully typeset, public-domain ebooks by title, author, or subject keyword. Returns title, author, language, description, subjects, cover image URL, and direct download links (EPUB, advanced EPUB, Kobo Kepub, Kindle AZW3, XHTML). Sortable by newest, author name, reading ease, length, or popularity. Data: standardebooks.org OPDS 2.0 JSON feed, no auth required.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default 1). |
| sort | string | Sort order: "newest" (S.E. release date, default), "author" (author name A-Z), "reading_ease" (easiest first), "length" (shortest first), "popularity" (most downloaded first). |
| query* | string | Free-text search across title, author name, and subject (e.g. "frankenstein", "jane austen"). Required — an empty query returns zero results. |
| per_page | integer | Results per page (default 12, max 60). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)."
},
"sort": {
"enum": [
"newest",
"author",
"reading_ease",
"length",
"popularity"
],
"type": "string",
"description": "Sort order: \"newest\" (S.E. release date, default), \"author\" (author name A-Z), \"reading_ease\" (easiest first), \"length\" (shortest first), \"popularity\" (most downloaded first)."
},
"query": {
"type": "string",
"minLength": 1,
"description": "Free-text search across title, author name, and subject (e.g. \"frankenstein\", \"jane austen\"). Required — an empty query returns zero results."
},
"per_page": {
"type": "integer",
"maximum": 60,
"minimum": 1,
"description": "Results per page (default 12, max 60)."
}
},
"additionalProperties": false
}Get full metadata (multilingual descriptions, supported locales, category, last data and metadata update timestamps) for one Statbel datasource, identified by the datasource_id from statbel.list_datasources. An invalid or unpublished id returns an empty upstream response. Data: bestat.statbel.fgov.be, Belgian statistics office, no auth required.
| Argument | Type | Description |
|---|---|---|
| datasource_id* | string | Datasource UUID from statbel.list_datasources (e.g. "e957ac31-44a2-4718-8469-10470d3c41d9"). An invalid or unpublished id returns an empty upstream response. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"datasource_id"
],
"properties": {
"datasource_id": {
"type": "string",
"format": "uuid",
"description": "Datasource UUID from statbel.list_datasources (e.g. \"e957ac31-44a2-4718-8469-10470d3c41d9\"). An invalid or unpublished id returns an empty upstream response."
}
},
"additionalProperties": false
}Browse the ~180 raw Statbel datasources that back the curated views, filterable by a case-insensitive name/description search and by supported language. Returns datasource_id, name, description, and supported locales — use datasource_id with statbel.datasource_detail for full metadata. Data: bestat.statbel.fgov.be, Belgian statistics office, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max number of results to return (1-100). Defaults to 20. |
| locale | string | Only return datasources that support this language (checked against supportedLocales). Optional — omit to return datasources in any language. |
| offset | integer | Number of results to skip, for pagination. Defaults to 0. |
| search | string | Case-insensitive substring filter on the datasource name or description. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Max number of results to return (1-100). Defaults to 20."
},
"locale": {
"enum": [
"fr",
"nl",
"de",
"en"
],
"type": "string",
"description": "Only return datasources that support this language (checked against supportedLocales). Optional — omit to return datasources in any language."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Number of results to skip, for pagination. Defaults to 0."
},
"search": {
"type": "string",
"description": "Case-insensitive substring filter on the datasource name or description."
}
},
"additionalProperties": false
}Browse the Statbel beSTAT catalog of ~1300 curated, ready-to-query views (cross-tabs of Belgian official statistics), filterable by locale (fr/nl/de/en) and a case-insensitive name search. Each view exists as a separate record per language. Returns view_id, name, locale, and the backing data_source_id — use view_id with statbel.view_data to fetch the actual figures. Data: bestat.statbel.fgov.be, Belgian statistics office, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max number of results to return (1-100). Defaults to 20. |
| locale | string | Language of the catalog to browse: "fr" (French, default), "nl" (Dutch), "de" (German), or "en" (English). Each view exists as a separate record per locale. |
| offset | integer | Number of results to skip, for pagination. Defaults to 0. |
| search | string | Case-insensitive substring filter on the view name (e.g. "population density"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Max number of results to return (1-100). Defaults to 20."
},
"locale": {
"enum": [
"fr",
"nl",
"de",
"en"
],
"type": "string",
"description": "Language of the catalog to browse: \"fr\" (French, default), \"nl\" (Dutch), \"de\" (German), or \"en\" (English). Each view exists as a separate record per locale."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Number of results to skip, for pagination. Defaults to 0."
},
"search": {
"type": "string",
"description": "Case-insensitive substring filter on the view name (e.g. \"population density\")."
}
},
"additionalProperties": false
}Fetch the full set of fact rows (flat cross-tab, columns vary per view) for one Statbel beSTAT view, identified by the view_id from statbel.list_views. Data: bestat.statbel.fgov.be, Belgian statistics office, no auth required.
| Argument | Type | Description |
|---|---|---|
| view_id* | string | View UUID from statbel.list_views (e.g. "1be9b77f-4005-4d58-a885-8281b5bbe617"). Already encodes the language — no separate locale param needed. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"view_id"
],
"properties": {
"view_id": {
"type": "string",
"format": "uuid",
"description": "View UUID from statbel.list_views (e.g. \"1be9b77f-4005-4d58-a885-8281b5bbe617\"). Already encodes the language — no separate locale param needed."
}
},
"additionalProperties": false
}Search and discover Statistics Canada data tables (6,000+ available). Filter by keyword in the English table title, by Statistics Canada subject code (e.g. "14" for Labour, "16" for Prices and price indexes, "36" for National accounts), and by active vs. archived status. Returns table product IDs, CANSIM IDs, titles, date ranges, release frequency (annual/monthly/quarterly), and subject codes. Use the product_id from results to fetch full metadata (table_metadata) or time-series data (table_data). Source: Statistics Canada WDS, Canada Open Licence, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of tables to return (1–100). Defaults to 20. |
| query | string | Keyword to search in English table titles (e.g. "labour force", "inflation", "housing"). Case-insensitive. |
| archived | any | Filter archived tables: false (default) = active only, true = archived only, "all" = both active and archived. |
| subject_code | string | Statistics Canada subject code to filter by (e.g. "14" for Labour, "16" for Prices, "36" for National Accounts). Two-digit string. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of tables to return (1–100). Defaults to 20."
},
"query": {
"type": "string",
"description": "Keyword to search in English table titles (e.g. \"labour force\", \"inflation\", \"housing\"). Case-insensitive."
},
"archived": {
"anyOf": [
{
"type": "boolean"
},
{
"enum": [
"all",
"true",
"false"
],
"type": "string"
}
],
"description": "Filter archived tables: false (default) = active only, true = archived only, \"all\" = both active and archived."
},
"subject_code": {
"type": "string",
"description": "Statistics Canada subject code to filter by (e.g. \"14\" for Labour, \"16\" for Prices, \"36\" for National Accounts). Two-digit string."
}
},
"additionalProperties": false
}Retrieve the latest N data points for a Statistics Canada time series identified by vector ID. Returns chronological observations with reference period, value, and release timestamp. For annual series: latest_n=10 returns 10 years; for monthly series: 10 returns 10 months. Maximum 100 periods per call. Values represent the original unit (e.g. index points, thousands of persons, millions of CAD) with precision set by the series decimals field. Null values indicate suppressed or unavailable data for that period. Source: Statistics Canada WDS, Canada Open Licence, no auth required.
| Argument | Type | Description |
|---|---|---|
| latest_n | integer | Number of most-recent data points to return (1–100). Defaults to 10. Annual tables: 10 = last 10 years; monthly: 10 = last 10 months. |
| vector_id* | integer | Statistics Canada vector ID for the time series to retrieve data for (e.g. 32164132). Obtain from table_metadata or series_info. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"vector_id"
],
"properties": {
"latest_n": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of most-recent data points to return (1–100). Defaults to 10. Annual tables: 10 = last 10 years; monthly: 10 = last 10 months."
},
"vector_id": {
"type": "integer",
"description": "Statistics Canada vector ID for the time series to retrieve data for (e.g. 32164132). Obtain from table_metadata or series_info.",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Get metadata for a specific Statistics Canada time-series (vector) by its vector ID. Returns the series title (e.g. "Ontario; Consumer Price Index, All items"), parent table product ID, coordinate within the table, release frequency, decimal precision, and whether the series is terminated. Vector IDs are 8–9 digit numbers assigned by Statistics Canada to uniquely identify each time series. Use series_data to retrieve actual observations. Source: Statistics Canada WDS, Canada Open Licence, no auth required.
| Argument | Type | Description |
|---|---|---|
| vector_id* | integer | Statistics Canada vector ID identifying a specific time series within a table (e.g. 32164132). Obtain from table_metadata dimensions or published dataset documentation. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"vector_id"
],
"properties": {
"vector_id": {
"type": "integer",
"description": "Statistics Canada vector ID identifying a specific time series within a table (e.g. 32164132). Obtain from table_metadata dimensions or published dataset documentation.",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Retrieve the latest N data points for a specific Statistics Canada time series identified by table product ID and dot-separated dimension coordinate. The coordinate selects one unique series within a multi-dimensional table (e.g. "1.12.0.0.0.0.0.0.0.0" selects Newfoundland probation rate). Use table_metadata to discover available coordinates from the dimension/member hierarchy. Returns reference periods, values, and release timestamps. Maximum 100 periods per call. Source: Statistics Canada WDS, Canada Open Licence, no auth required.
| Argument | Type | Description |
|---|---|---|
| latest_n | integer | Number of most-recent data points to return (1–100). Defaults to 10. |
| coordinate* | string | Dot-separated dimension coordinate identifying one series within the table (e.g. "1.12.0.0.0.0.0.0.0.0"). Obtain from table_metadata dimensions or series_info. |
| product_id* | integer | Statistics Canada table product ID (8-digit number, e.g. 35100003). Identifies the parent table from which the series is drawn. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"product_id",
"coordinate"
],
"properties": {
"latest_n": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of most-recent data points to return (1–100). Defaults to 10."
},
"coordinate": {
"type": "string",
"description": "Dot-separated dimension coordinate identifying one series within the table (e.g. \"1.12.0.0.0.0.0.0.0.0\"). Obtain from table_metadata dimensions or series_info."
},
"product_id": {
"type": "integer",
"description": "Statistics Canada table product ID (8-digit number, e.g. 35100003). Identifies the parent table from which the series is drawn.",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Retrieve full metadata for a Statistics Canada table by its 8-digit product ID. Returns table title, date range, release frequency, subject codes, survey codes, and complete dimension hierarchy including all member categories with their IDs and names. Dimensions contain the coordinate values needed to select specific time-series within the table (e.g. geography, industry, demographic group). Members are truncated to 50 per dimension. Use coordinate values to call table_data. Product IDs are visible in StatCan table URLs: www150.statcan.gc.ca/t1/tbl1/en/tv.action?pid=<productId>01. Source: Statistics Canada WDS, Canada Open Licence, no auth required.
| Argument | Type | Description |
|---|---|---|
| product_id* | integer | Statistics Canada table product ID (8-digit number, e.g. 35100003 for Youth Justice Survey). Visible in table URLs on www150.statcan.gc.ca. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"product_id"
],
"properties": {
"product_id": {
"type": "integer",
"description": "Statistics Canada table product ID (8-digit number, e.g. 35100003 for Youth Justice Survey). Visible in table URLs on www150.statcan.gc.ca.",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Get the historical and current population of Finland on 31 December each year. Returns annual population figures (total, male, or female) for up to 276 years back to 1750. Includes the latest official figure, e.g. 5,652,881 persons at end of 2025. Data from Statistics Finland population register — authoritative national headcount. No API key required — official Finnish government open data (CC BY 4.0).
| Argument | Type | Description |
|---|---|---|
| sex | string | Sex filter (default "total"). "total" returns combined population; "male"/"female" splits by sex. |
| years | integer | Number of recent years to return (1–276, default 10). Finland population records go back to 1750. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"sex": {
"enum": [
"total",
"male",
"female"
],
"type": "string",
"description": "Sex filter (default \"total\"). \"total\" returns combined population; \"male\"/\"female\" splits by sex."
},
"years": {
"type": "integer",
"maximum": 276,
"minimum": 1,
"description": "Number of recent years to return (1–276, default 10). Finland population records go back to 1750."
}
},
"additionalProperties": false
}Get Finland Consumer Price Index (CPI) monthly data from Statistics Finland (Stat.fi). Returns index point values for the chosen base year (default 2015=100) for the last N months. Available base years: 1972, 1977, 1981, 1985, 1990, 1995, 2000, 2005, 2010, 2015, 2025. Monthly time series back to 1972. Data updated monthly by Statistics Finland. No API key required — official Finnish government open data (CC BY 4.0).
| Argument | Type | Description |
|---|---|---|
| months | integer | Number of recent months to return (1–120, default 12). E.g. 12 returns the last 12 months. |
| base_year | string | Index base year (default "2015"). The CPI value equals 100 in the chosen base year. Available bases: 1972, 1977, 1981, 1985, 1990, 1995, 2000, 2005, 2010, 2015, 2025. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"months": {
"type": "integer",
"maximum": 120,
"minimum": 1,
"description": "Number of recent months to return (1–120, default 12). E.g. 12 returns the last 12 months."
},
"base_year": {
"enum": [
"1972",
"1977",
"1981",
"1985",
"1990",
"1995",
"2000",
"2005",
"2010",
"2015",
"2025"
],
"type": "string",
"description": "Index base year (default \"2015\"). The CPI value equals 100 in the chosen base year. Available bases: 1972, 1977, 1981, 1985, 1990, 1995, 2000, 2005, 2010, 2015, 2025."
}
},
"additionalProperties": false
}Get the number of unemployed jobseekers registered at Finnish Employment and Economic Development Offices (TE-services) at the end of each month for the whole country. Returns monthly figures from 2008 onwards. Latest data: ~325,000–360,000 persons. Source: Ministry of Economic Affairs and Employment (TEM) via Statistics Finland PxWeb. No API key required — official Finnish government open data (CC BY 4.0).
| Argument | Type | Description |
|---|---|---|
| months | integer | Number of recent months to return (1–220, default 12). Data available from 2008M01 onwards. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"months": {
"type": "integer",
"maximum": 220,
"minimum": 1,
"description": "Number of recent months to return (1–220, default 12). Data available from 2008M01 onwards."
}
},
"additionalProperties": false
}List all available data tables in a Statistics Finland (StatFin) category. Use this to discover what datasets are published in a given statistical domain. Returns table IDs, titles, and last-updated timestamps. Category examples: "khi" (consumer prices), "vaerak" (population), "tyonv" (unemployment), "synt" (births), "kans" (citizenships), "kbar" (consumer confidence), "rki" (building cost index), "ilma" (air transport), "matk" (accommodation statistics). The table IDs returned can be queried via the Statistics Finland PxWeb API at https://pxdata.stat.fi/PxWeb/api/v1/en/StatFin/{category}/{table_id}. No API key required — official Finnish government open data (CC BY 4.0).
| Argument | Type | Description |
|---|---|---|
| category* | string | StatFin category code to list tables for. Examples: "khi" (consumer prices), "vaerak" (population), "tyonv" (unemployment/job seekers), "synt" (births), "adopt" (adoptions), "matk" (accommodation), "ilma" (air transport), "kans" (citizenships), "kbar" (consumer confidence), "rki" (building cost index). Returns all tables available in that statistical category. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"category"
],
"properties": {
"category": {
"type": "string",
"maxLength": 20,
"minLength": 2,
"description": "StatFin category code to list tables for. Examples: \"khi\" (consumer prices), \"vaerak\" (population), \"tyonv\" (unemployment/job seekers), \"synt\" (births), \"adopt\" (adoptions), \"matk\" (accommodation), \"ilma\" (air transport), \"kans\" (citizenships), \"kbar\" (consumer confidence), \"rki\" (building cost index). Returns all tables available in that statistical category."
}
},
"additionalProperties": false
}Fetch statistical data from a specific Statistics Denmark table using dimension filters. Returns a JSON-stat dataset with dimension labels, a flat value array, and metadata (updated timestamp, source). Use statistics-denmark.data.tables to find the table ID, statistics-denmark.data.table_info to get valid dimension codes and values, then pass them here as a variables array — one entry per dimension you want to filter or break out by (e.g. region, sex, age, time). Any dimension left out is auto-aggregated to its total by StatBank. Use values:["*"] to include all values for a dimension (e.g. the full time series). Covers population, labour market, economy, social conditions, education, business, transport, culture, and environment statistics for Denmark.
| Argument | Type | Description |
|---|---|---|
| table_id* | string | StatBank table ID to query — from statistics-denmark.tables or statistics-denmark.table_info. Example: "FOLK1A" for quarterly population. |
| variables* | array | Array of dimension filters. Any dimension left out is auto-eliminated (aggregated to its default/total value) by StatBank — include a dimension only when you need to filter or break out by it. Example: [{code:"OMRÅDE",values:["000"]},{code:"KØN",values:["TOT"]},{code:"ALDER",values:["IALT"]},{code:"CIVILSTAND",values:["TOT"]},{code:"Tid",values:["*"]}]. Response is a JSON-stat dataset with dimension labels and a flat value array. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"table_id",
"variables"
],
"properties": {
"table_id": {
"type": "string",
"description": "StatBank table ID to query — from statistics-denmark.tables or statistics-denmark.table_info. Example: \"FOLK1A\" for quarterly population."
},
"variables": {
"type": "array",
"items": {
"type": "object",
"required": [
"code",
"values"
],
"properties": {
"code": {
"type": "string",
"description": "Dimension code from statistics-denmark.table_info variables[].code. Examples: \"OMRÅDE\" (region), \"KØN\" (sex), \"ALDER\" (age), \"Tid\" (time)."
},
"values": {
"type": "array",
"items": {
"type": "string"
},
"description": "Value codes to select for this dimension, from statistics-denmark.table_info variables[].values[].id. Use [\"*\"] to select all values for the dimension, or [\"000\"] etc. for a specific code. For the time dimension use specific period codes (e.g. [\"2026K3\"] for a quarter, [\"2026\"] for a year) or [\"*\"] for the full series."
}
},
"description": "Selected value codes for one table dimension.",
"additionalProperties": false
},
"minItems": 1,
"description": "Array of dimension filters. Any dimension left out is auto-eliminated (aggregated to its default/total value) by StatBank — include a dimension only when you need to filter or break out by it. Example: [{code:\"OMRÅDE\",values:[\"000\"]},{code:\"KØN\",values:[\"TOT\"]},{code:\"ALDER\",values:[\"IALT\"]},{code:\"CIVILSTAND\",values:[\"TOT\"]},{code:\"Tid\",values:[\"*\"]}]. Response is a JSON-stat dataset with dimension labels and a flat value array."
}
},
"additionalProperties": false
}List the subject/topic areas covered by Statistics Denmark (StatBank) — People, Labour and income, Economy, Social conditions, Education and research, Business, Transport, Culture and leisure, Environment and energy, About Statistics Denmark. Set recursive=true to drill down into the full nested topic tree (e.g. People → Population → Population figures) used to browse toward specific tables. Statistics Denmark (Danmarks Statistik) is the Danish national statistics authority.
| Argument | Type | Description |
|---|---|---|
| recursive | boolean | If true, return the full nested subject tree down to leaf topics (e.g. People → Population → Population figures). If false (default), return only the 10 top-level subject areas (People, Labour and income, Economy, Social conditions, Education and research, Business, Transport, Culture and leisure, Environment and energy, About Statistics Denmark). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"recursive": {
"type": "boolean",
"default": false,
"description": "If true, return the full nested subject tree down to leaf topics (e.g. People → Population → Population figures). If false (default), return only the 10 top-level subject areas (People, Labour and income, Economy, Social conditions, Education and research, Business, Transport, Culture and leisure, Environment and energy, About Statistics Denmark)."
}
},
"additionalProperties": false
}Get the full metadata for a specific Statistics Denmark table — dimension codes, valid value codes, and human-readable labels needed to construct a data query. Returns table title, description, unit, last-updated timestamp, and an array of variables (dimensions) each with its code (e.g. "OMRÅDE" for region), readable name, and the list of valid value codes with labels. This is the required second step before querying data: call statistics-denmark.data.tables to find a table ID, then statistics-denmark.data.table_info to learn the dimension codes and valid values, then statistics-denmark.data.query to retrieve actual data. Common table IDs: "FOLK1A" (quarterly population by region/sex/age/marital status), "BEFOLK1" (annual population by sex/age since 1971), "AKU1" (labour force survey), "NAN1" (GDP and national accounts), "PRIS111" (consumer price index).
| Argument | Type | Description |
|---|---|---|
| table_id* | string | StatBank table ID (short alphanumeric code). Obtain from statistics-denmark.tables. Common tables: "FOLK1A" (population by region/sex/age/marital status, quarterly), "BEFOLK1" (population by sex/age, annual since 1971), "AKU1" (labour force survey), "NAN1" (GDP and national accounts), "PRIS111" (consumer price index), "FORBRUG1" (household consumption). Returns dimension codes and valid value codes needed for statistics-denmark.data. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"table_id"
],
"properties": {
"table_id": {
"type": "string",
"description": "StatBank table ID (short alphanumeric code). Obtain from statistics-denmark.tables. Common tables: \"FOLK1A\" (population by region/sex/age/marital status, quarterly), \"BEFOLK1\" (population by sex/age, annual since 1971), \"AKU1\" (labour force survey), \"NAN1\" (GDP and national accounts), \"PRIS111\" (consumer price index), \"FORBRUG1\" (household consumption). Returns dimension codes and valid value codes needed for statistics-denmark.data."
}
},
"additionalProperties": false
}Search or list Statistics Denmark (StatBank) statistical tables by keyword and/or subject area. Returns matching table IDs, full titles, measurement unit, last-updated timestamp, first/latest available period, and the dimension names each table can be broken down by. Use the returned table ID with statistics-denmark.data.table_info to discover dimension codes, then statistics-denmark.data.query to fetch data. Example keywords: "population", "gdp", "unemployment", "inflation", "immigration", "housing", "energy", "crime", "wages", "trade".
| Argument | Type | Description |
|---|---|---|
| query | string | Keyword to search for in StatBank table titles. Examples: "population", "gdp", "unemployment", "inflation", "immigration", "housing", "energy", "crime". Omit to list all 2,000+ active tables (large response). |
| subjects | string | Comma-separated subject area ID(s) to scope the listing (from statistics-denmark.subjects), e.g. "1" for People, "3" for Economy. Optional — combine with or omit query. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"query": {
"type": "string",
"description": "Keyword to search for in StatBank table titles. Examples: \"population\", \"gdp\", \"unemployment\", \"inflation\", \"immigration\", \"housing\", \"energy\", \"crime\". Omit to list all 2,000+ active tables (large response)."
},
"subjects": {
"type": "string",
"description": "Comma-separated subject area ID(s) to scope the listing (from statistics-denmark.subjects), e.g. \"1\" for People, \"3\" for Economy. Optional — combine with or omit query."
}
},
"additionalProperties": false
}Decode a categorical column's codes into German + English display names (e.g. "STAATS-9" -> "Insgesamt" / "Total"). Requires dataset_id and dimension_code (format "C-{NAME}-{N}", from statistik-austria.dataset_metadata's category_dimensions list). Data: data.statistik.gv.at (Statistik Austria), no auth required.
| Argument | Type | Description |
|---|---|---|
| dataset_id* | string | Statistik Austria dataset id, from statistik-austria.dataset_search (e.g. "OGD_veste309_Veste309_1"). |
| dimension_code* | string | Categorical column code to decode, from statistik-austria.dataset_metadata's category_dimensions list (format "C-{NAME}-{N}", e.g. "C-STAATS-0" for citizenship, "C-VEBDL-0" for federal state). Columns starting with "F-" are numeric measures with no code lookup. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"dataset_id",
"dimension_code"
],
"properties": {
"dataset_id": {
"type": "string",
"minLength": 1,
"description": "Statistik Austria dataset id, from statistik-austria.dataset_search (e.g. \"OGD_veste309_Veste309_1\")."
},
"dimension_code": {
"type": "string",
"minLength": 1,
"description": "Categorical column code to decode, from statistik-austria.dataset_metadata's category_dimensions list (format \"C-{NAME}-{N}\", e.g. \"C-STAATS-0\" for citizenship, \"C-VEBDL-0\" for federal state). Columns starting with \"F-\" are numeric measures with no code lookup."
}
},
"additionalProperties": false
}Get full metadata for one Statistik Austria dataset (dataset_id from statistik-austria.dataset_search) — title, notes, tags, license, update frequency, resource list, column meanings (attribute_description), and the category_dimensions list needed for statistik-austria.category_codes. Data: data.statistik.gv.at (Statistik Austria), no auth required.
| Argument | Type | Description |
|---|---|---|
| dataset_id* | string | Statistik Austria dataset id, from statistik-austria.dataset_search (e.g. "OGD_veste309_Veste309_1" for the 2018 earnings-structure survey, "OGD_konjunkturmonitor_KonMon_1" for the economic-monitor series). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"dataset_id"
],
"properties": {
"dataset_id": {
"type": "string",
"minLength": 1,
"description": "Statistik Austria dataset id, from statistik-austria.dataset_search (e.g. \"OGD_veste309_Veste309_1\" for the 2018 earnings-structure survey, \"OGD_konjunkturmonitor_KonMon_1\" for the economic-monitor series)."
}
},
"additionalProperties": false
}Browse/search the Statistik Austria open-data catalog (~540 datasets: population, prices, labour market, foreign trade, industry indices). Optional search substring filters on title or dataset_id, case-insensitive — Statistik Austria has no full-text search API. Returns dataset_id + title for use in statistik-austria.dataset_metadata and statistik-austria.dataset_data. Data: data.statistik.gv.at (Statistik Austria), no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max datasets to return (1-50, default 20). |
| offset | integer | Number of matching datasets to skip (default 0). For paging through results. |
| search | string | Filter datasets by substring, case-insensitive, matched against title and dataset_id (e.g. "Bevölkerung" for population datasets, "veste309" for the earnings-structure survey). Statistik Austria has no full-text search API — omit to page through the full ~540-dataset catalog with offset/limit. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Max datasets to return (1-50, default 20)."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Number of matching datasets to skip (default 0). For paging through results."
},
"search": {
"type": "string",
"description": "Filter datasets by substring, case-insensitive, matched against title and dataset_id (e.g. \"Bevölkerung\" for population datasets, \"veste309\" for the earnings-structure survey). Statistik Austria has no full-text search API — omit to page through the full ~540-dataset catalog with offset/limit."
}
},
"additionalProperties": false
}Fetch rows from a Statistik Austria dataset's CSV data file (dataset_id from statistik-austria.dataset_search). Column codes are opaque (e.g. "C-STAATS-0", "F-VESTE_AM") — use statistik-austria.dataset_metadata for column meanings and statistik-austria.category_codes to decode category values (e.g. "STAATS-9"). Rows capped 1-200 (default 20). Data: data.statistik.gv.at (Statistik Austria), no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max rows to return (1-200, default 20). |
| offset | integer | Number of rows to skip, for paging through a large dataset. |
| dataset_id* | string | Statistik Austria dataset id, from statistik-austria.dataset_search (e.g. "OGD_konjunkturmonitor_KonMon_1"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"dataset_id"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Max rows to return (1-200, default 20)."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Number of rows to skip, for paging through a large dataset."
},
"dataset_id": {
"type": "string",
"minLength": 1,
"description": "Statistik Austria dataset id, from statistik-austria.dataset_search (e.g. \"OGD_konjunkturmonitor_KonMon_1\")."
}
},
"additionalProperties": false
}Latest news articles about a specific company — headline, source, summary, date, image. Filter by date range (Finnhub)
| Argument | Type | Description |
|---|---|---|
| to | string | End date in YYYY-MM-DD format (default: today) |
| from | string | Start date in YYYY-MM-DD format (default: 7 days ago) |
| symbol* | string | Stock ticker symbol (e.g. "AAPL") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"symbol"
],
"properties": {
"to": {
"type": "string",
"description": "End date in YYYY-MM-DD format (default: today)"
},
"from": {
"type": "string",
"description": "Start date in YYYY-MM-DD format (default: 7 days ago)"
},
"symbol": {
"type": "string",
"maxLength": 10,
"minLength": 1,
"description": "Stock ticker symbol (e.g. \"AAPL\")"
}
},
"additionalProperties": false
}Company profile by ticker — name, exchange, industry, country, market cap, shares outstanding, IPO date, logo, website (Finnhub)
| Argument | Type | Description |
|---|---|---|
| symbol* | string | Stock ticker symbol (e.g. "AAPL") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"symbol"
],
"properties": {
"symbol": {
"type": "string",
"maxLength": 10,
"minLength": 1,
"description": "Stock ticker symbol (e.g. \"AAPL\")"
}
},
"additionalProperties": false
}General market news — categories: general, forex, crypto, merger. Top headlines with source, summary, and images (Finnhub)
| Argument | Type | Description |
|---|---|---|
| category | string | News category: "general" (default), "forex", "crypto", "merger" |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"category": {
"enum": [
"general",
"forex",
"crypto",
"merger"
],
"type": "string",
"description": "News category: \"general\" (default), \"forex\", \"crypto\", \"merger\""
}
},
"additionalProperties": false
}Real-time stock price quote — current price, change, percent change, day high/low, open, previous close. Supports US stocks, ETFs, and major global exchanges (Finnhub)
| Argument | Type | Description |
|---|---|---|
| symbol* | string | Stock ticker symbol (e.g. "AAPL", "GOOGL", "TSLA", "MSFT") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"symbol"
],
"properties": {
"symbol": {
"type": "string",
"maxLength": 10,
"minLength": 1,
"description": "Stock ticker symbol (e.g. \"AAPL\", \"GOOGL\", \"TSLA\", \"MSFT\")"
}
},
"additionalProperties": false
}Get complete daily astronomical data for any lat/lng and date from SunriseSunset.io. Returns sunrise, sunset, dawn, dusk, first/last light, solar noon, golden hour, day length, nautical twilight, current sun altitude and azimuth, moonrise, moonset, moon phase name, moon illumination percentage, and lunar phase value (0–1 cycle). Supports "today", "tomorrow", or any YYYY-MM-DD date. Timezone auto-detected from coordinates or specify an IANA name. Time format: 12h, 24h, or Unix timestamps. No auth required; free commercial use.
| Argument | Type | Description |
|---|---|---|
| lat* | number | Latitude of the target location (-90 to 90). Positive = North, Negative = South. |
| lng* | number | Longitude of the target location (-180 to 180). Positive = East, Negative = West. |
| date | string | Date to query: "today", "tomorrow", or ISO date YYYY-MM-DD (e.g. 2026-01-15). Defaults to today. |
| timezone | string | IANA timezone name for output times (e.g. America/New_York, Europe/London, Asia/Tokyo). Auto-detected from lat/lng if omitted. |
| time_format | string | Time output format: "0"=12-hour AM/PM (e.g. 5:26:02 AM), "1"=24-hour (e.g. 05:26:02), "2"=Unix timestamp seconds. Defaults to "0". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lng"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude of the target location (-90 to 90). Positive = North, Negative = South."
},
"lng": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude of the target location (-180 to 180). Positive = East, Negative = West."
},
"date": {
"type": "string",
"description": "Date to query: \"today\", \"tomorrow\", or ISO date YYYY-MM-DD (e.g. 2026-01-15). Defaults to today."
},
"timezone": {
"type": "string",
"description": "IANA timezone name for output times (e.g. America/New_York, Europe/London, Asia/Tokyo). Auto-detected from lat/lng if omitted."
},
"time_format": {
"enum": [
"0",
"1",
"2"
],
"type": "string",
"description": "Time output format: \"0\"=12-hour AM/PM (e.g. 5:26:02 AM), \"1\"=24-hour (e.g. 05:26:02), \"2\"=Unix timestamp seconds. Defaults to \"0\"."
}
},
"additionalProperties": false
}Get sunrise/sunset/moon phase data for a date range of up to 365 days for any global coordinate. Returns an array of daily records each with: sunrise, sunset, solar noon, golden hour, day length, moon phase name, and moon illumination percentage. Useful for seasonal planning, photography planning, agriculture, and event scheduling. Specify date_start and date_end in YYYY-MM-DD format; max 365 days per call. No auth required; free commercial use. Source: SunriseSunset.io.
| Argument | Type | Description |
|---|---|---|
| lat* | number | Latitude of the target location (-90 to 90). Positive = North, Negative = South. |
| lng* | number | Longitude of the target location (-180 to 180). Positive = East, Negative = West. |
| date_end* | string | End date of range in ISO format YYYY-MM-DD (e.g. 2026-06-30). Maximum 365 days from start date. |
| timezone | string | IANA timezone name for output times (e.g. America/New_York, Europe/London, Asia/Tokyo). Auto-detected from lat/lng if omitted. |
| date_start* | string | Start date of range in ISO format YYYY-MM-DD (e.g. 2026-06-01). |
| time_format | string | Time output format: "0"=12-hour AM/PM (e.g. 5:26:02 AM), "1"=24-hour (e.g. 05:26:02), "2"=Unix timestamp seconds. Defaults to "0". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lng",
"date_start",
"date_end"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude of the target location (-90 to 90). Positive = North, Negative = South."
},
"lng": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude of the target location (-180 to 180). Positive = East, Negative = West."
},
"date_end": {
"type": "string",
"description": "End date of range in ISO format YYYY-MM-DD (e.g. 2026-06-30). Maximum 365 days from start date."
},
"timezone": {
"type": "string",
"description": "IANA timezone name for output times (e.g. America/New_York, Europe/London, Asia/Tokyo). Auto-detected from lat/lng if omitted."
},
"date_start": {
"type": "string",
"description": "Start date of range in ISO format YYYY-MM-DD (e.g. 2026-06-01)."
},
"time_format": {
"enum": [
"0",
"1",
"2"
],
"type": "string",
"description": "Time output format: \"0\"=12-hour AM/PM (e.g. 5:26:02 AM), \"1\"=24-hour (e.g. 05:26:02), \"2\"=Unix timestamp seconds. Defaults to \"0\"."
}
},
"additionalProperties": false
}Get moon phase, lunar illumination, and moonrise/moonset times for any location and date. Returns: moon phase name (New Moon, Waxing Crescent, First Quarter, Waxing Gibbous, Full Moon, Waning Gibbous, Last Quarter, Waning Crescent), phase value (0–1 cycle fraction), moon illumination percentage (0–100), moonrise time, moonset time, and flags for polar cases (moon_always_up / moon_always_down). No auth required; free commercial use. Source: SunriseSunset.io.
| Argument | Type | Description |
|---|---|---|
| lat* | number | Latitude of the target location (-90 to 90). Positive = North, Negative = South. |
| lng* | number | Longitude of the target location (-180 to 180). Positive = East, Negative = West. |
| date | string | Date to query: "today", "tomorrow", or ISO date YYYY-MM-DD (e.g. 2026-01-15). Defaults to today. |
| timezone | string | IANA timezone name for output times (e.g. America/New_York, Europe/London, Asia/Tokyo). Auto-detected from lat/lng if omitted. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lng"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude of the target location (-90 to 90). Positive = North, Negative = South."
},
"lng": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude of the target location (-180 to 180). Positive = East, Negative = West."
},
"date": {
"type": "string",
"description": "Date to query: \"today\", \"tomorrow\", or ISO date YYYY-MM-DD (e.g. 2026-01-15). Defaults to today."
},
"timezone": {
"type": "string",
"description": "IANA timezone name for output times (e.g. America/New_York, Europe/London, Asia/Tokyo). Auto-detected from lat/lng if omitted."
}
},
"additionalProperties": false
}Get the current sun position (altitude and azimuth), sunrise/sunset compass bearings, golden hour window, and solar noon time for any location and date. Sun altitude is the elevation angle above the horizon (negative = below). Sun azimuth is the compass direction of the sun (0=North, 90=East, 180=South, 270=West). Golden hour is the last hour before sunset — ideal for photography. Includes dawn, dusk, and day length. Useful for solar panel orientation, photography planning, outdoor event scheduling, and navigation. No auth required; free commercial use. Source: SunriseSunset.io.
| Argument | Type | Description |
|---|---|---|
| lat* | number | Latitude of the target location (-90 to 90). Positive = North, Negative = South. |
| lng* | number | Longitude of the target location (-180 to 180). Positive = East, Negative = West. |
| date | string | Date to query: "today", "tomorrow", or ISO date YYYY-MM-DD (e.g. 2026-01-15). Defaults to today. |
| timezone | string | IANA timezone name for output times (e.g. America/New_York, Europe/London, Asia/Tokyo). Auto-detected from lat/lng if omitted. |
| time_format | string | Time output format: "0"=12-hour AM/PM (e.g. 5:26:02 AM), "1"=24-hour (e.g. 05:26:02), "2"=Unix timestamp seconds. Defaults to "0". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lng"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude of the target location (-90 to 90). Positive = North, Negative = South."
},
"lng": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude of the target location (-180 to 180). Positive = East, Negative = West."
},
"date": {
"type": "string",
"description": "Date to query: \"today\", \"tomorrow\", or ISO date YYYY-MM-DD (e.g. 2026-01-15). Defaults to today."
},
"timezone": {
"type": "string",
"description": "IANA timezone name for output times (e.g. America/New_York, Europe/London, Asia/Tokyo). Auto-detected from lat/lng if omitted."
},
"time_format": {
"enum": [
"0",
"1",
"2"
],
"type": "string",
"description": "Time output format: \"0\"=12-hour AM/PM (e.g. 5:26:02 AM), \"1\"=24-hour (e.g. 05:26:02), \"2\"=Unix timestamp seconds. Defaults to \"0\"."
}
},
"additionalProperties": false
}Browse the Swiss Federal Statistical Office (BFS/FSO) STAT-TAB catalog of 648 statistical datasets. Filter by subject area using BFS subject codes: "01"=population, "03"=employment, "06"=industry, "07"=agriculture, "09"=construction, "10"=tourism, "13"=social-security, "14"=health, "15"=education, "21"=sustainability. Returns dataset IDs (database_id) needed for table.metadata and table.query. Data: Swiss OGD, no auth, commercial use permitted.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of dataset entries to return (1–200, default 50). |
| subject | string | Filter by BFS subject code or name. Code examples: "01"=population, "03"=employment, "06"=industry, "07"=agriculture, "09"=construction, "10"=tourism, "13"=social-security, "14"=health, "15"=education, "21"=sustainability. Omit to list all 648 datasets. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Maximum number of dataset entries to return (1–200, default 50)."
},
"subject": {
"type": "string",
"description": "Filter by BFS subject code or name. Code examples: \"01\"=population, \"03\"=employment, \"06\"=industry, \"07\"=agriculture, \"09\"=construction, \"10\"=tourism, \"13\"=social-security, \"14\"=health, \"15\"=education, \"21\"=sustainability. Omit to list all 648 datasets."
}
},
"additionalProperties": false
}Get the variable dimensions and available filter values for any Swiss Federal Statistical Office (FSO/BFS) STAT-TAB dataset. Provide a database_id from catalog.list. Returns the table title, dimension codes, and all available value codes with German labels — needed to construct filters for table.query. Example: database_id "px-x-0304010000_201" returns year, region, industry, professional status, gender, and percentile dimensions for monthly gross wages. Data: Swiss OGD, no auth, commercial use permitted.
| Argument | Type | Description |
|---|---|---|
| database_id* | string | BFS database identifier (e.g. "px-x-0304010000_201" for monthly wages, "px-x-0103010000_123" for 2023 population by canton). Obtain from catalog.list. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"database_id"
],
"properties": {
"database_id": {
"type": "string",
"description": "BFS database identifier (e.g. \"px-x-0304010000_201\" for monthly wages, \"px-x-0103010000_123\" for 2023 population by canton). Obtain from catalog.list."
}
},
"additionalProperties": false
}Query data from any Swiss Federal Statistical Office (FSO/BFS) STAT-TAB dataset using dimension filters. Provide a database_id from catalog.list and optional filters (from table.metadata). Each filter specifies a dimension code and an array of value codes. Returns JSON-stat2 formatted data with dimension labels and numeric values. Note: variable codes and labels are in German (official FSO data language). Unfiltered dimensions return all values, so always filter time and region to keep responses manageable. Swiss OGD, no auth.
| Argument | Type | Description |
|---|---|---|
| filters | array | Array of dimension filters. Unfiltered dimensions return all values. Tip: always filter time and region dimensions to keep response size manageable. |
| database_id* | string | BFS database identifier (e.g. "px-x-0304010000_201"). Use catalog.list to discover IDs; table.metadata to see variable codes and values. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"database_id"
],
"properties": {
"filters": {
"type": "array",
"items": {
"type": "object",
"required": [
"code",
"values"
],
"properties": {
"code": {
"type": "string",
"description": "Dimension code as returned by table.metadata (e.g. \"Jahr\", \"Geschlecht\")."
},
"values": {
"type": "array",
"items": {
"type": "string"
},
"description": "Array of value codes to select (e.g. [\"2024\"] for year 2024, [\"-1\"] for totals). Use value codes from table.metadata, not the human-readable labels."
}
},
"description": "A dimension filter: selects specific values for one variable.",
"additionalProperties": false
},
"description": "Array of dimension filters. Unfiltered dimensions return all values. Tip: always filter time and region dimensions to keep response size manageable."
},
"database_id": {
"type": "string",
"description": "BFS database identifier (e.g. \"px-x-0304010000_201\"). Use catalog.list to discover IDs; table.metadata to see variable codes and values."
}
},
"additionalProperties": false
}Get Swiss monthly gross wage statistics from the Federal Statistical Office (FSO/BFS) Salary Structure Survey. Returns nationwide median (or other percentile) monthly wages in CHF for all industries and professional levels combined. Available for biennial survey years 2012–2024. Filter by gender (total/female/male) and percentile (median/P10/P25/P75/P90). Example: 2024 median wage overall ≈ CHF 6,502/month. Data: FSO Lohnstrukturerhebung, no auth.
| Argument | Type | Description |
|---|---|---|
| year | string | Survey year. Available: 2024, 2022, 2020, 2018, 2016, 2014, 2012. Default: 2024. |
| gender | string | Gender filter: "total" (default), "female" (Frauen), or "male" (Männer). |
| percentile | string | Wage percentile: "1"=median (default), "2"=P10, "3"=P25, "4"=P75, "5"=P90. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"year": {
"type": "string",
"description": "Survey year. Available: 2024, 2022, 2020, 2018, 2016, 2014, 2012. Default: 2024."
},
"gender": {
"enum": [
"total",
"female",
"male"
],
"type": "string",
"description": "Gender filter: \"total\" (default), \"female\" (Frauen), or \"male\" (Männer)."
},
"percentile": {
"enum": [
"1",
"2",
"3",
"4",
"5"
],
"type": "string",
"description": "Wage percentile: \"1\"=median (default), \"2\"=P10, \"3\"=P25, \"4\"=P75, \"5\"=P90."
}
},
"additionalProperties": false
}Retrieve Swiss National Bank official CHF exchange rates for 27 currencies including EUR, USD, GBP, JPY, CNY and more. Returns monthly average or end-of-month fixing values as reported by the SNB at 11 am. Covers historical series back to 1914 for major currencies; specify limit to control how many recent monthly periods are returned (default 24 months). Ideal for CHF valuation, Swiss currency analysis, and monetary research. Source: Swiss National Bank data.snb.ch (cube: devkum), Swiss OGD open license, no auth.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of most recent monthly observations to return per currency (1–120, default 24). |
| period | string | Rate type: "monthly_avg" for monthly average (default) or "end_of_month" for end-of-month fixing. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 120,
"minimum": 1,
"description": "Number of most recent monthly observations to return per currency (1–120, default 24)."
},
"period": {
"enum": [
"monthly_avg",
"end_of_month"
],
"type": "string",
"description": "Rate type: \"monthly_avg\" for monthly average (default) or \"end_of_month\" for end-of-month fixing."
}
},
"additionalProperties": false
}Retrieve Swiss monetary aggregate statistics published by the Swiss National Bank: currency in circulation, sight deposits, M1 (narrowest money), savings deposits, M2, time deposits, and M3 (broadest money supply). Values in CHF millions (level) or percent period-over-period change. Data updated monthly; most recent observations typically available with a 4–6 week lag. Ideal for Swiss monetary conditions analysis, inflation research, and macroeconomic studies. Source: Swiss National Bank data.snb.ch (cube: snbmonagg), Swiss OGD open license, no auth.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of most recent monthly observations to return per aggregate (1–120, default 24). |
| level_type | string | Data type: "level" for absolute CHF million values (default) or "change" for period-over-period percent change. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 120,
"minimum": 1,
"description": "Number of most recent monthly observations to return per aggregate (1–120, default 24)."
},
"level_type": {
"enum": [
"level",
"change"
],
"type": "string",
"description": "Data type: \"level\" for absolute CHF million values (default) or \"change\" for period-over-period percent change."
}
},
"additionalProperties": false
}Retrieve the current Swiss National Bank policy rate, SARON overnight fixing, special rate (Liquidity-Shortage Financing Facility), and interest rates on sight deposits (below and above threshold). Returns daily observations for the requested period. The SNB policy rate is the primary monetary policy instrument; as of June 2026 it stands at 0.0%. Essential for Swiss monetary policy analysis, CHF rate expectations, and fixed-income research. Source: Swiss National Bank data.snb.ch (cube: snbgwdzid), Swiss OGD open license, no auth.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of most recent daily observations to return per rate series (1–365, default 90). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 365,
"minimum": 1,
"description": "Number of most recent daily observations to return per rate series (1–365, default 90)."
}
},
"additionalProperties": false
}Retrieve Swiss Average Rate Overnight (SARON) and compound term rates published by the Swiss National Bank: overnight SARON, Tomorrow Next, 1-month, 3-month, and 6-month compound rates. SARON replaced LIBOR as the Swiss reference rate benchmark in 2021. Returns daily observations for the requested period. Vital for Swiss franc derivatives pricing, loan referencing, and interest rate risk analysis. Source: Swiss National Bank data.snb.ch (cube: zirepo), Swiss OGD open license, no auth.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of most recent daily observations to return per SARON series (1–365, default 90). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 365,
"minimum": 1,
"description": "Number of most recent daily observations to return per SARON series (1–365, default 90)."
}
},
"additionalProperties": false
}Current ECB reference exchange rates for 30+ currencies (USD, GBP, JPY, CHF, etc.) plus currency metadata — symbol, decimal places, issuing countries (VATcomply / ECB)
| Argument | Type | Description |
|---|---|---|
| filter | string | Optional currency code filter (e.g. "USD", "GBP"). Omit for all currencies |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"filter": {
"type": "string",
"description": "Optional currency code filter (e.g. \"USD\", \"GBP\"). Omit for all currencies"
}
},
"additionalProperties": false
}Get current VAT rates for EU countries — standard rate, reduced rates, super-reduced rate, parking rate. Query one country or all 27 EU members. Sourced from EU TEDB (VATcomply)
| Argument | Type | Description |
|---|---|---|
| country_code | string | ISO 3166-1 alpha-2 country code for specific country VAT rates (e.g. "DE", "FR", "IT"). Omit for all EU countries |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"country_code": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO 3166-1 alpha-2 country code for specific country VAT rates (e.g. \"DE\", \"FR\", \"IT\"). Omit for all EU countries"
}
},
"additionalProperties": false
}Validate a European VAT number via VIES — returns validity status, company name, and registered address. Supports all 27 EU member states + UK. Format: country prefix + number (e.g. DE123456789) (VATcomply, open source)
| Argument | Type | Description |
|---|---|---|
| vat_number* | string | EU VAT number with country prefix (e.g. "DE123456789", "FR12345678901", "GB123456789") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"vat_number"
],
"properties": {
"vat_number": {
"type": "string",
"minLength": 4,
"description": "EU VAT number with country prefix (e.g. \"DE123456789\", \"FR12345678901\", \"GB123456789\")"
}
},
"additionalProperties": false
}Generate realistic random user profiles — name, email, phone, address, age, gender, photo. Filter by nationality and gender. For testing and demo data (RandomUser.me)
| Argument | Type | Description |
|---|---|---|
| count | integer | Number of random users to generate (default 1, max 20) |
| gender | string | Gender filter |
| nationality | string | Nationality filter — comma-separated ISO codes (e.g. "us", "gb,fr,de") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"count": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of random users to generate (default 1, max 20)"
},
"gender": {
"enum": [
"male",
"female"
],
"type": "string",
"description": "Gender filter"
},
"nationality": {
"type": "string",
"description": "Nationality filter — comma-separated ISO codes (e.g. \"us\", \"gb,fr,de\")"
}
},
"additionalProperties": false
}Get live arrival predictions for a specific TfL line at a London stop or station. Returns upcoming trains sorted by soonest arrival, with destination, platform, direction, and minutes until arrival. Requires a line_id (e.g. central, bakerloo, jubilee, victoria, elizabeth, dlr, overground) and a NAPTAN stop_id (e.g. 940GZZLUHPK for Holland Park, 940GZZLUKSX for Kings Cross). Arrival predictions update every 30 seconds from the TfL real-time feed. Use direction=inbound/outbound to filter by travel direction. Source: TfL Unified API — api.tfl.gov.uk. No auth required, TfL Open Data CC-BY.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of arrival predictions to return, sorted by soonest first (1–50). Defaults to 20. |
| line_id* | string | TfL line ID (e.g. central, bakerloo, victoria, northern, jubilee, elizabeth, overground, dlr, piccadilly). Use lowercase, hyphens for multi-word lines (e.g. elizabeth-line → use elizabeth). |
| stop_id* | string | NAPTAN stop point ID for the station (e.g. 940GZZLUHPK for Holland Park, 940GZZLUKSX for Kings Cross St. Pancras). Format: 940GZZLU + station code for tube stops. |
| direction | string | Filter arrivals by direction of travel (inbound, outbound, or all). Defaults to all directions. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"line_id",
"stop_id"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of arrival predictions to return, sorted by soonest first (1–50). Defaults to 20."
},
"line_id": {
"type": "string",
"description": "TfL line ID (e.g. central, bakerloo, victoria, northern, jubilee, elizabeth, overground, dlr, piccadilly). Use lowercase, hyphens for multi-word lines (e.g. elizabeth-line → use elizabeth)."
},
"stop_id": {
"type": "string",
"description": "NAPTAN stop point ID for the station (e.g. 940GZZLUHPK for Holland Park, 940GZZLUKSX for Kings Cross St. Pancras). Format: 940GZZLU + station code for tube stops."
},
"direction": {
"enum": [
"inbound",
"outbound",
"all"
],
"type": "string",
"description": "Filter arrivals by direction of travel (inbound, outbound, or all). Defaults to all directions."
}
},
"additionalProperties": false
}Get real-time availability of Santander Cycles (formerly Boris Bikes) at all 800+ docking stations across London. Returns for each station: name, coordinates, number of available bikes (standard + e-bikes), empty docks, and total dock capacity. Optionally filter by station name keyword (e.g. Waterloo, Hyde Park, Soho, Paddington). Availability updates approximately every 2 minutes from the TfL live feed. Useful for cycle hire planning, last-mile commuting, and real-time docking station capacity monitoring. Source: TfL Unified API — api.tfl.gov.uk. No auth required, TfL Open Data CC-BY.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of docking stations to return (1–200). Defaults to 50. Use with query to narrow results to a specific area. |
| query | string | Search by station name or location keyword to filter bike docking points (e.g. Waterloo, Soho, Hyde Park, Paddington). Returns all 799+ stations when omitted. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Maximum number of docking stations to return (1–200). Defaults to 50. Use with query to narrow results to a specific area."
},
"query": {
"type": "string",
"description": "Search by station name or location keyword to filter bike docking points (e.g. Waterloo, Soho, Hyde Park, Paddington). Returns all 799+ stations when omitted."
}
},
"additionalProperties": false
}Plan a multi-modal journey between any two London locations using the TfL journey planner. Accepts free-text addresses, NAPTAN stop IDs, ICS station codes, or lat/lon coordinates as origin and destination. Returns up to 3 journey options with legs, modes (tube, bus, walking, overground, etc.), departure/arrival times, and turn-by-turn summaries. Optionally specify preferred modes (e.g. tube,bus), date (YYYYMMDD), and time (HHMM) for departing or arriving at a specific time. Covers all TfL services: Tube, Overground, Elizabeth line, DLR, bus, tram, river bus, and walking. Source: TfL Unified API — api.tfl.gov.uk. No auth required, TfL Open Data CC-BY.
| Argument | Type | Description |
|---|---|---|
| to* | string | Journey destination — accepts NAPTAN IDs, ICS codes, lat/lon pairs, or free-text location names (e.g. Heathrow Terminal 5, Canary Wharf, Waterloo). |
| date | string | Journey date in YYYYMMDD format (e.g. 20250710). Defaults to today. Used together with time to find departures or arrivals at that datetime. |
| from* | string | Journey origin — accepts NAPTAN IDs (940GZZLUKSX), ICS codes (1000008), lat/lon pairs (51.509,-0.128), or free-text location names (e.g. Kings Cross, Victoria, London Bridge). |
| mode | string | Comma-separated preferred transport modes for the journey (e.g. tube,bus,walking or tube,overground,elizabeth-line). Defaults to all available TfL modes including walking. |
| time | string | Journey time in HHMM 24-hour format (e.g. 0830, 1730). Defaults to current time. Interpreted as departure time unless time_is is set to Arriving. |
| limit | integer | Maximum number of journey options to return (1–5). Defaults to 3. |
| time_is | string | Whether the time parameter represents a departure or arrival time (Departing or Arriving). Defaults to Departing. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"from",
"to"
],
"properties": {
"to": {
"type": "string",
"description": "Journey destination — accepts NAPTAN IDs, ICS codes, lat/lon pairs, or free-text location names (e.g. Heathrow Terminal 5, Canary Wharf, Waterloo)."
},
"date": {
"type": "string",
"description": "Journey date in YYYYMMDD format (e.g. 20250710). Defaults to today. Used together with time to find departures or arrivals at that datetime."
},
"from": {
"type": "string",
"description": "Journey origin — accepts NAPTAN IDs (940GZZLUKSX), ICS codes (1000008), lat/lon pairs (51.509,-0.128), or free-text location names (e.g. Kings Cross, Victoria, London Bridge)."
},
"mode": {
"type": "string",
"description": "Comma-separated preferred transport modes for the journey (e.g. tube,bus,walking or tube,overground,elizabeth-line). Defaults to all available TfL modes including walking."
},
"time": {
"type": "string",
"description": "Journey time in HHMM 24-hour format (e.g. 0830, 1730). Defaults to current time. Interpreted as departure time unless time_is is set to Arriving."
},
"limit": {
"type": "integer",
"maximum": 5,
"minimum": 1,
"description": "Maximum number of journey options to return (1–5). Defaults to 3."
},
"time_is": {
"enum": [
"Departing",
"Arriving"
],
"type": "string",
"description": "Whether the time parameter represents a departure or arrival time (Departing or Arriving). Defaults to Departing."
}
},
"additionalProperties": false
}Get real-time service status for all Transport for London (TfL) lines including Tube, Overground, Elizabeth line, DLR, bus, tram, and cable car. Returns the current operational status (Good Service, Minor Delays, Severe Delays, Part Suspended, etc.) and the reason for any disruption. Filter by specific modes (tube, overground, elizabeth-line, dlr, bus, tram, cable-car, river-bus) and choose to show only disrupted lines. Returns total line count, how many are disrupted, and per-line status with severity score (0=closed, 10=good). Useful for journey planning, commuter alerts, and real-time London transport monitoring. Source: TfL Unified API — api.tfl.gov.uk. No auth required, TfL Open Data CC-BY.
| Argument | Type | Description |
|---|---|---|
| modes | string | Comma-separated transport modes to query (e.g. tube,overground,elizabeth-line,dlr,bus,tram,cable-car). Defaults to tube,overground,elizabeth-line,dlr. Valid modes: tube, overground, elizabeth-line, dlr, bus, tram, cable-car, river-bus. |
| detail | boolean | Include additional disruption detail such as affected stops (default false). When true, the response includes affected station lists for each disruption. |
| include_good_service | boolean | Whether to include lines running with Good Service in the results (default true). Set to false to return only lines with disruptions, delays, or suspensions. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"modes": {
"type": "string",
"description": "Comma-separated transport modes to query (e.g. tube,overground,elizabeth-line,dlr,bus,tram,cable-car). Defaults to tube,overground,elizabeth-line,dlr. Valid modes: tube, overground, elizabeth-line, dlr, bus, tram, cable-car, river-bus."
},
"detail": {
"type": "boolean",
"description": "Include additional disruption detail such as affected stops (default false). When true, the response includes affected station lists for each disruption."
},
"include_good_service": {
"type": "boolean",
"description": "Whether to include lines running with Good Service in the results (default true). Set to false to return only lines with disruptions, delays, or suspensions."
}
},
"additionalProperties": false
}Get the next scheduled matches for a sports league, identified by its TheSportsDB league ID. Returns upcoming events with home/away teams, scheduled date, kickoff time, round number, venue, and team badge URLs. Status field indicates scheduling state (NS = not started, PPD = postponed). Common league IDs: 4328 (English Premier League), 4387 (NBA), 4391 (NFL), 4380 (MLB), 4335 (Scottish Premier League). Obtain league IDs from team_search results (the league_id field). Data source: TheSportsDB — free public sports database, no auth required.
| Argument | Type | Description |
|---|---|---|
| league_id* | string | TheSportsDB league ID to retrieve upcoming events for (e.g. "4328" for English Premier League, "4387" for NBA, "4391" for NFL). Obtain a league ID from team search results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"league_id"
],
"properties": {
"league_id": {
"type": "string",
"description": "TheSportsDB league ID to retrieve upcoming events for (e.g. \"4328\" for English Premier League, \"4387\" for NBA, \"4391\" for NFL). Obtain a league ID from team search results."
}
},
"additionalProperties": false
}Get the most recent completed match results for a sports league, identified by its TheSportsDB league ID. Returns match events with home/away teams, scores, round number, date, time, venue, and result string. Common league IDs: 4328 (English Premier League), 4387 (NBA), 4391 (NFL), 4380 (MLB), 4335 (Scottish Premier League). Obtain league IDs from team_search results (the league_id field). Data source: TheSportsDB — free public sports database, no auth required.
| Argument | Type | Description |
|---|---|---|
| league_id* | string | TheSportsDB league ID to retrieve past events for (e.g. "4328" for English Premier League, "4387" for NBA, "4391" for NFL). Obtain a league ID from team search results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"league_id"
],
"properties": {
"league_id": {
"type": "string",
"description": "TheSportsDB league ID to retrieve past events for (e.g. \"4328\" for English Premier League, \"4387\" for NBA, \"4391\" for NFL). Obtain a league ID from team search results."
}
},
"additionalProperties": false
}Search for a professional sports player by name across all sports. Returns player profile including current team, sport, position, nationality, date of birth, active status, gender, and player photo URLs (thumbnail and cutout). Supports partial name matching. Multiple results are returned when the name is ambiguous. Data source: TheSportsDB — free public sports database, no auth required.
| Argument | Type | Description |
|---|---|---|
| name* | string | Player name to search for (e.g. "Harry Kane", "LeBron James"). Partial names are supported. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"minLength": 1,
"description": "Player name to search for (e.g. \"Harry Kane\", \"LeBron James\"). Partial names are supported."
}
},
"additionalProperties": false
}Search for a sports team by name across all sports (soccer, basketball, NFL, NHL, baseball, rugby, etc.). Returns team profile including sport type, primary league with league ID, stadium, location, country, founding year, website, and badge/logo URL. Use the returned league_id to retrieve past or upcoming match results via the events_past and events_next tools. Data source: TheSportsDB — free public sports database, no auth required.
| Argument | Type | Description |
|---|---|---|
| name* | string | Team name to search for (e.g. "Arsenal", "Lakers", "New England Patriots"). Partial names are supported. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"minLength": 1,
"description": "Team name to search for (e.g. \"Arsenal\", \"Lakers\", \"New England Patriots\"). Partial names are supported."
}
},
"additionalProperties": false
}Find events by artist or performer name with optional country and date filters (Ticketmaster)
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (0-based, default 0) |
| size | integer | Number of results per page (1-200, default 20) |
| sort | string | Sort order (e.g. "date,asc", "relevance,desc") |
| locale | string | Locale for response (e.g. "en-us") |
| keyword | string | Artist/performer name to search (e.g. "Beyonce", "Coldplay") |
| countryCode | string | ISO 3166-1 alpha-2 country code (e.g. "US", "GB") |
| endDateTime | string | End date/time in ISO 8601 format with Z suffix |
| attractionId | string | Ticketmaster attraction ID for exact artist match |
| startDateTime | string | Start date/time in ISO 8601 format with Z suffix |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 0,
"description": "Page number for pagination (0-based, default 0)"
},
"size": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Number of results per page (1-200, default 20)"
},
"sort": {
"type": "string",
"description": "Sort order (e.g. \"date,asc\", \"relevance,desc\")"
},
"locale": {
"type": "string",
"description": "Locale for response (e.g. \"en-us\")"
},
"keyword": {
"type": "string",
"description": "Artist/performer name to search (e.g. \"Beyonce\", \"Coldplay\")"
},
"countryCode": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO 3166-1 alpha-2 country code (e.g. \"US\", \"GB\")"
},
"endDateTime": {
"type": "string",
"description": "End date/time in ISO 8601 format with Z suffix"
},
"attractionId": {
"type": "string",
"description": "Ticketmaster attraction ID for exact artist match"
},
"startDateTime": {
"type": "string",
"description": "Start date/time in ISO 8601 format with Z suffix"
}
},
"additionalProperties": false
}Get upcoming events at a specific venue by venue ID (Ticketmaster)
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (0-based, default 0) |
| size | integer | Number of results per page (1-200, default 20) |
| sort | string | Sort order (e.g. "date,asc", "relevance,desc") |
| locale | string | Locale for response (e.g. "en-us") |
| keyword | string | Optional keyword filter for events at this venue |
| venueId* | string | Ticketmaster venue ID (e.g. "KovZpZA7AAEA" for Madison Square Garden) |
| endDateTime | string | End date/time in ISO 8601 format with Z suffix |
| startDateTime | string | Start date/time in ISO 8601 format with Z suffix |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"venueId"
],
"properties": {
"page": {
"type": "integer",
"minimum": 0,
"description": "Page number for pagination (0-based, default 0)"
},
"size": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Number of results per page (1-200, default 20)"
},
"sort": {
"type": "string",
"description": "Sort order (e.g. \"date,asc\", \"relevance,desc\")"
},
"locale": {
"type": "string",
"description": "Locale for response (e.g. \"en-us\")"
},
"keyword": {
"type": "string",
"description": "Optional keyword filter for events at this venue"
},
"venueId": {
"type": "string",
"description": "Ticketmaster venue ID (e.g. \"KovZpZA7AAEA\" for Madison Square Garden)"
},
"endDateTime": {
"type": "string",
"description": "End date/time in ISO 8601 format with Z suffix"
},
"startDateTime": {
"type": "string",
"description": "Start date/time in ISO 8601 format with Z suffix"
}
},
"additionalProperties": false
}Get all event classification categories — segments, genres, sub-genres (Ticketmaster)
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (0-based, default 0) |
| size | integer | Number of results per page (1-200, default 20) |
| locale | string | Locale for response (e.g. "en-us") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 0,
"description": "Page number for pagination (0-based, default 0)"
},
"size": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Number of results per page (1-200, default 20)"
},
"locale": {
"type": "string",
"description": "Locale for response (e.g. \"en-us\")"
}
},
"additionalProperties": false
}Get full details for an event — dates, venues, prices, images, classifications, seat map (Ticketmaster)
| Argument | Type | Description |
|---|---|---|
| id* | string | Ticketmaster event ID (e.g. "vvG1iZ4JkS1GKT") |
| locale | string | Locale for response (e.g. "en-us") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Ticketmaster event ID (e.g. \"vvG1iZ4JkS1GKT\")"
},
"locale": {
"type": "string",
"description": "Locale for response (e.g. \"en-us\")"
}
},
"additionalProperties": false
}Find events near geographic coordinates with radius filter (Ticketmaster)
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (0-based, default 0) |
| size | integer | Number of results per page (1-200, default 20) |
| sort | string | Sort order (e.g. "date,asc", "distance,asc") |
| unit | string | Distance unit for radius (default: miles) |
| locale | string | Locale for response (e.g. "en-us") |
| radius | integer | Search radius (default unit: miles, max 500) |
| keyword | string | Optional keyword filter (e.g. "jazz", "basketball") |
| latlong* | string | Latitude,longitude coordinates (e.g. "40.7128,-74.0060" for NYC) |
| endDateTime | string | End date/time in ISO 8601 format with Z suffix |
| startDateTime | string | Start date/time in ISO 8601 format with Z suffix |
| classificationName | string | Event category filter (e.g. "Music", "Sports") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latlong"
],
"properties": {
"page": {
"type": "integer",
"minimum": 0,
"description": "Page number for pagination (0-based, default 0)"
},
"size": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Number of results per page (1-200, default 20)"
},
"sort": {
"type": "string",
"description": "Sort order (e.g. \"date,asc\", \"distance,asc\")"
},
"unit": {
"enum": [
"miles",
"km"
],
"type": "string",
"description": "Distance unit for radius (default: miles)"
},
"locale": {
"type": "string",
"description": "Locale for response (e.g. \"en-us\")"
},
"radius": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Search radius (default unit: miles, max 500)"
},
"keyword": {
"type": "string",
"description": "Optional keyword filter (e.g. \"jazz\", \"basketball\")"
},
"latlong": {
"type": "string",
"description": "Latitude,longitude coordinates (e.g. \"40.7128,-74.0060\" for NYC)"
},
"endDateTime": {
"type": "string",
"description": "End date/time in ISO 8601 format with Z suffix"
},
"startDateTime": {
"type": "string",
"description": "Start date/time in ISO 8601 format with Z suffix"
},
"classificationName": {
"type": "string",
"description": "Event category filter (e.g. \"Music\", \"Sports\")"
}
},
"additionalProperties": false
}Search for events (concerts, sports, theatre, festivals) by keyword, city, date, or category across 26+ countries (Ticketmaster)
| Argument | Type | Description |
|---|---|---|
| city | string | City name to filter events (e.g. "New York", "London") |
| page | integer | Page number for pagination (0-based, default 0) |
| size | integer | Number of results per page (1-200, default 20) |
| sort | string | Sort order (e.g. "date,asc", "relevance,desc", "name,asc") |
| locale | string | Locale for response (e.g. "en-us", "fr-fr") |
| keyword | string | Search keyword (e.g. "concert", "NBA", "Taylor Swift") |
| stateCode | string | State code for US/CA events (e.g. "NY", "CA", "ON") |
| countryCode | string | ISO 3166-1 alpha-2 country code (e.g. "US", "GB", "DE") |
| endDateTime | string | End date/time in ISO 8601 format with Z suffix (e.g. "2026-12-31T23:59:59Z") |
| startDateTime | string | Start date/time in ISO 8601 format with Z suffix (e.g. "2026-04-01T00:00:00Z") |
| classificationName | string | Event category filter (e.g. "Music", "Sports", "Arts & Theatre") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"city": {
"type": "string",
"description": "City name to filter events (e.g. \"New York\", \"London\")"
},
"page": {
"type": "integer",
"minimum": 0,
"description": "Page number for pagination (0-based, default 0)"
},
"size": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Number of results per page (1-200, default 20)"
},
"sort": {
"type": "string",
"description": "Sort order (e.g. \"date,asc\", \"relevance,desc\", \"name,asc\")"
},
"locale": {
"type": "string",
"description": "Locale for response (e.g. \"en-us\", \"fr-fr\")"
},
"keyword": {
"type": "string",
"description": "Search keyword (e.g. \"concert\", \"NBA\", \"Taylor Swift\")"
},
"stateCode": {
"type": "string",
"description": "State code for US/CA events (e.g. \"NY\", \"CA\", \"ON\")"
},
"countryCode": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO 3166-1 alpha-2 country code (e.g. \"US\", \"GB\", \"DE\")"
},
"endDateTime": {
"type": "string",
"description": "End date/time in ISO 8601 format with Z suffix (e.g. \"2026-12-31T23:59:59Z\")"
},
"startDateTime": {
"type": "string",
"description": "Start date/time in ISO 8601 format with Z suffix (e.g. \"2026-04-01T00:00:00Z\")"
},
"classificationName": {
"type": "string",
"description": "Event category filter (e.g. \"Music\", \"Sports\", \"Arts & Theatre\")"
}
},
"additionalProperties": false
}Get trending and popular events sorted by relevance (Ticketmaster)
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (0-based, default 0) |
| size | integer | Number of results per page (1-200, default 20) |
| locale | string | Locale for response (e.g. "en-us") |
| countryCode | string | ISO 3166-1 alpha-2 country code (e.g. "US", "GB") |
| classificationName | string | Event category filter (e.g. "Music", "Sports") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 0,
"description": "Page number for pagination (0-based, default 0)"
},
"size": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Number of results per page (1-200, default 20)"
},
"locale": {
"type": "string",
"description": "Locale for response (e.g. \"en-us\")"
},
"countryCode": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO 3166-1 alpha-2 country code (e.g. \"US\", \"GB\")"
},
"classificationName": {
"type": "string",
"description": "Event category filter (e.g. \"Music\", \"Sports\")"
}
},
"additionalProperties": false
}Get tide predictions for a NOAA station — high/low tides, hourly, or 6-minute intervals. Returns predicted water level in feet or meters. Covers US coastlines, rivers, Great Lakes. Station IDs: 8518750 (NYC), 9414290 (SF), 8443970 (Boston) (NOAA, US Gov)
| Argument | Type | Description |
|---|---|---|
| datum | string | Vertical datum: MLLW (default), MSL, NAVD, MHHW, MHW, MLW, etc. |
| units | string | Units: "english" = feet (default), "metric" = meters |
| station* | string | NOAA station ID (e.g. "8518750" for The Battery NYC, "9414290" for San Francisco, "8443970" for Boston) |
| end_date* | string | End date in YYYYMMDD format (e.g. "20260410"). Max range: 31 days. |
| interval | string | Prediction interval: "hilo" = high/low tides only (default), "h" = hourly, "6" = every 6 minutes |
| begin_date* | string | Start date in YYYYMMDD format (e.g. "20260409") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"station",
"begin_date",
"end_date"
],
"properties": {
"datum": {
"type": "string",
"description": "Vertical datum: MLLW (default), MSL, NAVD, MHHW, MHW, MLW, etc."
},
"units": {
"enum": [
"english",
"metric"
],
"type": "string",
"description": "Units: \"english\" = feet (default), \"metric\" = meters"
},
"station": {
"type": "string",
"minLength": 1,
"description": "NOAA station ID (e.g. \"8518750\" for The Battery NYC, \"9414290\" for San Francisco, \"8443970\" for Boston)"
},
"end_date": {
"type": "string",
"pattern": "^\\d{8}$",
"description": "End date in YYYYMMDD format (e.g. \"20260410\"). Max range: 31 days."
},
"interval": {
"enum": [
"hilo",
"h",
"6"
],
"type": "string",
"description": "Prediction interval: \"hilo\" = high/low tides only (default), \"h\" = hourly, \"6\" = every 6 minutes"
},
"begin_date": {
"type": "string",
"pattern": "^\\d{8}$",
"description": "Start date in YYYYMMDD format (e.g. \"20260409\")"
}
},
"additionalProperties": false
}Get real-time observed water levels from a NOAA station — latest reading or recent history. Returns water level in feet or meters with quality flags. Updated every 6 minutes. Covers US coastlines, rivers, Great Lakes (NOAA, US Gov)
| Argument | Type | Description |
|---|---|---|
| date | string | Date filter: "latest" (default, most recent reading), "today", "recent" (last 72 hours), or YYYYMMDD for specific date |
| datum | string | Vertical datum: MLLW (default), MSL, NAVD, MHHW, MHW, MLW, etc. |
| units | string | Units: "english" = feet (default), "metric" = meters |
| station* | string | NOAA station ID (e.g. "8518750" for The Battery NYC, "9414290" for San Francisco) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"station"
],
"properties": {
"date": {
"type": "string",
"description": "Date filter: \"latest\" (default, most recent reading), \"today\", \"recent\" (last 72 hours), or YYYYMMDD for specific date"
},
"datum": {
"type": "string",
"description": "Vertical datum: MLLW (default), MSL, NAVD, MHHW, MHW, MLW, etc."
},
"units": {
"enum": [
"english",
"metric"
],
"type": "string",
"description": "Units: \"english\" = feet (default), \"metric\" = meters"
},
"station": {
"type": "string",
"minLength": 1,
"description": "NOAA station ID (e.g. \"8518750\" for The Battery NYC, \"9414290\" for San Francisco)"
}
},
"additionalProperties": false
}Convert date/time from one timezone to another. DST-aware. 597 IANA timezones (TimeAPI.io)
| Argument | Type | Description |
|---|---|---|
| datetime* | string | Date and time to convert in "YYYY-MM-DD HH:mm:ss" format (e.g. "2026-03-20 12:00:00") |
| to_timezone* | string | Target IANA timezone (e.g. "Asia/Tokyo") |
| from_timezone* | string | Source IANA timezone (e.g. "America/New_York") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"from_timezone",
"datetime",
"to_timezone"
],
"properties": {
"datetime": {
"type": "string",
"description": "Date and time to convert in \"YYYY-MM-DD HH:mm:ss\" format (e.g. \"2026-03-20 12:00:00\")"
},
"to_timezone": {
"type": "string",
"description": "Target IANA timezone (e.g. \"Asia/Tokyo\")"
},
"from_timezone": {
"type": "string",
"description": "Source IANA timezone (e.g. \"America/New_York\")"
}
},
"additionalProperties": false
}Get current date, time, and day of week for any IANA timezone. DST-aware. No auth, free, unlimited (TimeAPI.io)
| Argument | Type | Description |
|---|---|---|
| timezone* | string | IANA timezone name (e.g. "America/New_York", "Europe/London", "Asia/Tokyo", "UTC") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"timezone"
],
"properties": {
"timezone": {
"type": "string",
"description": "IANA timezone name (e.g. \"America/New_York\", \"Europe/London\", \"Asia/Tokyo\", \"UTC\")"
}
},
"additionalProperties": false
}List all 597 IANA timezone names. Use for timezone validation and discovery (TimeAPI.io)
| Argument | Type | Description |
|---|---|---|
| filter | string | Optional prefix filter for timezone names (e.g. "America", "Europe", "Asia"). Returns all 597 zones if omitted. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"filter": {
"type": "string",
"description": "Optional prefix filter for timezone names (e.g. \"America\", \"Europe\", \"Asia\"). Returns all 597 zones if omitted."
}
},
"additionalProperties": false
}Get full movie details — cast, crew, trailers, ratings, streaming providers, runtime, budget, revenue (TMDB)
| Argument | Type | Description |
|---|---|---|
| id* | integer | TMDB movie ID (e.g. 550 for Fight Club, 27205 for Inception) |
| language | string | ISO 639-1 language code (e.g. "en-US"). Default: en-US |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"description": "TMDB movie ID (e.g. 550 for Fight Club, 27205 for Inception)"
},
"language": {
"type": "string",
"description": "ISO 639-1 language code (e.g. \"en-US\"). Default: en-US"
}
},
"additionalProperties": false
}Discover movies or TV shows by genre, year, rating, language, and sort order (TMDB)
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number (1-500, default 1) |
| type | string | Content type to discover: "movie" or "tv" (default "movie") |
| year | integer | Filter by release year (movies only) |
| region | string | ISO 3166-1 region for release dates (e.g. "US", "GB") |
| sort_by | string | Sort field (e.g. "popularity.desc", "vote_average.desc", "revenue.desc", "primary_release_date.desc") |
| language | string | ISO 639-1 language code (e.g. "en-US"). Default: en-US |
| with_genres | string | Comma-separated genre IDs to filter (e.g. "28,12" for Action+Adventure) |
| include_adult | boolean | Include adult content (default false) |
| vote_average_gte | number | Minimum vote average (0-10) |
| vote_average_lte | number | Maximum vote average (0-10) |
| first_air_date_year | integer | Filter by first air date year (TV only) |
| primary_release_year | integer | Filter by primary release year (movies only) |
| with_original_language | string | ISO 639-1 original language filter (e.g. "en", "ko", "ja") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Page number (1-500, default 1)"
},
"type": {
"enum": [
"movie",
"tv"
],
"type": "string",
"description": "Content type to discover: \"movie\" or \"tv\" (default \"movie\")"
},
"year": {
"type": "integer",
"description": "Filter by release year (movies only)"
},
"region": {
"type": "string",
"description": "ISO 3166-1 region for release dates (e.g. \"US\", \"GB\")"
},
"sort_by": {
"type": "string",
"description": "Sort field (e.g. \"popularity.desc\", \"vote_average.desc\", \"revenue.desc\", \"primary_release_date.desc\")"
},
"language": {
"type": "string",
"description": "ISO 639-1 language code (e.g. \"en-US\"). Default: en-US"
},
"with_genres": {
"type": "string",
"description": "Comma-separated genre IDs to filter (e.g. \"28,12\" for Action+Adventure)"
},
"include_adult": {
"type": "boolean",
"description": "Include adult content (default false)"
},
"vote_average_gte": {
"type": "number",
"maximum": 10,
"minimum": 0,
"description": "Minimum vote average (0-10)"
},
"vote_average_lte": {
"type": "number",
"maximum": 10,
"minimum": 0,
"description": "Maximum vote average (0-10)"
},
"first_air_date_year": {
"type": "integer",
"description": "Filter by first air date year (TV only)"
},
"primary_release_year": {
"type": "integer",
"description": "Filter by primary release year (movies only)"
},
"with_original_language": {
"type": "string",
"description": "ISO 639-1 original language filter (e.g. \"en\", \"ko\", \"ja\")"
}
},
"additionalProperties": false
}Search for actors, directors, or crew by name, or get full filmography by person ID (TMDB)
| Argument | Type | Description |
|---|---|---|
| id | integer | TMDB person ID for detailed filmography (e.g. 31 for Tom Hanks). Use either id or query |
| page | integer | Page number for search results (1-500, default 1) |
| query | string | Person name to search for (e.g. "Tom Hanks", "Miyazaki"). Use either query or id |
| language | string | ISO 639-1 language code (e.g. "en-US"). Default: en-US |
| include_adult | boolean | Include adult content (default false) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"id": {
"type": "integer",
"description": "TMDB person ID for detailed filmography (e.g. 31 for Tom Hanks). Use either id or query"
},
"page": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Page number for search results (1-500, default 1)"
},
"query": {
"type": "string",
"description": "Person name to search for (e.g. \"Tom Hanks\", \"Miyazaki\"). Use either query or id"
},
"language": {
"type": "string",
"description": "ISO 639-1 language code (e.g. \"en-US\"). Default: en-US"
},
"include_adult": {
"type": "boolean",
"description": "Include adult content (default false)"
}
},
"additionalProperties": false
}Search for movies, TV shows, and people by name across 1M+ titles in 39 languages (TMDB)
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number (1-500, default 1) |
| query* | string | Search query (movie, TV show, or person name) |
| language | string | ISO 639-1 language code (e.g. "en-US", "de-DE", "ja-JP"). Default: en-US |
| include_adult | boolean | Include adult content in results (default false) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Page number (1-500, default 1)"
},
"query": {
"type": "string",
"description": "Search query (movie, TV show, or person name)"
},
"language": {
"type": "string",
"description": "ISO 639-1 language code (e.g. \"en-US\", \"de-DE\", \"ja-JP\"). Default: en-US"
},
"include_adult": {
"type": "boolean",
"description": "Include adult content in results (default false)"
}
},
"additionalProperties": false
}Get movie recommendations based on a movie ID — similar genres, themes, cast (TMDB)
| Argument | Type | Description |
|---|---|---|
| id* | integer | TMDB movie ID to get recommendations for |
| page | integer | Page number (1-500, default 1) |
| language | string | ISO 639-1 language code (e.g. "en-US"). Default: en-US |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"description": "TMDB movie ID to get recommendations for"
},
"page": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Page number (1-500, default 1)"
},
"language": {
"type": "string",
"description": "ISO 639-1 language code (e.g. \"en-US\"). Default: en-US"
}
},
"additionalProperties": false
}Get trending movies, TV shows, or people — daily or weekly (TMDB)
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number (1-500, default 1) |
| type | string | Content type: "movie", "tv", "person", or "all" (default "movie") |
| window | string | Time window: "day" or "week" (default "week") |
| language | string | ISO 639-1 language code (e.g. "en-US"). Default: en-US |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Page number (1-500, default 1)"
},
"type": {
"enum": [
"movie",
"tv",
"person",
"all"
],
"type": "string",
"description": "Content type: \"movie\", \"tv\", \"person\", or \"all\" (default \"movie\")"
},
"window": {
"enum": [
"day",
"week"
],
"type": "string",
"description": "Time window: \"day\" or \"week\" (default \"week\")"
},
"language": {
"type": "string",
"description": "ISO 639-1 language code (e.g. \"en-US\"). Default: en-US"
}
},
"additionalProperties": false
}Find streaming, rental, and purchase options for a movie or TV show by country (TMDB)
| Argument | Type | Description |
|---|---|---|
| id* | integer | TMDB movie or TV show ID |
| type | string | Content type: "movie" or "tv" (default "movie") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"description": "TMDB movie or TV show ID"
},
"type": {
"enum": [
"movie",
"tv"
],
"type": "string",
"description": "Content type: \"movie\" or \"tv\" (default \"movie\")"
}
},
"additionalProperties": false
}Detect the language of text — returns language code and confidence score. Supports batch detection (Langbly)
| Argument | Type | Description |
|---|---|---|
| text* | any | Text to detect language of — single string or array |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"text"
],
"properties": {
"text": {
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
],
"description": "Text to detect language of — single string or array"
}
},
"additionalProperties": false
}List all 90+ supported translation languages with localized names. Specify display_language to get names in that language (Langbly)
| Argument | Type | Description |
|---|---|---|
| display_language | string | Language code to display names in (e.g. "en" returns "Spanish", "es" returns "Español") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"display_language": {
"type": "string",
"description": "Language code to display names in (e.g. \"en\" returns \"Spanish\", \"es\" returns \"Español\")"
}
},
"additionalProperties": false
}Translate text between 90+ languages — auto-detects source language, supports batch translation (array of strings), HTML format preservation. Google Translate v2 compatible. $5/1M chars (Langbly)
| Argument | Type | Description |
|---|---|---|
| text* | any | Text to translate — single string or array of strings for batch translation |
| format | string | Input format: "text" (default) or "html" (preserves HTML tags) |
| source | string | Source language code (auto-detected if omitted) |
| target* | string | Target language code (e.g. "es", "fr", "de", "ja", "zh", "ru", "ar") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"text",
"target"
],
"properties": {
"text": {
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
],
"description": "Text to translate — single string or array of strings for batch translation"
},
"format": {
"enum": [
"text",
"html"
],
"type": "string",
"description": "Input format: \"text\" (default) or \"html\" (preserves HTML tags)"
},
"source": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Source language code (auto-detected if omitted)"
},
"target": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Target language code (e.g. \"es\", \"fr\", \"de\", \"ja\", \"zh\", \"ru\", \"ar\")"
}
},
"additionalProperties": false
}Get real-time upcoming departures (line, direction, platform, delay) for a Berlin/Brandenburg transit stop within a time window. Stop ID comes from transport-rest.transit.search_locations or transport-rest.transit.nearby_stops. Data: v6.bvg.transport.rest (community HAFAS wrapper for BVG), no auth required, 100 req/min.
| Argument | Type | Description |
|---|---|---|
| when | string | ISO 8601 date-time to fetch departures for instead of now (e.g. "2026-09-01T08:00:00+02:00"). |
| results | integer | Maximum number of departures to return (default 20, max 100). |
| stop_id* | string | Stop/station ID to fetch departures for, obtained from transport-rest.location_search or transport-rest.nearby_stops (e.g. "900100003"). |
| duration_minutes | integer | Time window in minutes to look ahead for departures (default 60, max 180). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"stop_id"
],
"properties": {
"when": {
"type": "string",
"description": "ISO 8601 date-time to fetch departures for instead of now (e.g. \"2026-09-01T08:00:00+02:00\")."
},
"results": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of departures to return (default 20, max 100)."
},
"stop_id": {
"type": "string",
"maxLength": 30,
"minLength": 1,
"description": "Stop/station ID to fetch departures for, obtained from transport-rest.location_search or transport-rest.nearby_stops (e.g. \"900100003\")."
},
"duration_minutes": {
"type": "integer",
"maximum": 180,
"minimum": 1,
"description": "Time window in minutes to look ahead for departures (default 60, max 180)."
}
},
"additionalProperties": false
}Find public transit stops/stations near a latitude/longitude coordinate in Berlin/Brandenburg, sorted by walking distance. Useful for "what transit is near this address" queries. Data: v6.bvg.transport.rest (community HAFAS wrapper for BVG), no auth required, 100 req/min.
| Argument | Type | Description |
|---|---|---|
| results | integer | Maximum number of nearby stops to return (default 8, max 50). |
| latitude* | number | Latitude of the search point (WGS84). |
| longitude* | number | Longitude of the search point (WGS84). |
| max_distance_meters | integer | Maximum walking distance in meters from the search point. Omit for no limit. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude"
],
"properties": {
"results": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of nearby stops to return (default 8, max 50)."
},
"latitude": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude of the search point (WGS84)."
},
"longitude": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude of the search point (WGS84)."
},
"max_distance_meters": {
"type": "integer",
"maximum": 20000,
"minimum": 1,
"description": "Maximum walking distance in meters from the search point. Omit for no limit."
}
},
"additionalProperties": false
}Plan a public transit journey between two Berlin/Brandenburg stops, with leg-by-leg routing (lines, transfers, real-time delays, duration). Stop IDs come from transport-rest.transit.search_locations or transport-rest.transit.nearby_stops. Data: v6.bvg.transport.rest (community HAFAS wrapper for BVG), no auth required, 100 req/min.
| Argument | Type | Description |
|---|---|---|
| arrival | string | ISO 8601 date-time to arrive at or before. Mutually exclusive with departure. |
| results | integer | Maximum number of journey options to return (default 3, max 10). |
| departure | string | ISO 8601 date-time to depart at or after (e.g. "2026-09-01T08:00:00+02:00"). Mutually exclusive with arrival; defaults to now if neither is set. |
| to_stop_id* | string | Destination stop/station ID, obtained from transport-rest.location_search or transport-rest.nearby_stops. |
| from_stop_id* | string | Origin stop/station ID, obtained from transport-rest.location_search or transport-rest.nearby_stops. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"from_stop_id",
"to_stop_id"
],
"properties": {
"arrival": {
"type": "string",
"description": "ISO 8601 date-time to arrive at or before. Mutually exclusive with departure."
},
"results": {
"type": "integer",
"maximum": 10,
"minimum": 1,
"description": "Maximum number of journey options to return (default 3, max 10)."
},
"departure": {
"type": "string",
"description": "ISO 8601 date-time to depart at or after (e.g. \"2026-09-01T08:00:00+02:00\"). Mutually exclusive with arrival; defaults to now if neither is set."
},
"to_stop_id": {
"type": "string",
"maxLength": 30,
"minLength": 1,
"description": "Destination stop/station ID, obtained from transport-rest.location_search or transport-rest.nearby_stops."
},
"from_stop_id": {
"type": "string",
"maxLength": 30,
"minLength": 1,
"description": "Origin stop/station ID, obtained from transport-rest.location_search or transport-rest.nearby_stops."
}
},
"additionalProperties": false
}Search for public transit stops/stations, addresses, or points of interest in Berlin/Brandenburg by name (e.g. "Alexanderplatz"). Returns location IDs and coordinates to use with departures, journey planning, and nearby-stop lookups. Data: v6.bvg.transport.rest (community HAFAS wrapper for BVG), no auth required, 100 req/min.
| Argument | Type | Description |
|---|---|---|
| query* | string | Search text for a stop/station, address, or point of interest (e.g. "Alexanderplatz" or "Unter den Linden 1, Berlin"). Returns matching location IDs to use in other tools. |
| results | integer | Maximum number of matching locations to return (default 10, max 50). |
| include_poi | boolean | Include points of interest (landmarks, venues) in results, not just stops. Default false. |
| include_addresses | boolean | Include street addresses in results, not just stops. Default false. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"maxLength": 120,
"minLength": 2,
"description": "Search text for a stop/station, address, or point of interest (e.g. \"Alexanderplatz\" or \"Unter den Linden 1, Berlin\"). Returns matching location IDs to use in other tools."
},
"results": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of matching locations to return (default 10, max 50)."
},
"include_poi": {
"type": "boolean",
"description": "Include points of interest (landmarks, venues) in results, not just stops. Default false."
},
"include_addresses": {
"type": "boolean",
"description": "Include street addresses in results, not just stops. Default false."
}
},
"additionalProperties": false
}Real-time alerts (closures, hazards, fire, flood, danger) for US national parks. Filter by state or park code. NPS public domain
| Argument | Type | Description |
|---|---|---|
| q | string | Free-text keyword search. |
| limit | integer | Max records to return (default 10, max 50). |
| start | integer | Pagination offset for stepping through results. |
| park_code | string | Optional park code (e.g. "yose" Yosemite, "yell" Yellowstone, "grca" Grand Canyon). Comma-separated allowed. |
| state_code | string | Optional 2-letter US state code (e.g. "CA", "NY", "WY"). Comma-separated for multiple ("CA,WY"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"q": {
"type": "string",
"description": "Free-text keyword search."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Max records to return (default 10, max 50)."
},
"start": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset for stepping through results."
},
"park_code": {
"type": "string",
"description": "Optional park code (e.g. \"yose\" Yosemite, \"yell\" Yellowstone, \"grca\" Grand Canyon). Comma-separated allowed."
},
"state_code": {
"type": "string",
"description": "Optional 2-letter US state code (e.g. \"CA\", \"NY\", \"WY\"). Comma-separated for multiple (\"CA,WY\")."
}
},
"additionalProperties": false
}NPS campgrounds with reservation info, accessibility, amenities, coords. NPS public domain
| Argument | Type | Description |
|---|---|---|
| q | string | Free-text keyword search. |
| limit | integer | Max records to return (default 10, max 50). |
| start | integer | Pagination offset for stepping through results. |
| park_code | string | Optional park code (e.g. "yose" Yosemite, "yell" Yellowstone, "grca" Grand Canyon). Comma-separated allowed. |
| state_code | string | Optional 2-letter US state code (e.g. "CA", "NY", "WY"). Comma-separated for multiple ("CA,WY"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"q": {
"type": "string",
"description": "Free-text keyword search."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Max records to return (default 10, max 50)."
},
"start": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset for stepping through results."
},
"park_code": {
"type": "string",
"description": "Optional park code (e.g. \"yose\" Yosemite, \"yell\" Yellowstone, \"grca\" Grand Canyon). Comma-separated allowed."
},
"state_code": {
"type": "string",
"description": "Optional 2-letter US state code (e.g. \"CA\", \"NY\", \"WY\"). Comma-separated for multiple (\"CA,WY\")."
}
},
"additionalProperties": false
}Search the 474 US national parks with full metadata: coords, activities, entrance fees, operating hours, photos, designation. Filter by state code, park code, or keyword. NPS public domain
| Argument | Type | Description |
|---|---|---|
| q | string | Free-text keyword search. |
| limit | integer | Max records to return (default 10, max 50). |
| start | integer | Pagination offset for stepping through results. |
| park_code | string | Optional park code (e.g. "yose" Yosemite, "yell" Yellowstone, "grca" Grand Canyon). Comma-separated allowed. |
| state_code | string | Optional 2-letter US state code (e.g. "CA", "NY", "WY"). Comma-separated for multiple ("CA,WY"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"q": {
"type": "string",
"description": "Free-text keyword search."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Max records to return (default 10, max 50)."
},
"start": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset for stepping through results."
},
"park_code": {
"type": "string",
"description": "Optional park code (e.g. \"yose\" Yosemite, \"yell\" Yellowstone, \"grca\" Grand Canyon). Comma-separated allowed."
},
"state_code": {
"type": "string",
"description": "Optional 2-letter US state code (e.g. \"CA\", \"NY\", \"WY\"). Comma-separated for multiple (\"CA,WY\")."
}
},
"additionalProperties": false
}Activities, programs, tours offered at US national parks (3,587 entries). Filter by park or state. NPS public domain
| Argument | Type | Description |
|---|---|---|
| q | string | Free-text keyword search. |
| limit | integer | Max records to return (default 10, max 50). |
| start | integer | Pagination offset for stepping through results. |
| park_code | string | Optional park code (e.g. "yose" Yosemite, "yell" Yellowstone, "grca" Grand Canyon). Comma-separated allowed. |
| state_code | string | Optional 2-letter US state code (e.g. "CA", "NY", "WY"). Comma-separated for multiple ("CA,WY"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"q": {
"type": "string",
"description": "Free-text keyword search."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Max records to return (default 10, max 50)."
},
"start": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset for stepping through results."
},
"park_code": {
"type": "string",
"description": "Optional park code (e.g. \"yose\" Yosemite, \"yell\" Yellowstone, \"grca\" Grand Canyon). Comma-separated allowed."
},
"state_code": {
"type": "string",
"description": "Optional 2-letter US state code (e.g. \"CA\", \"NY\", \"WY\"). Comma-separated for multiple (\"CA,WY\")."
}
},
"additionalProperties": false
}Completed US Treasury security auction results by type and look-back period. Returns CUSIP, issue/maturity dates, high yield, high discount rate, bid-to-cover ratio, total accepted/tendered amounts, and auction format for Bills (4-52 week), Notes (2-10 year), Bonds (20-30 year), TIPS, FRN, and CMB. Source: TreasuryDirect TA_WS, US Government open data, no auth required.
| Argument | Type | Description |
|---|---|---|
| days | integer | Look-back window in calendar days (1–365). Returns auctions completed in this period. |
| type | string | Treasury security type to retrieve auction results for. Bill = short-term (4–52 week), Note = 2–10 year, Bond = 20–30 year, TIPS = inflation-protected, FRN = floating rate note, CMB = cash management bill. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"days": {
"type": "integer",
"default": 30,
"maximum": 365,
"minimum": 1,
"description": "Look-back window in calendar days (1–365). Returns auctions completed in this period."
},
"type": {
"enum": [
"Bill",
"Note",
"Bond",
"TIPS",
"FRN",
"CMB"
],
"type": "string",
"default": "Bill",
"description": "Treasury security type to retrieve auction results for. Bill = short-term (4–52 week), Note = 2–10 year, Bond = 20–30 year, TIPS = inflation-protected, FRN = floating rate note, CMB = cash management bill."
}
},
"additionalProperties": false
}Announced upcoming US Treasury security auctions not yet held. Returns the auction schedule including security type (Bill/Note/Bond), term, announcement date, auction date, and issue date for each forthcoming offering. Typically lists 1-2 weeks of upcoming auctions across all security types. Source: TreasuryDirect TA_WS, US Government open data, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of upcoming auction announcements to return (1–50). Announcements cover Bills, Notes, and Bonds typically scheduled 1–2 weeks ahead. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"default": 20,
"maximum": 50,
"minimum": 1,
"description": "Maximum number of upcoming auction announcements to return (1–50). Announcements cover Bills, Notes, and Bonds typically scheduled 1–2 weeks ahead."
}
},
"additionalProperties": false
}US Treasury Inflation-Protected Securities (TIPS) auction results with reference CPI data. Returns real yield (highYield), coupon rate (interestRate), reference CPI on issue date, index ratio, bid-to-cover ratio, and total accepted for each TIPS auction in the specified look-back window. Useful for tracking real interest rate trends and inflation breakeven calculations. Source: TreasuryDirect TA_WS, US Government open data, no auth required.
| Argument | Type | Description |
|---|---|---|
| days | integer | Look-back window in calendar days (1–1825, i.e. up to 5 years). Returns TIPS auction results with reference CPI values and real yield (highYield) for each auction. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"days": {
"type": "integer",
"default": 365,
"maximum": 1825,
"minimum": 1,
"description": "Look-back window in calendar days (1–1825, i.e. up to 5 years). Returns TIPS auction results with reference CPI values and real yield (highYield) for each auction."
}
},
"additionalProperties": false
}Look up a specific US Treasury security by its CUSIP identifier. Returns full auction and issuance details including security type, term, interest rate, maturity date, high yield, bid-to-cover ratio, and settlement information. CUSIPs for recent T-Bills typically start with "9127" or "9128". Source: TreasuryDirect TA_WS, US Government open data, no auth required.
| Argument | Type | Description |
|---|---|---|
| cusip* | string | CUSIP identifier of the Treasury security to look up (6–9 alphanumeric characters, e.g. "912797TW7"). CUSIPs for recent T-Bills start with "9128" or "9127". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"cusip"
],
"properties": {
"cusip": {
"type": "string",
"maxLength": 9,
"minLength": 6,
"description": "CUSIP identifier of the Treasury security to look up (6–9 alphanumeric characters, e.g. \"912797TW7\"). CUSIPs for recent T-Bills start with \"9128\" or \"9127\"."
}
},
"additionalProperties": false
}Get the official US national debt figures from the US Treasury (Debt to the Penny). Returns the total public debt outstanding broken into debt held by the public and intragovernmental holdings. Data is updated each business day. Specify `days` to retrieve a series (default 1 = latest day only). Latest figure: ~$39.3 trillion as of June 2026. Source: fiscaldata.treasury.gov — US Government open data, no auth, commercial use permitted.
| Argument | Type | Description |
|---|---|---|
| days | integer | Number of most-recent daily records to return (1–100). Default 1 returns only the latest date. The national debt is updated each business day by the US Treasury. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"days": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of most-recent daily records to return (1–100). Default 1 returns only the latest date. The national debt is updated each business day by the US Treasury."
}
},
"additionalProperties": false
}Get the monthly and fiscal-year-to-date interest expense on US federal debt, broken down by security type (Treasury Notes, Bonds, TIPS, Inflation Compensation on TIPS, FRN, Bills, Savings Bonds, etc.). Shows how much the US government pays each month to service its debt. Includes both accrued interest on public issues and intragovernmental holdings. Source: US Treasury Fiscal Data — interest_expense, no auth, commercial use permitted.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of records to return (1–200). Default 20. Each monthly report contains multiple rows — one per security type (T-Notes, T-Bonds, TIPS, FRN, Bills, Savings Bonds, etc.). Set limit=50 to get roughly one month of all line items. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Maximum number of records to return (1–200). Default 20. Each monthly report contains multiple rows — one per security type (T-Notes, T-Bonds, TIPS, FRN, Bills, Savings Bonds, etc.). Set limit=50 to get roughly one month of all line items."
}
},
"additionalProperties": false
}Get the average interest rates on outstanding US Treasury securities, published monthly. Returns rates for all security types: Treasury Bills, Notes, Bonds, TIPS, Floating Rate Notes (marketable) and Savings Bonds, Government Account Series (non-marketable). Filter by security_type (marketable/non-marketable/all). Use limit=15 for the latest monthly snapshot across all security types. Source: US Treasury Fiscal Data — avg_interest_rates, no auth.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of records to return (1–200). Default 30. Each monthly report contains about 15 rows (one per security type), so limit=30 typically covers the 2 most recent months. |
| security_type | string | Filter by security type. "marketable" = T-Bills, T-Notes, T-Bonds, TIPS, FRN; "non-marketable" = Savings Bonds, Government Account Series, State/Local securities; "all" (default) returns both types. US Treasury reports rates monthly. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Maximum number of records to return (1–200). Default 30. Each monthly report contains about 15 rows (one per security type), so limit=30 typically covers the 2 most recent months."
},
"security_type": {
"enum": [
"marketable",
"non-marketable",
"all"
],
"type": "string",
"description": "Filter by security type. \"marketable\" = T-Bills, T-Notes, T-Bonds, TIPS, FRN; \"non-marketable\" = Savings Bonds, Government Account Series, State/Local securities; \"all\" (default) returns both types. US Treasury reports rates monthly."
}
},
"additionalProperties": false
}Get the quarterly average yield of the US Treasury securities portfolio (Uniform Treasury Tax and Loan Program). Reports the annualized yield percentage for each fiscal quarter. Default returns the 8 most recent quarters (2 years). Example: Q1 2026 yield = 3.27%. Useful for tracking long-term trends in the cost of US government borrowing. Source: US Treasury Fiscal Data — utf_qtr_yields, no auth, commercial use permitted.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of quarterly yield records to return (1–40). Default 8 returns 2 years of data. Each record covers one fiscal quarter. Yield is expressed as an annual percentage. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 40,
"minimum": 1,
"description": "Number of quarterly yield records to return (1–40). Default 8 returns 2 years of data. Each record covers one fiscal quarter. Yield is expressed as an annual percentage."
}
},
"additionalProperties": false
}Get the TV broadcast schedule for a specific country and date — lists all episodes airing that day with show name, network/channel, air time, season/episode numbers, and ratings. Supports broadcast TV (default) or streaming/web channels (Netflix, Hulu, etc.). Country: ISO 3166-1 alpha-2 code (US, GB, AU, CA, DE, etc.). Date: YYYY-MM-DD (defaults to today). No auth required. Source: TVmaze.com (CC BY-SA).
| Argument | Type | Description |
|---|---|---|
| date | string | Schedule date in YYYY-MM-DD format (e.g. "2026-06-29"). Defaults to today. |
| country | string | ISO 3166-1 alpha-2 country code for broadcast TV schedule (e.g. "US", "GB", "AU"). Omit for global. |
| streaming | boolean | If true, returns streaming/web channel schedule (Netflix, Hulu, etc.) instead of broadcast TV. Default: false |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Schedule date in YYYY-MM-DD format (e.g. \"2026-06-29\"). Defaults to today."
},
"country": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO 3166-1 alpha-2 country code for broadcast TV schedule (e.g. \"US\", \"GB\", \"AU\"). Omit for global."
},
"streaming": {
"type": "boolean",
"description": "If true, returns streaming/web channel schedule (Netflix, Hulu, etc.) instead of broadcast TV. Default: false"
}
},
"additionalProperties": false
}Get the cast list for a TV show — actor names, birthdays, genders, countries, and the character they play (name + image). Flags whether the actor plays themselves or a voice role. No auth required. Source: TVmaze.com (CC BY-SA).
| Argument | Type | Description |
|---|---|---|
| id* | integer | TVMaze show ID to retrieve cast and character information for |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"description": "TVMaze show ID to retrieve cast and character information for",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Get full details for a TV show by TVMaze ID — genres, status, network/streaming channel, schedule (days/time), rating, premiere/end dates, runtime, IMDB/TheTVDB IDs, official site URL, and plain-text summary. Use show_search to find the TVMaze ID first. No auth required. Source: TVmaze.com (CC BY-SA).
| Argument | Type | Description |
|---|---|---|
| id* | integer | TVMaze show ID (e.g. 169 for Breaking Bad, 82 for Game of Thrones) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"description": "TVMaze show ID (e.g. 169 for Breaking Bad, 82 for Game of Thrones)",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Get the complete episode list for a TV show — season/episode numbers, air dates, runtimes, episode ratings, and plain-text summaries. Filter by season number to get only episodes from a specific season. Optionally include special episodes. No auth required. Source: TVmaze.com (CC BY-SA).
| Argument | Type | Description |
|---|---|---|
| id* | integer | TVMaze show ID (e.g. 169 for Breaking Bad) |
| season | integer | Filter episodes to a specific season number (e.g. 1 for Season 1). Omit for all seasons. |
| specials | boolean | Include special episodes (e.g. holiday specials, bonus episodes). Default: false |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"description": "TVMaze show ID (e.g. 169 for Breaking Bad)",
"exclusiveMinimum": 0
},
"season": {
"type": "integer",
"description": "Filter episodes to a specific season number (e.g. 1 for Season 1). Omit for all seasons.",
"exclusiveMinimum": 0
},
"specials": {
"type": "boolean",
"description": "Include special episodes (e.g. holiday specials, bonus episodes). Default: false"
}
},
"additionalProperties": false
}Search 25,000+ TV shows by title — returns name, genres, status, network, rating, premiere/end dates, runtime, summary, and relevance score. Results ordered by relevance. Covers broadcast, cable, and streaming shows worldwide. No auth required. Source: TVmaze.com (CC BY-SA).
| Argument | Type | Description |
|---|---|---|
| query* | string | TV show title to search for (e.g. "Breaking Bad", "Game of Thrones") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"minLength": 1,
"description": "TV show title to search for (e.g. \"Breaking Bad\", \"Game of Thrones\")"
}
},
"additionalProperties": false
}Get current trending topics on Twitter/X. Filter by location using WOEID (Where On Earth ID). Returns trend name, search query, and rank. 1=worldwide, 23424977=US, 23424975=UK.
| Argument | Type | Description |
|---|---|---|
| woeid | integer | Where On Earth ID for location-specific trends (1=worldwide, 23424977=US, 23424975=UK, 23424856=Japan) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"woeid": {
"type": "integer",
"description": "Where On Earth ID for location-specific trends (1=worldwide, 23424977=US, 23424975=UK, 23424856=Japan)"
}
},
"additionalProperties": false
}Search Twitter/X tweets by keyword, hashtag, or advanced query. Returns tweet text, author info, engagement metrics (likes, retweets, replies, views), and timestamps. 96% cheaper than official X API. Covers recent tweets.
| Argument | Type | Description |
|---|---|---|
| query* | string | Search query — keywords, hashtags, or advanced operators (e.g. "AI agents", "#crypto", "from:elonmusk") |
| cursor | string | Pagination cursor from previous response (for next page of results) |
| sort_order | string | Sort order: "recency" for latest first, "relevancy" for most relevant (default recency) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"description": "Search query — keywords, hashtags, or advanced operators (e.g. \"AI agents\", \"#crypto\", \"from:elonmusk\")"
},
"cursor": {
"type": "string",
"description": "Pagination cursor from previous response (for next page of results)"
},
"sort_order": {
"enum": [
"recency",
"relevancy"
],
"type": "string",
"description": "Sort order: \"recency\" for latest first, \"relevancy\" for most relevant (default recency)"
}
},
"additionalProperties": false
}Get paginated follower list for a Twitter/X user. Returns follower profiles with username, display name, bio, follower count, and verified status. Supports cursor pagination.
| Argument | Type | Description |
|---|---|---|
| cursor | string | Pagination cursor from previous response |
| username* | string | Twitter/X username to get followers for (without @) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"username"
],
"properties": {
"cursor": {
"type": "string",
"description": "Pagination cursor from previous response"
},
"username": {
"type": "string",
"description": "Twitter/X username to get followers for (without @)"
}
},
"additionalProperties": false
}Get a Twitter/X user profile by username. Returns display name, bio, follower/following count, tweet count, verified status, profile image, location, and account creation date.
| Argument | Type | Description |
|---|---|---|
| user_id | string | Twitter/X numeric user ID as alternative to username |
| username | string | Twitter/X username without @ (e.g. "elonmusk", "OpenAI") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"user_id": {
"type": "string",
"description": "Twitter/X numeric user ID as alternative to username"
},
"username": {
"type": "string",
"description": "Twitter/X username without @ (e.g. \"elonmusk\", \"OpenAI\")"
}
},
"additionalProperties": false
}Get the latest reading for every measure (e.g. water level, flow) recorded at one UK Environment Agency monitoring station, identified by the station_id from uk-ea-flood-monitoring.station_search. Returns each measure_id with its most recent date/time and value. Data: environment.data.gov.uk/flood-monitoring, UK Open Government Licence v3.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| station_id* | string | Station identifier — the `station_id` (notation) returned by uk-ea-flood-monitoring.station_search, e.g. "1029TH". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"station_id"
],
"properties": {
"station_id": {
"type": "string",
"maxLength": 100,
"minLength": 1,
"description": "Station identifier — the `station_id` (notation) returned by uk-ea-flood-monitoring.station_search, e.g. \"1029TH\"."
}
},
"additionalProperties": false
}Search the UK Environment Agency real-time river/tidal monitoring network for stations, filterable by town, river name, catchment name, measured parameter (level, flow, rainfall, wind, temperature), or freetext label search. Returns station_id, name, river/catchment, coordinates, and the measures each station records — use station_id with uk-ea-flood-monitoring.station_readings to get its latest values. Data: environment.data.gov.uk/flood-monitoring, UK Open Government Licence v3.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| town | string | Filter stations by nearest town (e.g. "Shrewsbury"). |
| limit | integer | Max stations to return (default 20, max 200). |
| search | string | Freetext search matching the station label/name. |
| parameter | string | Filter stations by the type of measurement they record. |
| river_name | string | Filter stations by river name, partial match (e.g. "River Severn"). |
| catchment_name | string | Filter stations by river catchment name (e.g. "Cotswolds"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"town": {
"type": "string",
"maxLength": 100,
"description": "Filter stations by nearest town (e.g. \"Shrewsbury\")."
},
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Max stations to return (default 20, max 200)."
},
"search": {
"type": "string",
"maxLength": 200,
"description": "Freetext search matching the station label/name."
},
"parameter": {
"enum": [
"level",
"flow",
"rainfall",
"wind",
"temperature"
],
"type": "string",
"description": "Filter stations by the type of measurement they record."
},
"river_name": {
"type": "string",
"maxLength": 200,
"description": "Filter stations by river name, partial match (e.g. \"River Severn\")."
},
"catchment_name": {
"type": "string",
"maxLength": 200,
"description": "Filter stations by river catchment name (e.g. \"Cotswolds\")."
}
},
"additionalProperties": false
}Get currently active flood warnings and alerts for England from the UK Environment Agency, filterable by minimum severity (1=Severe Flood Warning down to 4=Warning no longer in force), county, or a geographic radius (lat/long/dist). Returns each warning's flood area, county, affected river or sea, severity, tidal flag, public message, and when it was raised/last changed. Data: environment.data.gov.uk/flood-monitoring, UK Open Government Licence v3.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| lat | number | Latitude for a geographic radius filter — use with `long` and `dist`. |
| dist | number | Search radius in kilometres around `lat`/`long` — use with both. |
| long | number | Longitude for a geographic radius filter — use with `lat` and `dist`. |
| county | string | Filter by county name of the affected flood area (e.g. "Devon", "North Yorkshire"). |
| min_severity | integer | Filter to warnings at this severity or more severe (lower number = more severe): 1=Severe Flood Warning (danger to life), 2=Flood Warning (immediate action), 3=Flood Alert (be prepared), 4=Warning no longer in force. Omit for all active items. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude for a geographic radius filter — use with `long` and `dist`."
},
"dist": {
"type": "number",
"description": "Search radius in kilometres around `lat`/`long` — use with both.",
"exclusiveMinimum": 0
},
"long": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude for a geographic radius filter — use with `lat` and `dist`."
},
"county": {
"type": "string",
"maxLength": 100,
"description": "Filter by county name of the affected flood area (e.g. \"Devon\", \"North Yorkshire\")."
},
"min_severity": {
"type": "integer",
"maximum": 4,
"minimum": 1,
"description": "Filter to warnings at this severity or more severe (lower number = more severe): 1=Severe Flood Warning (danger to life), 2=Flood Warning (immediate action), 3=Flood Alert (be prepared), 4=Warning no longer in force. Omit for all active items."
}
},
"additionalProperties": false
}Search HM Land Registry Price Paid Data by town, county, and/or local authority district (at least one required) — e.g. town="WARRINGTON" or county="GREATER LONDON". Optional filters: min/max price paid (GBP), min/max transaction date (YYYY-MM-DD), and pagination. Returns the same per-sale fields as search_by_postcode. Data: HM Land Registry, no auth required, Open Government Licence v3.0.
| Argument | Type | Description |
|---|---|---|
| page | integer | Zero-based page number for pagination (default 0). |
| town | string | Town/post town to search (e.g. "WARRINGTON"). At least one of town, county, district is required. |
| county | string | County to search (e.g. "GREATER LONDON"). At least one of town, county, district is required. |
| district | string | Local authority district to search (e.g. "WARRINGTON"). At least one of town, county, district is required. |
| max_date | any | Only include transactions completed on/before this date (YYYY-MM-DD). |
| min_date | string | Only include transactions completed on/after this date (YYYY-MM-DD). |
| max_price | number | Maximum price paid in GBP. |
| min_price | number | Minimum price paid in GBP. |
| page_size | integer | Number of transactions per page (1-100, default 20). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 0,
"description": "Zero-based page number for pagination (default 0)."
},
"town": {
"type": "string",
"description": "Town/post town to search (e.g. \"WARRINGTON\"). At least one of town, county, district is required."
},
"county": {
"type": "string",
"description": "County to search (e.g. \"GREATER LONDON\"). At least one of town, county, district is required."
},
"district": {
"type": "string",
"description": "Local authority district to search (e.g. \"WARRINGTON\"). At least one of town, county, district is required."
},
"max_date": {
"$ref": "#/properties/min_date",
"description": "Only include transactions completed on/before this date (YYYY-MM-DD)."
},
"min_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Only include transactions completed on/after this date (YYYY-MM-DD)."
},
"max_price": {
"type": "number",
"minimum": 0,
"description": "Maximum price paid in GBP."
},
"min_price": {
"type": "number",
"minimum": 0,
"description": "Minimum price paid in GBP."
},
"page_size": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of transactions per page (1-100, default 20)."
}
},
"additionalProperties": false
}Search HM Land Registry Price Paid Data — every residential property sale in England & Wales since 1995 — by exact UK postcode. Optional filters: min/max price paid (GBP), min/max transaction date (YYYY-MM-DD), and pagination. Returns price paid, transaction date, property type, estate type (freehold/leasehold), new-build flag, and full address for each sale. Data: HM Land Registry, no auth required, Open Government Licence v3.0.
| Argument | Type | Description |
|---|---|---|
| page | integer | Zero-based page number for pagination (default 0). |
| max_date | any | Only include transactions completed on/before this date (YYYY-MM-DD). |
| min_date | string | Only include transactions completed on/after this date (YYYY-MM-DD). |
| postcode* | string | UK postcode to search (e.g. "SW1A 1AA"). Matches on exact postcode. |
| max_price | number | Maximum price paid in GBP. |
| min_price | number | Minimum price paid in GBP. |
| page_size | integer | Number of transactions per page (1-100, default 20). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"postcode"
],
"properties": {
"page": {
"type": "integer",
"minimum": 0,
"description": "Zero-based page number for pagination (default 0)."
},
"max_date": {
"$ref": "#/properties/min_date",
"description": "Only include transactions completed on/before this date (YYYY-MM-DD)."
},
"min_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Only include transactions completed on/after this date (YYYY-MM-DD)."
},
"postcode": {
"type": "string",
"minLength": 1,
"description": "UK postcode to search (e.g. \"SW1A 1AA\"). Matches on exact postcode."
},
"max_price": {
"type": "number",
"minimum": 0,
"description": "Maximum price paid in GBP."
},
"min_price": {
"type": "number",
"minimum": 0,
"description": "Minimum price paid in GBP."
},
"page_size": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of transactions per page (1-100, default 20)."
}
},
"additionalProperties": false
}Get a single HM Land Registry price-paid transaction by its GUID transaction_id. Returns price paid, transaction date, property type, estate type, new-build flag, and full address. Call search_by_postcode or search_by_area first to find a transaction_id. Data: HM Land Registry, no auth required, Open Government Licence v3.0.
| Argument | Type | Description |
|---|---|---|
| transaction_id* | string | HM Land Registry transaction GUID (e.g. "702EF0D1-AB60-4A1B-A2A1-C127E1EDE547"). Obtain from search_by_postcode or search_by_area. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"transaction_id"
],
"properties": {
"transaction_id": {
"type": "string",
"minLength": 1,
"description": "HM Land Registry transaction GUID (e.g. \"702EF0D1-AB60-4A1B-A2A1-C127E1EDE547\"). Obtain from search_by_postcode or search_by_area."
}
},
"additionalProperties": false
}List all UK local authorities that participate in the Food Hygiene Rating Scheme (or Scottish FHIS) — name, code, total establishments count, scheme type (FHRS=England/Wales/NI 0-5 rating, FHIS=Scotland pass/improvement).
| Argument | Type | Description |
|---|---|---|
| _unused | string | Reserved for future filtering — not currently used. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"_unused": {
"type": "string",
"description": "Reserved for future filtering — not currently used."
}
},
"additionalProperties": false
}Detailed record for one UK food premise by FSA ID — full scheme breakdown (hygiene/structural/management scores), confidence in management score, exact inspection date, local authority code, business type taxonomy.
| Argument | Type | Description |
|---|---|---|
| establishment_id* | integer | FSA establishment ID (positive integer, obtained from establishment_search results). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"establishment_id"
],
"properties": {
"establishment_id": {
"type": "integer",
"description": "FSA establishment ID (positive integer, obtained from establishment_search results).",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Search UK food businesses by name, address, postcode, or local authority. Returns the official Food Hygiene Rating Scheme score (0-5), business type, last inspection date, and full address. Covers 500K+ premises across England, Wales, Northern Ireland (Scotland has separate FHIS — pass/improvement required).
| Argument | Type | Description |
|---|---|---|
| name | string | Business name fragment to search (e.g. 'Tesco', 'Pret', 'Wagamama'). Partial match supported. |
| address | string | Address or postcode fragment (e.g. 'SW1A 1AA', 'Manchester', 'Oxford Street'). |
| latitude | number | WGS84 latitude for location-based search (use with longitude + max_distance_miles). |
| longitude | number | WGS84 longitude for location-based search. |
| page_size | integer | Results per page (1-50, default 20). |
| page_number | integer | Page number for pagination (1-200, default 1). |
| max_distance_miles | integer | Search radius from lat/lon in miles (0-100, default 5). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"name": {
"type": "string",
"description": "Business name fragment to search (e.g. 'Tesco', 'Pret', 'Wagamama'). Partial match supported."
},
"address": {
"type": "string",
"description": "Address or postcode fragment (e.g. 'SW1A 1AA', 'Manchester', 'Oxford Street')."
},
"latitude": {
"type": "number",
"description": "WGS84 latitude for location-based search (use with longitude + max_distance_miles)."
},
"longitude": {
"type": "number",
"description": "WGS84 longitude for location-based search."
},
"page_size": {
"type": "integer",
"default": 20,
"maximum": 50,
"minimum": 1,
"description": "Results per page (1-50, default 20)."
},
"page_number": {
"type": "integer",
"default": 1,
"maximum": 200,
"minimum": 1,
"description": "Page number for pagination (1-200, default 1)."
},
"max_distance_miles": {
"type": "integer",
"default": 5,
"maximum": 100,
"minimum": 0,
"description": "Search radius from lat/lon in miles (0-100, default 5)."
}
},
"additionalProperties": false
}Browse the UK Health Security Agency data dashboard drill-down catalog: themes -> sub_themes -> topics -> geography_types -> geographies -> metrics. Call with no params to list themes, then pass increasingly specific params (theme, sub_theme, topic, geography_type, geography) to drill down one level at a time until you reach a metric name usable with ukhsa-dashboard.metric_data. Data: api.ukhsa-dashboard.data.gov.uk, UK Open Government Licence v3.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| theme | string | Top-level theme slug (e.g. "infectious_disease", "immunisation", "medicines", "climate_and_environment"). Omit to list all themes. |
| topic | string | Disease/topic slug within the given sub_theme (e.g. "COVID-19", "Influenza"). Requires theme and sub_theme. Omit to list topics. |
| geography | string | Specific geography name within the given geography_type (e.g. "England", "London"). Requires theme, sub_theme, topic, and geography_type. Omit to list geographies. |
| sub_theme | string | Sub-theme slug within the given theme (e.g. "respiratory", "vaccine_preventable"). Requires theme. Omit (with theme set) to list sub-themes. |
| geography_type | string | Geography type within the given topic (e.g. "Nation", "UKHSA Region", "Upper Tier Local Authority"). Requires theme, sub_theme, and topic. Omit to list geography types. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"theme": {
"type": "string",
"description": "Top-level theme slug (e.g. \"infectious_disease\", \"immunisation\", \"medicines\", \"climate_and_environment\"). Omit to list all themes."
},
"topic": {
"type": "string",
"description": "Disease/topic slug within the given sub_theme (e.g. \"COVID-19\", \"Influenza\"). Requires theme and sub_theme. Omit to list topics."
},
"geography": {
"type": "string",
"description": "Specific geography name within the given geography_type (e.g. \"England\", \"London\"). Requires theme, sub_theme, topic, and geography_type. Omit to list geographies."
},
"sub_theme": {
"type": "string",
"description": "Sub-theme slug within the given theme (e.g. \"respiratory\", \"vaccine_preventable\"). Requires theme. Omit (with theme set) to list sub-themes."
},
"geography_type": {
"type": "string",
"description": "Geography type within the given topic (e.g. \"Nation\", \"UKHSA Region\", \"Upper Tier Local Authority\"). Requires theme, sub_theme, and topic. Omit to list geography types."
}
},
"additionalProperties": false
}Get paginated timeseries data points for one UK health surveillance metric (cases, deaths, healthcare admissions, testing, vaccinations, etc.) at a specific geography, identified by the full theme/sub_theme/topic/geography_type/geography/metric path from ukhsa-dashboard.browse. Optional filters: year, epiweek, exact date, age band, sex, stratum, and reporting-delay-period flag. Data: api.ukhsa-dashboard.data.gov.uk, UK Open Government Licence v3.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| age | string | Filter by age band as published for this metric (e.g. "all", "15-44") |
| sex | string | Filter by sex as published for this metric (e.g. "all", "f", "m") |
| date | string | Filter to a single exact date, YYYY-MM-DD (e.g. "2023-06-15") |
| page | integer | Page number of results (default 1) |
| year | integer | Filter to a single calendar year (e.g. 2023) |
| theme* | string | Top-level theme slug (e.g. "infectious_disease") |
| topic* | string | Disease/topic slug (e.g. "COVID-19") |
| metric* | string | Metric name from ukhsa-dashboard.browse at the metrics level (e.g. "COVID-19_cases_casesByDay") |
| epiweek | integer | Filter to a single epidemiological week number (1-53) |
| stratum | string | Filter by stratum/breakdown as published for this metric (e.g. "default") |
| geography* | string | Geography name (e.g. "England") |
| page_size | integer | Number of data points per page (1-500, default 100) |
| sub_theme* | string | Sub-theme slug (e.g. "respiratory") |
| geography_type* | string | Geography type (e.g. "Nation", "UKHSA Region") |
| in_reporting_delay_period | boolean | Filter to rows still within the provisional reporting-delay window |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"theme",
"sub_theme",
"topic",
"geography_type",
"geography",
"metric"
],
"properties": {
"age": {
"type": "string",
"description": "Filter by age band as published for this metric (e.g. \"all\", \"15-44\")"
},
"sex": {
"type": "string",
"description": "Filter by sex as published for this metric (e.g. \"all\", \"f\", \"m\")"
},
"date": {
"type": "string",
"description": "Filter to a single exact date, YYYY-MM-DD (e.g. \"2023-06-15\")"
},
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number of results (default 1)"
},
"year": {
"type": "integer",
"maximum": 2100,
"minimum": 2000,
"description": "Filter to a single calendar year (e.g. 2023)"
},
"theme": {
"type": "string",
"minLength": 1,
"description": "Top-level theme slug (e.g. \"infectious_disease\")"
},
"topic": {
"type": "string",
"minLength": 1,
"description": "Disease/topic slug (e.g. \"COVID-19\")"
},
"metric": {
"type": "string",
"minLength": 1,
"description": "Metric name from ukhsa-dashboard.browse at the metrics level (e.g. \"COVID-19_cases_casesByDay\")"
},
"epiweek": {
"type": "integer",
"maximum": 53,
"minimum": 1,
"description": "Filter to a single epidemiological week number (1-53)"
},
"stratum": {
"type": "string",
"description": "Filter by stratum/breakdown as published for this metric (e.g. \"default\")"
},
"geography": {
"type": "string",
"minLength": 1,
"description": "Geography name (e.g. \"England\")"
},
"page_size": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Number of data points per page (1-500, default 100)"
},
"sub_theme": {
"type": "string",
"minLength": 1,
"description": "Sub-theme slug (e.g. \"respiratory\")"
},
"geography_type": {
"type": "string",
"minLength": 1,
"description": "Geography type (e.g. \"Nation\", \"UKHSA Region\")"
},
"in_reporting_delay_period": {
"type": "boolean",
"description": "Filter to rows still within the provisional reporting-delay window"
}
},
"additionalProperties": false
}Get detailed metadata and the full table of contents (section list) for a specific piece of UK legislation identified by its type, year, and chapter/number. Returns the title, document type, legislative status (enacted/revised), enactment date, last modification date, territorial extent (E+W+S+N.I. or narrower), paragraph counts, and the complete structured list of parts, chapters, and sections with their numbers, titles, and URLs. Use ukleg.legislation.search to find the correct type, year, and number for an act. Example: type=ukpga, year=2008, number=27 retrieves the Climate Change Act 2008. Example: type=ukpga, year=2018, number=12 retrieves the Data Protection Act 2018. Data source: legislation.gov.uk — The National Archives, Open Government Licence v3.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| type* | string | Legislation type code. Common values: ukpga (UK Public General Acts), uksi (UK Statutory Instruments), asp (Scottish Parliament Acts), asc (Senedd Cymru/Wales Acts), nia (Northern Ireland Acts). Example: ukpga for the Climate Change Act 2008. |
| year* | integer | Year the legislation was enacted (e.g. 2008 for Climate Change Act 2008). |
| number* | integer | Chapter or instrument number of the legislation within the year (e.g. 27 for Climate Change Act 2008 c.27). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"type",
"year",
"number"
],
"properties": {
"type": {
"enum": [
"ukpga",
"uksi",
"asp",
"asc",
"anaw",
"nia",
"ukdsi",
"ukcm",
"nisi",
"ukla",
"wsi",
"ssi",
"nisr"
],
"type": "string",
"description": "Legislation type code. Common values: ukpga (UK Public General Acts), uksi (UK Statutory Instruments), asp (Scottish Parliament Acts), asc (Senedd Cymru/Wales Acts), nia (Northern Ireland Acts). Example: ukpga for the Climate Change Act 2008."
},
"year": {
"type": "integer",
"maximum": 2030,
"minimum": 1267,
"description": "Year the legislation was enacted (e.g. 2008 for Climate Change Act 2008)."
},
"number": {
"type": "integer",
"minimum": 1,
"description": "Chapter or instrument number of the legislation within the year (e.g. 27 for Climate Change Act 2008 c.27)."
}
},
"additionalProperties": false
}Get the most recently published or updated pieces of UK legislation. Returns recently enacted Acts, Statutory Instruments, and other legislation with title, type, year, chapter number, publication date, and brief description. Filter by legislation category: use primary for Acts of Parliament, secondary for Statutory Instruments, or specific type codes (ukpga, uksi, asp, asc, nia). Useful for tracking new laws, regulatory changes, and parliamentary activity. Data source: legislation.gov.uk — The National Archives, Open Government Licence v3.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| type | string | Filter by legislation category. Use primary for all primary legislation (Acts), secondary for all Statutory Instruments, or a specific code like ukpga, uksi, asp. Omit or use any for all types. |
| limit | integer | Number of recent legislation items to return (1–20, default 10). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"type": {
"enum": [
"ukpga",
"uksi",
"asp",
"asc",
"anaw",
"nia",
"ukdsi",
"ukcm",
"nisi",
"ukla",
"wsi",
"ssi",
"nisr",
"primary",
"secondary",
"any"
],
"type": "string",
"description": "Filter by legislation category. Use primary for all primary legislation (Acts), secondary for all Statutory Instruments, or a specific code like ukpga, uksi, asp. Omit or use any for all types."
},
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of recent legislation items to return (1–20, default 10)."
}
},
"additionalProperties": false
}Search the UK statute book (legislation.gov.uk) for Acts of Parliament, Statutory Instruments, and other UK legislation by title keywords, type, and year. Returns matching legislation items with title, type (e.g. UK Public General Act), year, chapter number, description/long title, enactment date, subject categories, and direct URL to the full text. Supports all UK jurisdictions: England, Wales, Scotland (Scottish Parliament Acts), and Northern Ireland. Common types: ukpga (UK Public General Acts — major Acts of Parliament), uksi (UK Statutory Instruments), asp (Acts of the Scottish Parliament), asc (Acts of Senedd Cymru), nia (Northern Ireland Assembly Acts). Results are paginated (20 per page). Use page parameter to navigate. Data source: legislation.gov.uk — The National Archives, Open Government Licence v3.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default 1, 20 results per page). |
| type | string | Legislation type code. Common values: ukpga (UK Public General Acts), uksi (UK Statutory Instruments), asp (Scottish Parliament Acts), asc (Acts of Senedd Cymru/Wales), nia (Northern Ireland Assembly Acts). Omit to search all types. |
| year | integer | Year the legislation was enacted (e.g. 2008, 2018). Supports years from 1267 to present. |
| title | string | Search term for the legislation title (e.g. "climate change", "data protection", "companies"). At least one of title, year, or type should be provided. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1, 20 results per page)."
},
"type": {
"enum": [
"ukpga",
"uksi",
"asp",
"asc",
"anaw",
"nia",
"ukdsi",
"ukcm",
"nisi",
"ukla",
"wsi",
"ssi",
"nisr"
],
"type": "string",
"description": "Legislation type code. Common values: ukpga (UK Public General Acts), uksi (UK Statutory Instruments), asp (Scottish Parliament Acts), asc (Acts of Senedd Cymru/Wales), nia (Northern Ireland Assembly Acts). Omit to search all types."
},
"year": {
"type": "integer",
"maximum": 2030,
"minimum": 1267,
"description": "Year the legislation was enacted (e.g. 2008, 2018). Supports years from 1267 to present."
},
"title": {
"type": "string",
"description": "Search term for the legislation title (e.g. \"climate change\", \"data protection\", \"companies\"). At least one of title, year, or type should be provided."
}
},
"additionalProperties": false
}Get the complete list of sections, parts, and schedules (table of contents) for a specific piece of UK legislation. Returns each section with its type (section, schedule, part), number, title, and URL to the full section text. Use this to navigate the structure of an Act before retrieving specific provisions. Requires the legislation type, year, and chapter number (use ukleg.legislation.search to find these). Example: type=ukpga, year=2023, number=55 returns all sections of the Online Safety Act 2023. Example: type=ukpga, year=1998, number=42 returns sections of the Human Rights Act 1998. Data source: legislation.gov.uk — The National Archives, Open Government Licence v3.0, no auth required.
| Argument | Type | Description |
|---|---|---|
| type* | string | Legislation type code. Common values: ukpga (UK Public General Acts), uksi (UK Statutory Instruments), asp (Scottish Parliament Acts), asc (Senedd Cymru/Wales Acts), nia (Northern Ireland Acts). |
| year* | integer | Year the legislation was enacted (e.g. 2023 for legislation passed in 2023). |
| number* | integer | Chapter or instrument number within the year (e.g. 55 for the Online Safety Act 2023 c.55). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"type",
"year",
"number"
],
"properties": {
"type": {
"enum": [
"ukpga",
"uksi",
"asp",
"asc",
"anaw",
"nia",
"ukdsi",
"ukcm",
"nisi",
"ukla",
"wsi",
"ssi",
"nisr"
],
"type": "string",
"description": "Legislation type code. Common values: ukpga (UK Public General Acts), uksi (UK Statutory Instruments), asp (Scottish Parliament Acts), asc (Senedd Cymru/Wales Acts), nia (Northern Ireland Acts)."
},
"year": {
"type": "integer",
"maximum": 2030,
"minimum": 1267,
"description": "Year the legislation was enacted (e.g. 2023 for legislation passed in 2023)."
},
"number": {
"type": "integer",
"minimum": 1,
"description": "Chapter or instrument number within the year (e.g. 55 for the Online Safety Act 2023 c.55)."
}
},
"additionalProperties": false
}List the 462 country and world-region codes recognized by the UNESCO Institute for Statistics Data API, optionally filtered by name or level (NATIONAL/REGIONAL). Use this to find a valid geo_unit code for unesco-data.get_data. Example: query='Kenya'. Data: api.uis.unesco.org, no auth required, CC BY-SA 4.0.
| Argument | Type | Description |
|---|---|---|
| type | string | Filter to one geo unit level: NATIONAL (countries) or REGIONAL (world regions). |
| query | string | Case-insensitive substring to match against country/region name, e.g. 'Kenya' or 'Africa'. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"type": {
"enum": [
"NATIONAL",
"REGIONAL"
],
"type": "string",
"description": "Filter to one geo unit level: NATIONAL (countries) or REGIONAL (world regions)."
},
"query": {
"type": "string",
"description": "Case-insensitive substring to match against country/region name, e.g. 'Kenya' or 'Africa'."
}
},
"additionalProperties": false
}Search the UNESCO Institute for Statistics indicator catalog (~5,063 codes across education, science & technology, culture, and demographic/socioeconomic themes) by name, code, or theme. Call this BEFORE unesco-data.get_data to find a valid indicator code. Example: query='literacy' or theme='EDUCATION'. Data: api.uis.unesco.org, no auth required, CC BY-SA 4.0.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max number of matching indicators to return (default 50, max 200). The UIS catalog has ~5,063 indicators total — narrow with query/theme before raising this. |
| query | string | Case-insensitive substring to match against indicator name or code, e.g. 'literacy' or 'LR.AG15T24'. Omit to browse by theme alone. |
| theme | string | Filter to one UIS theme: EDUCATION, SCIENCE_TECHNOLOGY_INNOVATION, CULTURE, or DEMOGRAPHIC_SOCIOECONOMIC. Omit to search across all themes. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"description": "Max number of matching indicators to return (default 50, max 200). The UIS catalog has ~5,063 indicators total — narrow with query/theme before raising this.",
"exclusiveMinimum": 0
},
"query": {
"type": "string",
"description": "Case-insensitive substring to match against indicator name or code, e.g. 'literacy' or 'LR.AG15T24'. Omit to browse by theme alone."
},
"theme": {
"enum": [
"EDUCATION",
"SCIENCE_TECHNOLOGY_INNOVATION",
"CULTURE",
"DEMOGRAPHIC_SOCIOECONOMIC"
],
"type": "string",
"description": "Filter to one UIS theme: EDUCATION, SCIENCE_TECHNOLOGY_INNOVATION, CULTURE, or DEMOGRAPHIC_SOCIOECONOMIC. Omit to search across all themes."
}
},
"additionalProperties": false
}Fetch time-series values for 1-2 UNESCO Institute for Statistics indicator codes, optionally filtered by geo unit and year range — official education, science, culture, and demographic statistics reported by UN member states. Call unesco-data.indicator_search first to confirm a valid indicator code, and unesco-data.geounit_list to confirm geo_unit codes. Example: youth literacy rate (indicator='LR.AG15T24'), India (geo_unit='IND'), 2015-2022 (start=2015, end=2022). Data: api.uis.unesco.org, no auth required, CC BY-SA 4.0 (attribution + share-alike required).
| Argument | Type | Description |
|---|---|---|
| end | integer | End year (inclusive), e.g. 2022. Omit for the full available history. |
| start | integer | Start year (inclusive), e.g. 2015. Omit for the full available history. |
| geo_unit | any | One or more 3-letter geo unit codes (comma-separated string or array), e.g. 'IND' or 'KEN,NGA'. Omit to return data for every country/region the indicator covers (can be large — prefer narrowing with start/end too). Discover codes via unesco-data.geounit_list. |
| footnotes | boolean | Include per-record footnotes (data source caveats) in the response. |
| indicator* | any | One or two UIS indicator codes (comma-separated string or array), e.g. 'LR.AG15T24' (youth literacy rate). Discover codes via unesco-data.indicator_search. |
| geo_unit_type | string | Filter to one geo unit level: NATIONAL (countries) or REGIONAL (world regions). |
| indicator_metadata | boolean | Include full indicator metadata (definition, calculation method, data source) alongside the records. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"indicator"
],
"properties": {
"end": {
"type": "integer",
"description": "End year (inclusive), e.g. 2022. Omit for the full available history."
},
"start": {
"type": "integer",
"description": "Start year (inclusive), e.g. 2015. Omit for the full available history."
},
"geo_unit": {
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
],
"description": "One or more 3-letter geo unit codes (comma-separated string or array), e.g. 'IND' or 'KEN,NGA'. Omit to return data for every country/region the indicator covers (can be large — prefer narrowing with start/end too). Discover codes via unesco-data.geounit_list."
},
"footnotes": {
"type": "boolean",
"description": "Include per-record footnotes (data source caveats) in the response."
},
"indicator": {
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
],
"description": "One or two UIS indicator codes (comma-separated string or array), e.g. 'LR.AG15T24' (youth literacy rate). Discover codes via unesco-data.indicator_search."
},
"geo_unit_type": {
"enum": [
"NATIONAL",
"REGIONAL"
],
"type": "string",
"description": "Filter to one geo unit level: NATIONAL (countries) or REGIONAL (world regions)."
},
"indicator_metadata": {
"type": "boolean",
"description": "Include full indicator metadata (definition, calculation method, data source) alongside the records."
}
},
"additionalProperties": false
}Retrieve municipal budget and expenditure data from the UN-Habitat Global Municipal Database. Covers 1,207 cities worldwide with total budget (USD), budget per capita, capital expenditure, own-source revenue, and sector-wise expenditure percentages (education, health, transport, water, energy, sanitation, solid waste, public housing, streets, buildings). Filter by country, city, or UN region. Income group (low/lower-middle/upper-middle/high) included. Useful for comparative municipal finance analysis and urban governance research.
| Argument | Type | Description |
|---|---|---|
| city | string | Filter by city name (partial match, e.g. "Nairobi", "Lagos", "Mumbai"). Case-insensitive. |
| limit | integer | Maximum number of cities to return (1–100, default 50). |
| region | string | Filter by UN-Habitat region (partial match). Regions include "Sub-Saharan Africa", "Northern America and Europe", "Eastern and South-Eastern Asia", "Central and Southern Asia", "Latin America and the Caribbean", "Northern Africa and Western Asia", "Oceania". |
| country | string | Filter by country name (partial match, e.g. "Kenya", "United States", "Brazil"). Case-insensitive. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"city": {
"type": "string",
"description": "Filter by city name (partial match, e.g. \"Nairobi\", \"Lagos\", \"Mumbai\"). Case-insensitive."
},
"limit": {
"type": "integer",
"default": 50,
"maximum": 100,
"minimum": 1,
"description": "Maximum number of cities to return (1–100, default 50)."
},
"region": {
"type": "string",
"description": "Filter by UN-Habitat region (partial match). Regions include \"Sub-Saharan Africa\", \"Northern America and Europe\", \"Eastern and South-Eastern Asia\", \"Central and Southern Asia\", \"Latin America and the Caribbean\", \"Northern Africa and Western Asia\", \"Oceania\"."
},
"country": {
"type": "string",
"description": "Filter by country name (partial match, e.g. \"Kenya\", \"United States\", \"Brazil\"). Case-insensitive."
}
},
"additionalProperties": false
}Retrieve city-level land consumption rate (LCR) versus population growth rate (PGR) data for SDG 11.3.1. Covers 581 cities with measurements for the 1990–2000 and 2000–2015 periods. A LCR/PGR ratio > 1 indicates urban sprawl (land expanding faster than population). Includes built-up area per capita (m²/person) at three time points. Filter by country, city, or UN region. Useful for sustainable urbanization and land-use planning analysis.
| Argument | Type | Description |
|---|---|---|
| city | string | Filter by city name (partial match, e.g. "Nairobi", "Lagos", "Mumbai"). Case-insensitive. |
| limit | integer | Maximum number of cities to return (1–100, default 50). |
| region | string | Filter by UN-Habitat region (partial match). Regions include "Sub-Saharan Africa", "Northern America and Europe", "Eastern and South-Eastern Asia", "Central and Southern Asia", "Latin America and the Caribbean", "Northern Africa and Western Asia", "Oceania". |
| country | string | Filter by country name (partial match, e.g. "Kenya", "United States", "Brazil"). Case-insensitive. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"city": {
"type": "string",
"description": "Filter by city name (partial match, e.g. \"Nairobi\", \"Lagos\", \"Mumbai\"). Case-insensitive."
},
"limit": {
"type": "integer",
"default": 50,
"maximum": 100,
"minimum": 1,
"description": "Maximum number of cities to return (1–100, default 50)."
},
"region": {
"type": "string",
"description": "Filter by UN-Habitat region (partial match). Regions include \"Sub-Saharan Africa\", \"Northern America and Europe\", \"Eastern and South-Eastern Asia\", \"Central and Southern Asia\", \"Latin America and the Caribbean\", \"Northern Africa and Western Asia\", \"Oceania\"."
},
"country": {
"type": "string",
"description": "Filter by country name (partial match, e.g. \"Kenya\", \"United States\", \"Brazil\"). Case-insensitive."
}
},
"additionalProperties": false
}Retrieve the share of urban built-up area allocated to open public spaces (parks, plazas) and streets (SDG indicator 11.7.1). Covers 621 cities as of the 2020 measurement year. Returns percentage of open public space, street space, and combined open-and-street share, plus the population count with access to open public space. Filter by country, city, or UN region. Useful for green space equity, climate resilience, and liveability analysis.
| Argument | Type | Description |
|---|---|---|
| city | string | Filter by city name (partial match, e.g. "Nairobi", "Lagos", "Mumbai"). Case-insensitive. |
| limit | integer | Maximum number of cities to return (1–100, default 50). |
| region | string | Filter by UN-Habitat region (partial match). Regions include "Sub-Saharan Africa", "Northern America and Europe", "Eastern and South-Eastern Asia", "Central and Southern Asia", "Latin America and the Caribbean", "Northern Africa and Western Asia", "Oceania". |
| country | string | Filter by country name (partial match, e.g. "Kenya", "United States", "Brazil"). Case-insensitive. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"city": {
"type": "string",
"description": "Filter by city name (partial match, e.g. \"Nairobi\", \"Lagos\", \"Mumbai\"). Case-insensitive."
},
"limit": {
"type": "integer",
"default": 50,
"maximum": 100,
"minimum": 1,
"description": "Maximum number of cities to return (1–100, default 50)."
},
"region": {
"type": "string",
"description": "Filter by UN-Habitat region (partial match). Regions include \"Sub-Saharan Africa\", \"Northern America and Europe\", \"Eastern and South-Eastern Asia\", \"Central and Southern Asia\", \"Latin America and the Caribbean\", \"Northern Africa and Western Asia\", \"Oceania\"."
},
"country": {
"type": "string",
"description": "Filter by country name (partial match, e.g. \"Kenya\", \"United States\", \"Brazil\"). Case-insensitive."
}
},
"additionalProperties": false
}Retrieve city-level data on the proportion of urban population with convenient access to public transport (SDG indicator 11.2.1). Covers 1,555 cities across all world regions from the UN-Habitat Urban Indicators Database. Filter by country, city name, or UN region. Returns access percentage and estimate source per city. Useful for urban mobility analysis, SDG 11 reporting, and comparing public transit equity across cities.
| Argument | Type | Description |
|---|---|---|
| city | string | Filter by city name (partial match, e.g. "Nairobi", "Lagos", "Mumbai"). Case-insensitive. |
| limit | integer | Maximum number of cities to return (1–100, default 50). |
| region | string | Filter by UN-Habitat region (partial match). Regions include "Sub-Saharan Africa", "Northern America and Europe", "Eastern and South-Eastern Asia", "Central and Southern Asia", "Latin America and the Caribbean", "Northern Africa and Western Asia", "Oceania". |
| country | string | Filter by country name (partial match, e.g. "Kenya", "United States", "Brazil"). Case-insensitive. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"city": {
"type": "string",
"description": "Filter by city name (partial match, e.g. \"Nairobi\", \"Lagos\", \"Mumbai\"). Case-insensitive."
},
"limit": {
"type": "integer",
"default": 50,
"maximum": 100,
"minimum": 1,
"description": "Maximum number of cities to return (1–100, default 50)."
},
"region": {
"type": "string",
"description": "Filter by UN-Habitat region (partial match). Regions include \"Sub-Saharan Africa\", \"Northern America and Europe\", \"Eastern and South-Eastern Asia\", \"Central and Southern Asia\", \"Latin America and the Caribbean\", \"Northern Africa and Western Asia\", \"Oceania\"."
},
"country": {
"type": "string",
"description": "Filter by country name (partial match, e.g. \"Kenya\", \"United States\", \"Brazil\"). Case-insensitive."
}
},
"additionalProperties": false
}Get UNHCR asylum application counts — number of new asylum claims filed by year and country. Data includes procedure type (G=Government, U=UNHCR), application type (N=New, A=Appeal), decision level (FI=First Instance, AR=Appeal/Review), and applicant category (P=Person). Filter by year, country of origin ISO3 (coo), or country of asylum ISO3 (coa). Covers 1951–present with totals when available. Paginated; default 10 items. UNHCR Data License — open humanitarian data, no upstream cost.
| Argument | Type | Description |
|---|---|---|
| coa | string | ISO 3-letter country code for country of asylum, e.g. DEU (Germany), TUR (Turkey), COL (Colombia). Omit to include all asylum countries. |
| coo | string | ISO 3-letter country code for country of origin, e.g. SYR (Syria), AFG (Afghanistan), UKR (Ukraine). Omit to include all origin countries. |
| year | integer | Reference year for the statistics (1951–present). Omit to return all years (paginated). |
| limit | integer | Number of records to return per page (1–100, default 10). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"coa": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO 3-letter country code for country of asylum, e.g. DEU (Germany), TUR (Turkey), COL (Colombia). Omit to include all asylum countries."
},
"coo": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO 3-letter country code for country of origin, e.g. SYR (Syria), AFG (Afghanistan), UKR (Ukraine). Omit to include all origin countries."
},
"year": {
"type": "integer",
"maximum": 2030,
"minimum": 1951,
"description": "Reference year for the statistics (1951–present). Omit to return all years (paginated)."
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of records to return per page (1–100, default 10)."
}
},
"additionalProperties": false
}Get UNHCR asylum decision outcomes — recognized refugees, other positive decisions, rejections, and closed/withdrawn cases by year and country. Includes recognition rate context: recognized + other_positive = total granted protection. Filter by year, country of origin ISO3 (coo), or country of asylum ISO3 (coa). Covers 1951–present with aggregate totals. Paginated; default 10 items. UNHCR Data License — open humanitarian data, no upstream cost.
| Argument | Type | Description |
|---|---|---|
| coa | string | ISO 3-letter country code for country of asylum, e.g. DEU (Germany), TUR (Turkey), COL (Colombia). Omit to include all asylum countries. |
| coo | string | ISO 3-letter country code for country of origin, e.g. SYR (Syria), AFG (Afghanistan), UKR (Ukraine). Omit to include all origin countries. |
| year | integer | Reference year for the statistics (1951–present). Omit to return all years (paginated). |
| limit | integer | Number of records to return per page (1–100, default 10). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"coa": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO 3-letter country code for country of asylum, e.g. DEU (Germany), TUR (Turkey), COL (Colombia). Omit to include all asylum countries."
},
"coo": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO 3-letter country code for country of origin, e.g. SYR (Syria), AFG (Afghanistan), UKR (Ukraine). Omit to include all origin countries."
},
"year": {
"type": "integer",
"maximum": 2030,
"minimum": 1951,
"description": "Reference year for the statistics (1951–present). Omit to return all years (paginated)."
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of records to return per page (1–100, default 10)."
}
},
"additionalProperties": false
}Get UNHCR durable solutions data — voluntary repatriation (returned refugees), resettlement, and naturalization/citizenship grants for refugees and IDPs (1951–present). Durable solutions represent the three pathways out of displacement recognized by international law. Filter by year, country of origin ISO3 (coo), or country of asylum ISO3 (coa). Includes aggregate totals when available. Paginated; default 10 items. UNHCR Data License — open humanitarian data, no upstream cost.
| Argument | Type | Description |
|---|---|---|
| coa | string | ISO 3-letter country code for country of asylum, e.g. DEU (Germany), TUR (Turkey), COL (Colombia). Omit to include all asylum countries. |
| coo | string | ISO 3-letter country code for country of origin, e.g. SYR (Syria), AFG (Afghanistan), UKR (Ukraine). Omit to include all origin countries. |
| year | integer | Reference year for the statistics (1951–present). Omit to return all years (paginated). |
| limit | integer | Number of records to return per page (1–100, default 10). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"coa": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO 3-letter country code for country of asylum, e.g. DEU (Germany), TUR (Turkey), COL (Colombia). Omit to include all asylum countries."
},
"coo": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO 3-letter country code for country of origin, e.g. SYR (Syria), AFG (Afghanistan), UKR (Ukraine). Omit to include all origin countries."
},
"year": {
"type": "integer",
"maximum": 2030,
"minimum": 1951,
"description": "Reference year for the statistics (1951–present). Omit to return all years (paginated)."
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of records to return per page (1–100, default 10)."
}
},
"additionalProperties": false
}Get UNHCR global or per-country refugee and displaced-person population statistics (1951–present). Returns refugee counts, asylum seekers, internally displaced persons (IDPs), stateless persons, other people of concern (OOC), other in need of protection (OIP), and host community (HST) figures. Filter by year (e.g. 2023), country of origin ISO3 code (e.g. SYR for Syria, AFG for Afghanistan, UKR for Ukraine), or country of asylum ISO3 (e.g. DEU, TUR, COL). Omit all filters for global aggregates across all years. Paginated; default 10 items. UNHCR Data License — open humanitarian data, no upstream cost.
| Argument | Type | Description |
|---|---|---|
| coa | string | ISO 3-letter country code for country of asylum, e.g. DEU (Germany), TUR (Turkey), COL (Colombia). Omit to include all asylum countries. |
| coo | string | ISO 3-letter country code for country of origin, e.g. SYR (Syria), AFG (Afghanistan), UKR (Ukraine). Omit to include all origin countries. |
| year | integer | Reference year for the statistics (1951–present). Omit to return all years (paginated). |
| limit | integer | Number of records to return per page (1–100, default 10). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"coa": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO 3-letter country code for country of asylum, e.g. DEU (Germany), TUR (Turkey), COL (Colombia). Omit to include all asylum countries."
},
"coo": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO 3-letter country code for country of origin, e.g. SYR (Syria), AFG (Afghanistan), UKR (Ukraine). Omit to include all origin countries."
},
"year": {
"type": "integer",
"maximum": 2030,
"minimum": 1951,
"description": "Reference year for the statistics (1951–present). Omit to return all years (paginated)."
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of records to return per page (1–100, default 10)."
}
},
"additionalProperties": false
}Look up the open-access status of a scholarly work by DOI and get a direct link to a free, legal full-text copy if one exists — aggregated from 50K+ publisher and repository sources (institutional repositories, PubMed Central, arXiv, publisher OA pages). Returns oa_status (gold/green/hybrid/bronze/closed), the best OA location (PDF URL, license, host type, version), and all known OA locations. Complements education.doi_lookup and crossref.works_search (which return bibliographic metadata, not full-text availability). Data: api.unpaywall.org, no auth required (an internal contact email is sent per API terms, not a user credential).
| Argument | Type | Description |
|---|---|---|
| doi* | string | DOI of the scholarly work to look up, with or without the "https://doi.org/" prefix (e.g. 10.1038/nature12373) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"doi"
],
"properties": {
"doi": {
"type": "string",
"minLength": 1,
"description": "DOI of the scholarly work to look up, with or without the \"https://doi.org/\" prefix (e.g. 10.1038/nature12373)"
}
},
"additionalProperties": false
}Query UN SDG time-series indicator data by series code. Returns country-level or regional annual measurements for indicators like poverty rates, maternal mortality, CO2 emissions, literacy rates, and more. Filter by UN M49 geo area code (e.g. "356" for India, "840" for USA) and/or year range. Each record includes the geo area, year, value, source, and any disaggregation dimensions (age, sex, urbanization). Get series codes from unsdg.indicators.list; get geo area codes from unsdg.geo.countries.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of records to return per page (1-200, default 50). Large series may have thousands of records across countries and years. |
| end_year | integer | Filter data records up to and including this year (e.g. 2023). Combined with start_year to define a time range. |
| start_year | integer | Filter data records starting from this year (e.g. 2010). Combined with end_year to define a time range. |
| series_code* | string | UN SDG series code to query (e.g. "SI_POV_DAY1" for poverty rate, "SH_STA_MORT" for maternal mortality, "EN_ATM_CO2" for CO2 emissions). Obtain series codes from unsdg.indicators.list. |
| geo_area_code | string | UN M49 numeric geo area code to filter by country or region (e.g. "356" for India, "840" for USA, "076" for Brazil). Use unsdg.geo.countries to look up codes. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"series_code"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Maximum number of records to return per page (1-200, default 50). Large series may have thousands of records across countries and years."
},
"end_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1990,
"description": "Filter data records up to and including this year (e.g. 2023). Combined with start_year to define a time range."
},
"start_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1990,
"description": "Filter data records starting from this year (e.g. 2010). Combined with end_year to define a time range."
},
"series_code": {
"type": "string",
"description": "UN SDG series code to query (e.g. \"SI_POV_DAY1\" for poverty rate, \"SH_STA_MORT\" for maternal mortality, \"EN_ATM_CO2\" for CO2 emissions). Obtain series codes from unsdg.indicators.list."
},
"geo_area_code": {
"type": "string",
"description": "UN M49 numeric geo area code to filter by country or region (e.g. \"356\" for India, \"840\" for USA, \"076\" for Brazil). Use unsdg.geo.countries to look up codes."
}
},
"additionalProperties": false
}List all 460 countries, territories, and world regions available in the UN SDG database using UN M49 numeric codes. Includes individual countries (e.g. India = 356, USA = 840, Brazil = 76) as well as aggregate regions (e.g. Africa = 2, Asia = 142, Latin America = 419, Least Developed Countries = 199). Use these geo area codes with unsdg.data.query to filter data by location.
| Argument | Type | Description |
|---|---|---|
| filter | string | Optional substring to filter country/region names (case-insensitive, e.g. "Africa", "Asia", "Latin"). If omitted, all 460 geo areas are returned. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"filter": {
"type": "string",
"description": "Optional substring to filter country/region names (case-insensitive, e.g. \"Africa\", \"Asia\", \"Latin\"). If omitted, all 460 geo areas are returned."
}
},
"additionalProperties": false
}List all 17 UN Sustainable Development Goals (SDGs) with their official titles and full descriptions. Covers the complete 2030 Agenda: No Poverty, Zero Hunger, Good Health, Quality Education, Gender Equality, Clean Water, Clean Energy, Decent Work, Industry & Innovation, Reduced Inequalities, Sustainable Cities, Responsible Consumption, Climate Action, Life Below Water, Life on Land, Peace & Justice, and Partnerships. Use goal codes (1–17) as inputs to unsdg.targets.list and unsdg.indicators.list.
| Argument | Type | Description |
|---|---|---|
| locale | string | Response locale code (e.g. "en" for English, "fr" for French). Defaults to English. Currently only English is supported by the UN SDG API. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"locale": {
"type": "string",
"description": "Response locale code (e.g. \"en\" for English, \"fr\" for French). Defaults to English. Currently only English is supported by the UN SDG API."
}
},
"additionalProperties": false
}List UN SDG monitoring indicators with their series codes, tier classifications (Tier I = established methodology, Tier II = methodology in development, Tier III = no agreed methodology), and associated data series codes. Optionally filter by goal (1–17) or target (e.g. "3.3"). Series codes (e.g. "SI_POV_DAY1", "SH_STA_MORT") are the inputs to unsdg.data.query for fetching actual country-level time series data.
| Argument | Type | Description |
|---|---|---|
| goal | string | Filter indicators by SDG goal number (e.g. "1", "3", "13"). If omitted, all 231 indicators across all 17 goals are returned. |
| target | string | Filter indicators by target code (e.g. "1.1", "3.3", "13.2"). Requires goal to be set for best results. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"goal": {
"type": "string",
"description": "Filter indicators by SDG goal number (e.g. \"1\", \"3\", \"13\"). If omitted, all 231 indicators across all 17 goals are returned."
},
"target": {
"type": "string",
"description": "Filter indicators by target code (e.g. \"1.1\", \"3.3\", \"13.2\"). Requires goal to be set for best results."
}
},
"additionalProperties": false
}List all 169 UN SDG targets with their official descriptions. Optionally filter by goal number (1–17) to get only the targets for that goal. Each target has a code like "1.1", "3.3", or "13.2" that identifies it uniquely. Use target codes with unsdg.indicators.list to drill into specific measurement indicators.
| Argument | Type | Description |
|---|---|---|
| goal | string | Filter by SDG goal number (e.g. "1" for No Poverty, "13" for Climate Action). If omitted, all 169 targets across all 17 goals are returned. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"goal": {
"type": "string",
"description": "Filter by SDG goal number (e.g. \"1\" for No Poverty, \"13\" for Climate Action). If omitted, all 169 targets across all 17 goals are returned."
}
},
"additionalProperties": false
}Look up a product by UPC, EAN, GTIN, or ISBN barcode — returns title, brand, images, dimensions, weight, category, price range, and marketplace offers (UPCitemdb)
| Argument | Type | Description |
|---|---|---|
| upc* | string | UPC, EAN, GTIN, or ISBN barcode number to look up (e.g. "012345678905", "9780140449136") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"upc"
],
"properties": {
"upc": {
"type": "string",
"description": "UPC, EAN, GTIN, or ISBN barcode number to look up (e.g. \"012345678905\", \"9780140449136\")"
}
},
"additionalProperties": false
}Search products by name, brand, or description — returns matching items with UPC codes, images, categories, and price ranges (UPCitemdb)
| Argument | Type | Description |
|---|---|---|
| type | string | Search type: "product" (default), "brand", or "category" |
| query* | string | Full-text search query for product name, brand, or description (e.g. "iPhone 16", "Sony headphones") |
| offset | integer | Pagination offset for results (default: 0) |
| match_mode | integer | Match mode: 0 = broad match (default), 1 = exact match |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"type": {
"enum": [
"product",
"brand",
"category"
],
"type": "string",
"description": "Search type: \"product\" (default), \"brand\", or \"category\""
},
"query": {
"type": "string",
"description": "Full-text search query for product name, brand, or description (e.g. \"iPhone 16\", \"Sony headphones\")"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset for results (default: 0)"
},
"match_mode": {
"type": "integer",
"maximum": 1,
"minimum": 0,
"description": "Match mode: 0 = broad match (default), 1 = exact match"
}
},
"additionalProperties": false
}Fetch reference code lists used by USAJOBS — agency codes, pay grades, hiring paths, occupational series, security clearance levels, work schedules. Use to discover valid values for search filters.
| Argument | Type | Description |
|---|---|---|
| code_list* | string | Reference code list name. Options: agencysubelements (all federal agencies and sub-orgs), occupationalseries (4-digit job-family codes, e.g. 2210=IT Specialist), hiringpaths (public/veteran/student/disability/internal), securityclearances (Public Trust to TS/SCI), applicantsuppliers (hiring authority types), geoloccodes (geographic location codes), postalcodes (ZIP code lookup), cyberworkroles (NICE Cybersecurity Workforce Framework roles). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"code_list"
],
"properties": {
"code_list": {
"enum": [
"agencysubelements",
"occupationalseries",
"hiringpaths",
"securityclearances",
"applicantsuppliers",
"geoloccodes",
"postalcodes",
"cyberworkroles"
],
"type": "string",
"description": "Reference code list name. Options: agencysubelements (all federal agencies and sub-orgs), occupationalseries (4-digit job-family codes, e.g. 2210=IT Specialist), hiringpaths (public/veteran/student/disability/internal), securityclearances (Public Trust to TS/SCI), applicantsuppliers (hiring authority types), geoloccodes (geographic location codes), postalcodes (ZIP code lookup), cyberworkroles (NICE Cybersecurity Workforce Framework roles)."
}
},
"additionalProperties": false
}Search US federal civil-service job postings — by keyword, location, pay grade (GS-1 to GS-15, SES), agency, position type. Returns position title, agency, location, salary range, grade, open period, application URL. USAJOBS is the ONLY source for US federal civil-service postings, distinct from BLS, ESCO, CareerJet, Adzuna, Reed, Jooble, Arbeitnow, Remotive, and TheirStack.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default 1). |
| keyword | string | Free-text search across job title + description. Examples: 'software engineer', 'cybersecurity analyst', 'data scientist'. |
| organization | string | Agency code or name fragment. Examples: 'DOD' (Defense), 'VA' (Veterans Affairs), 'HHS' (Health and Human Services). |
| location_name | string | Location filter. City + state, ZIP, or state name. Examples: 'Washington, DC', 'San Francisco, CA', '94102'. |
| pay_grade_low | string | Minimum federal pay grade. Format: 'GS01'-'GS15', 'SES', or 'EX-V'. Default: any. |
| pay_grade_high | string | Maximum federal pay grade (same format as pay_grade_low). |
| position_title | string | Strict position-title filter. Use keyword for fuzzy match. |
| results_per_page | integer | Results per page (1-500, default 25). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"default": 1,
"maximum": 100,
"minimum": 1,
"description": "Page number for pagination (default 1)."
},
"keyword": {
"type": "string",
"description": "Free-text search across job title + description. Examples: 'software engineer', 'cybersecurity analyst', 'data scientist'."
},
"organization": {
"type": "string",
"description": "Agency code or name fragment. Examples: 'DOD' (Defense), 'VA' (Veterans Affairs), 'HHS' (Health and Human Services)."
},
"location_name": {
"type": "string",
"description": "Location filter. City + state, ZIP, or state name. Examples: 'Washington, DC', 'San Francisco, CA', '94102'."
},
"pay_grade_low": {
"type": "string",
"description": "Minimum federal pay grade. Format: 'GS01'-'GS15', 'SES', or 'EX-V'. Default: any."
},
"pay_grade_high": {
"type": "string",
"description": "Maximum federal pay grade (same format as pay_grade_low)."
},
"position_title": {
"type": "string",
"description": "Strict position-title filter. Use keyword for fuzzy match."
},
"results_per_page": {
"type": "integer",
"default": 25,
"maximum": 500,
"minimum": 1,
"description": "Results per page (1-500, default 25)."
}
},
"additionalProperties": false
}Get full detail for a specific federal job posting by control number (PositionID) — full description, qualifications, duties, benefits summary, application instructions, security clearance level, telework eligibility.
| Argument | Type | Description |
|---|---|---|
| control_number* | string | PositionID from a search result (digits-only string, e.g. "856924100"). Found in the MatchedObjectId field. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"control_number"
],
"properties": {
"control_number": {
"type": "string",
"description": "PositionID from a search result (digits-only string, e.g. \"856924100\"). Found in the MatchedObjectId field."
}
},
"additionalProperties": false
}List USDA AMS market news reports that have been corrected or amended within the specified period. Corrections supersede previously published data and are important for accurate commodity price analysis. Covers livestock, dairy, poultry, produce, grain, and cotton markets. Use days=all to see the full correction history. Source: USDA AMS MyMarketNews — marsapi.ams.usda.gov, public domain, no auth.
| Argument | Type | Description |
|---|---|---|
| days | string | number | Number of past days to search for corrections (1–90), or "all" for complete history. Default "all". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"days": {
"type": [
"string",
"number"
],
"description": "Number of past days to search for corrections (1–90), or \"all\" for complete history. Default \"all\"."
}
},
"additionalProperties": false
}Get metadata for a specific USDA AMS market news report by its numeric ID or slug (e.g. "nw_ls910"). Returns publication date, commodity period, report title, file type, and whether it is a correction or final report. Obtain report IDs from usdamars.reports.list or usdamars.reports.search. Source: USDA AMS MyMarketNews — marsapi.ams.usda.gov, public domain, no auth.
| Argument | Type | Description |
|---|---|---|
| report_id* | string | number | USDA AMS MARS report ID or slug (e.g. 2826 or "nw_ls910"). Obtain IDs from usdamars.list_reports or usdamars.search_reports. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"report_id"
],
"properties": {
"report_id": {
"type": [
"string",
"number"
],
"description": "USDA AMS MARS report ID or slug (e.g. 2826 or \"nw_ls910\"). Obtain IDs from usdamars.list_reports or usdamars.search_reports."
}
},
"additionalProperties": false
}List recently published USDA Agricultural Marketing Service (AMS) market news reports covering livestock, dairy, poultry, fruits, vegetables, grain, cotton, and specialty crops. Returns report metadata: ID, title, publication date, commodity period covered, and file type. Reports are published by USDA-accredited reporters at markets across the US. Use usdamars.reports.search to filter by commodity. Source: USDA AMS MyMarketNews — marsapi.ams.usda.gov, public domain, no auth.
| Argument | Type | Description |
|---|---|---|
| days | integer | Number of past days to include (1–30). Default 7. Today's reports use 1; a full work week uses 5. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"days": {
"type": "integer",
"maximum": 30,
"minimum": 1,
"description": "Number of past days to include (1–30). Default 7. Today's reports use 1; a full work week uses 5."
}
},
"additionalProperties": false
}Search USDA AMS market news reports by commodity or topic keyword within the title. Filter by terms like "cattle", "dairy", "pork", "lamb", "poultry", "egg", "fruit", "vegetable", "grain", "cotton", "boxed beef", or region names. Returns up to 50 matching reports from the last N days sorted by publication date. Source: USDA AMS MyMarketNews — marsapi.ams.usda.gov, public domain, no auth.
| Argument | Type | Description |
|---|---|---|
| days | integer | Number of past days to search within (1–30). Default 7. |
| keyword | string | Commodity or topic keyword to filter report titles (case-insensitive). Examples: "cattle", "dairy", "fruit", "grain", "lamb", "poultry", "cotton", "boxed beef", "egg". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"days": {
"type": "integer",
"maximum": 30,
"minimum": 1,
"description": "Number of past days to search within (1–30). Default 7."
},
"keyword": {
"type": "string",
"description": "Commodity or topic keyword to filter report titles (case-insensitive). Examples: \"cattle\", \"dairy\", \"fruit\", \"grain\", \"lamb\", \"poultry\", \"cotton\", \"boxed beef\", \"egg\"."
}
},
"additionalProperties": false
}Get ground surface elevation for a single latitude/longitude coordinate from the USGS 3D Elevation Program (3DEP) — the authoritative US Government digital elevation model, with resolution as fine as 1 meter in many areas. Returns elevation in meters or feet, the source raster resolution, and optionally the DEM acquisition date. Continental US + territories only (no ocean or international coverage). Data: epqs.nationalmap.gov (USGS 3D Elevation Program), no auth required.
| Argument | Type | Description |
|---|---|---|
| units | string | Elevation output units, "Meters" or "Feet" (default "Meters"). |
| latitude* | number | Latitude in decimal degrees, WGS84 (e.g. 39.7147). Continental US + territories only. |
| longitude* | number | Longitude in decimal degrees, WGS84 (e.g. -105.0178). |
| include_date | boolean | Include the source DEM raster acquisition date in the response (default false). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"latitude",
"longitude"
],
"properties": {
"units": {
"enum": [
"Meters",
"Feet"
],
"type": "string",
"description": "Elevation output units, \"Meters\" or \"Feet\" (default \"Meters\")."
},
"latitude": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude in decimal degrees, WGS84 (e.g. 39.7147). Continental US + territories only."
},
"longitude": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude in decimal degrees, WGS84 (e.g. -105.0178)."
},
"include_date": {
"type": "boolean",
"description": "Include the source DEM raster acquisition date in the response (default false)."
}
},
"additionalProperties": false
}Search the USGS Mineral Resources Data System (MRDS) for mineral deposits, mines, and prospects within a geographic bounding box (min/max latitude and longitude). Returns deposit ID, site name, development status, commodity codes, and precise coordinates — useful for regional mineral exploration and mapping. Data: mrdata.usgs.gov (USGS Mineral Resources Program), no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of deposits to return (default 20, max 100). |
| max_lat* | number | Northern boundary latitude in decimal degrees. |
| max_lon* | number | Eastern boundary longitude in decimal degrees. |
| min_lat* | number | Southern boundary latitude in decimal degrees. |
| min_lon* | number | Western boundary longitude in decimal degrees. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"min_lat",
"min_lon",
"max_lat",
"max_lon"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of deposits to return (default 20, max 100)."
},
"max_lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Northern boundary latitude in decimal degrees."
},
"max_lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Eastern boundary longitude in decimal degrees."
},
"min_lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Southern boundary latitude in decimal degrees."
},
"min_lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Western boundary longitude in decimal degrees."
}
},
"additionalProperties": false
}List the geospatial dataset collections available from The National Map (e.g. US Topo, 3D Elevation Program, Hydrography, Imagery, National Structures), with category, refresh cycle, available formats, and info URL for each. Use dataset titles from this tool as the `datasets` filter for usgs-nationalmap.search_products. Data: tnmaccess.nationalmap.gov (USGS National Geospatial Program), no auth required.
| Argument | Type | Description |
|---|---|---|
| category | string | Filter by parent category, e.g. "Map" or "Data" (case-insensitive, exact match). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"category": {
"type": "string",
"description": "Filter by parent category, e.g. \"Map\" or \"Data\" (case-insensitive, exact match)."
}
},
"additionalProperties": false
}Search the USGS The National Map product catalog within a bounding box for downloadable geospatial data — topographic maps, elevation/lidar, hydrography, imagery, boundaries, and structures. Optional keyword, dataset name, and file format filters. Returns title, format, file size, publication date, and direct download URL for each match. Data: tnmaccess.nationalmap.gov (USGS National Geospatial Program), no auth required.
| Argument | Type | Description |
|---|---|---|
| max | integer | Maximum number of products to return, 1-50 (default 10). |
| formats | string | File format to filter by (e.g. "GeoTIFF", "GeoPackage", "Shapefile", "LAS,LAZ"). |
| keyword | string | Free-text keyword to filter products by title/description (e.g. "elevation", "lidar"). |
| max_lat* | number | Maximum (northern) latitude of the bounding box, in decimal degrees (e.g. 40.0). |
| max_lon* | number | Maximum (eastern) longitude of the bounding box, in decimal degrees (e.g. -104.0). |
| min_lat* | number | Minimum (southern) latitude of the bounding box, in decimal degrees (e.g. 39.0). |
| min_lon* | number | Minimum (western) longitude of the bounding box, in decimal degrees (e.g. -105.0). |
| datasets | string | Dataset name to filter by, from usgs-nationalmap.list_datasets (e.g. "US Topo", "National Elevation Dataset (NED) 1/3 arc-second"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"min_lat",
"min_lon",
"max_lat",
"max_lon"
],
"properties": {
"max": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of products to return, 1-50 (default 10)."
},
"formats": {
"type": "string",
"description": "File format to filter by (e.g. \"GeoTIFF\", \"GeoPackage\", \"Shapefile\", \"LAS,LAZ\")."
},
"keyword": {
"type": "string",
"description": "Free-text keyword to filter products by title/description (e.g. \"elevation\", \"lidar\")."
},
"max_lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Maximum (northern) latitude of the bounding box, in decimal degrees (e.g. 40.0)."
},
"max_lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Maximum (eastern) longitude of the bounding box, in decimal degrees (e.g. -104.0)."
},
"min_lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Minimum (southern) latitude of the bounding box, in decimal degrees (e.g. 39.0)."
},
"min_lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Minimum (western) longitude of the bounding box, in decimal degrees (e.g. -105.0)."
},
"datasets": {
"type": "string",
"description": "Dataset name to filter by, from usgs-nationalmap.list_datasets (e.g. \"US Topo\", \"National Elevation Dataset (NED) 1/3 arc-second\")."
}
},
"additionalProperties": false
}Browse V&A collection objects by museum category using a thesaurus ID. Major categories: THES48982 (Ceramics, 73K+), THES48917 (Paintings, 23K+), THES48968 (Designs, 25K+), THES48966 (Drawings, 18K+), THES48903 (Prints, 15K+), THES48885 (Textiles, 7K+), THES48910 (Photographs, 4K+), THES48920 (Metalwork, 4K+). Optionally refine with a keyword query and filter to on-display objects only.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default 1). |
| query | string | Optional keyword to refine results within the category. |
| page_size | integer | Number of results per page (1-30, default 10). |
| on_display | boolean | When true, return only objects on display in V&A galleries. |
| category_id* | string | V&A thesaurus category ID to browse. Common categories: "THES48982" (Ceramics, 73K+ objects), "THES48917" (Paintings, 23K+), "THES48968" (Designs, 25K+), "THES48966" (Drawings, 18K+), "THES48903" (Prints, 15K+), "THES48885" (Textiles, 7K+), "THES48910" (Photographs, 4K+), "THES48920" (Metalwork, 4K+). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"category_id"
],
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)."
},
"query": {
"type": "string",
"description": "Optional keyword to refine results within the category."
},
"page_size": {
"type": "integer",
"maximum": 30,
"minimum": 1,
"description": "Number of results per page (1-30, default 10)."
},
"on_display": {
"type": "boolean",
"description": "When true, return only objects on display in V&A galleries."
},
"category_id": {
"type": "string",
"description": "V&A thesaurus category ID to browse. Common categories: \"THES48982\" (Ceramics, 73K+ objects), \"THES48917\" (Paintings, 23K+), \"THES48968\" (Designs, 25K+), \"THES48966\" (Drawings, 18K+), \"THES48903\" (Prints, 15K+), \"THES48885\" (Textiles, 7K+), \"THES48910\" (Photographs, 4K+), \"THES48920\" (Metalwork, 4K+)."
}
},
"additionalProperties": false
}Search V&A collection objects created by a specific artist, designer, or maker. Returns objects with maker name, date, object type, place, thumbnail URL, and display status. Supports partial name matching. Examples: "Wedgwood" (1,300+ ceramics), "William Morris" (textiles/designs), "Constable" (paintings), "Beatrix Potter" (drawings).
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default 1). |
| maker* | string | Artist or maker name to search for (e.g. "Wedgwood", "William Morris", "Constable", "Beatrix Potter"). Partial matches are supported. |
| page_size | integer | Number of results per page (1-30, default 10). |
| object_type | string | Filter maker results by object type (e.g. "Painting", "Ceramic", "Print"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"maker"
],
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)."
},
"maker": {
"type": "string",
"minLength": 1,
"description": "Artist or maker name to search for (e.g. \"Wedgwood\", \"William Morris\", \"Constable\", \"Beatrix Potter\"). Partial matches are supported."
},
"page_size": {
"type": "integer",
"maximum": 30,
"minimum": 1,
"description": "Number of results per page (1-30, default 10)."
},
"object_type": {
"type": "string",
"description": "Filter maker results by object type (e.g. \"Painting\", \"Ceramic\", \"Print\")."
}
},
"additionalProperties": false
}Get full details for a specific V&A museum object by its system number (e.g. "O429002"). Returns complete record: title, summary and physical descriptions, all makers with roles, materials, techniques, categories, styles, production date range, place of origin, gallery location, IIIF image URL, and direct link to the V&A collections page.
| Argument | Type | Description |
|---|---|---|
| system_number* | string | V&A system number identifying the museum object (e.g. "O429002", "O64940"). Returned in search results as system_number. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"system_number"
],
"properties": {
"system_number": {
"type": "string",
"description": "V&A system number identifying the museum object (e.g. \"O429002\", \"O64940\"). Returned in search results as system_number."
}
},
"additionalProperties": false
}Search 1M+ objects in the Victoria and Albert Museum collection by keyword, object type, date range, and display status. Returns object type, title, maker, date, place of origin, thumbnail URL, and IIIF image base for each result. Filter by on_display=true to find objects currently on display in London. Source: V&A public API (no auth required).
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for paginating through results (default 1). |
| query | string | Keyword search across titles, descriptions, maker names, and materials (e.g. "teapot", "William Morris", "silk embroidery"). Leave empty to browse all objects. |
| year_to | integer | Latest production year filter (e.g. 1850). |
| page_size | integer | Number of results per page (1-30, default 10). |
| year_from | integer | Earliest production year filter (e.g. 1750). |
| on_display | boolean | When true, return only objects currently on display in V&A galleries. When false or omitted, include objects in storage too. |
| object_type | string | Filter by object type (e.g. "Painting", "Vase", "Tile", "Photograph", "Drawing", "Print", "Textile"). Case-sensitive; use exact V&A category names. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for paginating through results (default 1)."
},
"query": {
"type": "string",
"description": "Keyword search across titles, descriptions, maker names, and materials (e.g. \"teapot\", \"William Morris\", \"silk embroidery\"). Leave empty to browse all objects."
},
"year_to": {
"type": "integer",
"maximum": 2100,
"minimum": 0,
"description": "Latest production year filter (e.g. 1850)."
},
"page_size": {
"type": "integer",
"maximum": 30,
"minimum": 1,
"description": "Number of results per page (1-30, default 10)."
},
"year_from": {
"type": "integer",
"maximum": 2100,
"minimum": 0,
"description": "Earliest production year filter (e.g. 1750)."
},
"on_display": {
"type": "boolean",
"description": "When true, return only objects currently on display in V&A galleries. When false or omitted, include objects in storage too."
},
"object_type": {
"type": "string",
"description": "Filter by object type (e.g. \"Painting\", \"Vase\", \"Tile\", \"Photograph\", \"Drawing\", \"Print\", \"Textile\"). Case-sensitive; use exact V&A category names."
}
},
"additionalProperties": false
}Decode any VIN worldwide (100+ countries) — make, model, year, trim, engine, transmission, drive type, body style, origin country, manufacturer. Covers EU, Asia, and other markets beyond US-only NHTSA. Static data cached 24h (Auto.dev)
| Argument | Type | Description |
|---|---|---|
| vin* | string | 17-character Vehicle Identification Number (e.g. "WP0AF2A99KS165242" for Porsche, "WBAFR7C51BC603689" for BMW) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"vin"
],
"properties": {
"vin": {
"type": "string",
"maxLength": 17,
"minLength": 17,
"description": "17-character Vehicle Identification Number (e.g. \"WP0AF2A99KS165242\" for Porsche, \"WBAFR7C51BC603689\" for BMW)"
}
},
"additionalProperties": false
}Get full details for a specific car listing by ID — VIN, price, MSRP, mileage, full build specs (engine, transmission, drivetrain, fuel type), dealer contact, Carfax 1-owner status, days on market, photos. Get listing IDs from carmarket.search (MarketCheck)
| Argument | Type | Description |
|---|---|---|
| id* | string | MarketCheck listing ID (e.g. "3TMCZ5AN5PM564843-883937ce-f335"). Get IDs from carmarket.search results |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "MarketCheck listing ID (e.g. \"3TMCZ5AN5PM564843-883937ce-f335\"). Get IDs from carmarket.search results"
}
},
"additionalProperties": false
}Search millions of active US car listings by make, model, year, price range, mileage, ZIP code, and radius. Returns VIN, price, miles, dealer info, Carfax status, and days on market. Filter by seller type (dealer/private) and color. Data from all major US marketplaces (MarketCheck)
| Argument | Type | Description |
|---|---|---|
| zip | string | US ZIP code to search near (e.g. "10001") |
| make | string | Car manufacturer (e.g. "Toyota", "Honda", "BMW", "Tesla") |
| year | integer | Model year (e.g. 2023, 2024) |
| limit | integer | Max results (1-25, default 10) |
| model | string | Car model (e.g. "Camry", "Civic", "Model 3") |
| start | integer | Offset for pagination |
| radius | number | Search radius in miles from ZIP (max 100 on free tier) |
| miles_max | number | Maximum mileage |
| price_max | number | Maximum price in USD |
| price_min | number | Minimum price in USD |
| seller_type | string | Filter by seller type |
| exterior_color | string | Filter by exterior color (e.g. "White", "Black", "Red") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"zip": {
"type": "string",
"description": "US ZIP code to search near (e.g. \"10001\")"
},
"make": {
"type": "string",
"description": "Car manufacturer (e.g. \"Toyota\", \"Honda\", \"BMW\", \"Tesla\")"
},
"year": {
"type": "integer",
"description": "Model year (e.g. 2023, 2024)"
},
"limit": {
"type": "integer",
"default": 10,
"maximum": 25,
"minimum": 1,
"description": "Max results (1-25, default 10)"
},
"model": {
"type": "string",
"description": "Car model (e.g. \"Camry\", \"Civic\", \"Model 3\")"
},
"start": {
"type": "integer",
"minimum": 0,
"description": "Offset for pagination"
},
"radius": {
"type": "number",
"description": "Search radius in miles from ZIP (max 100 on free tier)"
},
"miles_max": {
"type": "number",
"description": "Maximum mileage"
},
"price_max": {
"type": "number",
"description": "Maximum price in USD"
},
"price_min": {
"type": "number",
"description": "Minimum price in USD"
},
"seller_type": {
"enum": [
"dealer",
"private"
],
"type": "string",
"description": "Filter by seller type"
},
"exterior_color": {
"type": "string",
"description": "Filter by exterior color (e.g. \"White\", \"Black\", \"Red\")"
}
},
"additionalProperties": false
}Search consumer complaints filed with NHTSA about vehicles. Returns incident details including crash/fire flags, injuries, deaths, affected components, and complaint summary. Covers US vehicles from ~1995 to present. Critical for safety research and product liability analysis (NHTSA)
| Argument | Type | Description |
|---|---|---|
| make* | string | Vehicle manufacturer name (e.g. "Toyota", "Ford", "Tesla", "Honda") |
| model* | string | Vehicle model name (e.g. "Camry", "Model 3", "Civic") |
| model_year* | integer | Model year (e.g. 2023). NHTSA complaint data available from ~1995 to present |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"make",
"model",
"model_year"
],
"properties": {
"make": {
"type": "string",
"minLength": 1,
"description": "Vehicle manufacturer name (e.g. \"Toyota\", \"Ford\", \"Tesla\", \"Honda\")"
},
"model": {
"type": "string",
"minLength": 1,
"description": "Vehicle model name (e.g. \"Camry\", \"Model 3\", \"Civic\")"
},
"model_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1995,
"description": "Model year (e.g. 2023). NHTSA complaint data available from ~1995 to present"
}
},
"additionalProperties": false
}Search NHTSA defect investigation records by manufacturer and model. Returns investigation number, type (preliminary/engineering analysis), description, latest activity date, and NHTSA action number. Covers active and closed investigations for US vehicles (NHTSA)
| Argument | Type | Description |
|---|---|---|
| make* | string | Vehicle manufacturer name (e.g. "Tesla", "GM", "Ford") |
| model | string | Vehicle model name to narrow results (e.g. "Model 3", "Bolt EV") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"make"
],
"properties": {
"make": {
"type": "string",
"minLength": 1,
"description": "Vehicle manufacturer name (e.g. \"Tesla\", \"GM\", \"Ford\")"
},
"model": {
"type": "string",
"description": "Vehicle model name to narrow results (e.g. \"Model 3\", \"Bolt EV\")"
}
},
"additionalProperties": false
}Get NCAP 5-Star crash test safety ratings by make/model/year or vehicle ID. Returns overall rating, frontal crash, side crash, and rollover ratings (1-5 stars). Also shows related complaints, recalls, and investigation counts. Available from ~2011 for US-market vehicles (NHTSA)
| Argument | Type | Description |
|---|---|---|
| make | string | Vehicle manufacturer name (e.g. "Toyota", "Honda"). Required unless vehicle_id is provided |
| model | string | Vehicle model name (e.g. "Camry", "Civic"). Required unless vehicle_id is provided |
| model_year | integer | Model year (e.g. 2023). 5-Star ratings available from ~2011. Required unless vehicle_id is provided |
| vehicle_id | integer | NHTSA Vehicle ID for full ratings detail (get from initial search). Overrides make/model/year if provided |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"make": {
"type": "string",
"description": "Vehicle manufacturer name (e.g. \"Toyota\", \"Honda\"). Required unless vehicle_id is provided"
},
"model": {
"type": "string",
"description": "Vehicle model name (e.g. \"Camry\", \"Civic\"). Required unless vehicle_id is provided"
},
"model_year": {
"type": "integer",
"maximum": 2030,
"minimum": 2011,
"description": "Model year (e.g. 2023). 5-Star ratings available from ~2011. Required unless vehicle_id is provided"
},
"vehicle_id": {
"type": "integer",
"description": "NHTSA Vehicle ID for full ratings detail (get from initial search). Overrides make/model/year if provided"
}
},
"additionalProperties": false
}Search NHTSA vehicle recalls by make, model, and year. Returns campaign number, manufacturer, subject, summary, consequence, remedy, affected components, and units affected. Covers all US recalls from 1966 to present. Essential for automotive safety, insurance, and fleet management agents (NHTSA)
| Argument | Type | Description |
|---|---|---|
| make* | string | Vehicle manufacturer name (e.g. "Toyota", "Ford", "Tesla", "BMW") |
| model* | string | Vehicle model name (e.g. "Camry", "Model 3", "F-150", "X5") |
| model_year* | integer | Model year (e.g. 2023). NHTSA recall data available from 1966 to present |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"make",
"model",
"model_year"
],
"properties": {
"make": {
"type": "string",
"minLength": 1,
"description": "Vehicle manufacturer name (e.g. \"Toyota\", \"Ford\", \"Tesla\", \"BMW\")"
},
"model": {
"type": "string",
"minLength": 1,
"description": "Vehicle model name (e.g. \"Camry\", \"Model 3\", \"F-150\", \"X5\")"
},
"model_year": {
"type": "integer",
"maximum": 2030,
"minimum": 1966,
"description": "Model year (e.g. 2023). NHTSA recall data available from 1966 to present"
}
},
"additionalProperties": false
}Decode a 17-character VIN — make, model, year, body class, engine, fuel type, transmission, plant country. US Government open data, unlimited, no auth (NHTSA)
| Argument | Type | Description |
|---|---|---|
| vin* | string | 17-character Vehicle Identification Number (e.g. "1HGCM82633A004352") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"vin"
],
"properties": {
"vin": {
"type": "string",
"maxLength": 17,
"minLength": 17,
"description": "17-character Vehicle Identification Number (e.g. \"1HGCM82633A004352\")"
}
},
"additionalProperties": false
}List vehicle models for a make and/or year (e.g. Honda 2024). US Government data (NHTSA)
| Argument | Type | Description |
|---|---|---|
| make | string | Vehicle make (e.g. "Honda", "Toyota", "Ford") |
| year | integer | Model year (e.g. 2024) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"make": {
"type": "string",
"description": "Vehicle make (e.g. \"Honda\", \"Toyota\", \"Ford\")"
},
"year": {
"type": "integer",
"description": "Model year (e.g. 2024)"
}
},
"additionalProperties": false
}Get Common Alerting Protocol (CAP) information for highly elevated volcanoes (ORANGE/WATCH or higher). CAP is the international emergency alert standard used by aviation authorities and civil protection agencies. Returns full CAP metadata: location (lat/lon/elevation), alert certainty, severity, urgency, synopsis text, expiry time, and previous alert state. Only volcanoes that have been at ORANGE or above at least once appear here. Use for integration with emergency management systems, aviation NOTAM workflows, or real-time public alerting pipelines. No auth — USGS public domain.
| Argument | Type | Description |
|---|---|---|
| min_alert_level | string | Minimum alert level to include: ADVISORY, WATCH, or WARNING (default: all elevated) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"min_alert_level": {
"enum": [
"ADVISORY",
"WATCH",
"WARNING"
],
"type": "string",
"description": "Minimum alert level to include: ADVISORY, WATCH, or WARNING (default: all elevated)"
}
},
"additionalProperties": false
}Get detailed information for a single US volcano by its USGS volcano code or Smithsonian vnum. Returns name, coordinates, elevation, region, NVEWS threat rating, observatory, plain-text description (HTML stripped), official volcano page URL, image URL, and links to the HANS hazard page and newest notice API. Use volcano.us_catalog or volcano.monitored to discover valid volcano IDs. Example: volcano_id="ak277" for Takawangha, "311120" for Great Sitkin. No auth — USGS public domain.
| Argument | Type | Description |
|---|---|---|
| volcano_id* | string | USGS volcano code (e.g. ak277) or Smithsonian volcano number (e.g. 311090). Get IDs from volcano.us_catalog or volcano.monitored. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"volcano_id"
],
"properties": {
"volcano_id": {
"type": "string",
"description": "USGS volcano code (e.g. ak277) or Smithsonian volcano number (e.g. 311090). Get IDs from volcano.us_catalog or volcano.monitored."
}
},
"additionalProperties": false
}Get the full catalog of all 170 US volcanoes tracked by the USGS Volcano Hazards Program. Includes Alaska, Hawaii, Cascades (Washington/Oregon/California), and other regions. Each entry contains: Smithsonian volcano number (vnum), USGS volcano code, region, GPS coordinates, elevation, NVEWS threat rating (Very High / High / Moderate / Low / Very Low), observatory contact, official volcano page URL, and image URL. Optionally filter by region substring (e.g. "Alaska", "Hawaii", "Cascades"). Use to enumerate all US volcanoes, discover IDs, or build regional hazard maps. No auth — USGS public domain.
| Argument | Type | Description |
|---|---|---|
| region | string | Filter by region name substring (e.g. "Alaska", "Hawaii", "Cascades", "California") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"region": {
"type": "string",
"description": "Filter by region name substring (e.g. \"Alaska\", \"Hawaii\", \"Cascades\", \"California\")"
}
},
"additionalProperties": false
}Get the text of the most recent official notice for a specific US volcano. USGS observatories issue daily updates, information statements, and activity alerts in a standardized format. Returns the notice as plain text (HTML stripped) and optionally the original HTML. Notices describe current volcanic activity: seismicity, deformation, emissions, lava flow extent, ash cloud height, and recommended actions. Use with volcano_id from volcano.monitored or volcano.us_catalog. No auth — USGS public domain, data updated as notices are issued.
| Argument | Type | Description |
|---|---|---|
| volcano_id* | string | USGS volcano code (e.g. ak277) or Smithsonian volcano number (e.g. 311090). Get IDs from volcano.us_catalog or volcano.monitored. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"volcano_id"
],
"properties": {
"volcano_id": {
"type": "string",
"description": "USGS volcano code (e.g. ak277) or Smithsonian volcano number (e.g. 311090). Get IDs from volcano.us_catalog or volcano.monitored."
}
},
"additionalProperties": false
}Get all US volcanoes currently in an elevated state (color code YELLOW, ORANGE, or RED; alert level ADVISORY, WATCH, or WARNING). Returns only volcanoes with active unrest or eruption. Includes volcano name, Smithsonian vnum, USGS volcano code, current alert level and color code, observatory, time of last notice, and notice URL. Returns an empty array when all monitored volcanoes are at NORMAL/GREEN status. Ideal for real-time hazard monitoring dashboards and aviation safety agents. No auth — USGS public domain, updated within minutes of official notice issuance.
| Argument | Type | Description |
|---|---|---|
| color_code | string | Filter by aviation color code: YELLOW (advisory), ORANGE (watch), RED (warning) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"color_code": {
"enum": [
"YELLOW",
"ORANGE",
"RED"
],
"type": "string",
"description": "Filter by aviation color code: YELLOW (advisory), ORANGE (watch), RED (warning)"
}
},
"additionalProperties": false
}Get all US volcanoes currently under active monitoring by the USGS Volcano Hazards Program. Returns ~69 volcanoes with current alert level (NORMAL/ADVISORY/WATCH/WARNING), aviation color code (GREEN/YELLOW/ORANGE/RED), observatory name, and the most recent notice URL. Monitoring requires ground-based instruments to be operational — some volcanoes may be temporarily excluded during equipment outages. Use as a first step to identify volcano IDs for detail/notice lookups. No auth — USGS public domain, data updated in real time as notices are issued.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of monitored volcanoes to return (1–200, default all ~69) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Maximum number of monitored volcanoes to return (1–200, default all ~69)"
}
},
"additionalProperties": false
}Get real-time streamflow (ft^3/s), gage height (ft), water temperature, and conductance for a USGS monitoring site. Updated every 15 minutes. Covers rivers, streams, lakes, reservoirs across the US. Use water.sites to find site numbers (USGS)
| Argument | Type | Description |
|---|---|---|
| period | string | ISO 8601 duration for data window (e.g. "PT2H" for 2 hours, "P7D" for 7 days). Default: PT2H. |
| site_no* | string | USGS site number (e.g. "09380000"). Use water.sites to find site numbers first. |
| parameter_cd | string | Parameter code(s), comma-separated. Common: 00060=streamflow, 00065=gage height, 00010=temperature. Default: all available. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"site_no"
],
"properties": {
"period": {
"type": "string",
"description": "ISO 8601 duration for data window (e.g. \"PT2H\" for 2 hours, \"P7D\" for 7 days). Default: PT2H."
},
"site_no": {
"type": "string",
"minLength": 1,
"description": "USGS site number (e.g. \"09380000\"). Use water.sites to find site numbers first."
},
"parameter_cd": {
"type": "string",
"description": "Parameter code(s), comma-separated. Common: 00060=streamflow, 00065=gage height, 00010=temperature. Default: all available."
}
},
"additionalProperties": false
}Search 1.5M+ USGS water monitoring sites by US state, county FIPS, bounding box, or site number. Returns site ID, station name, coordinates, altitude, HUC watershed code. Use site numbers with water.realtime for live data (USGS)
| Argument | Type | Description |
|---|---|---|
| bbox | string | Bounding box: west,south,east,north in decimal degrees (e.g. "-105.5,39.5,-104.5,40.5") |
| state | string | US state FIPS code, 2 chars (e.g. "CA", "NY", "CO") |
| county | string | County FIPS code, 5 digits (e.g. "06037" for Los Angeles County) |
| site_no | string | USGS site number (e.g. "09380000" for Colorado River at Lees Ferry) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"bbox": {
"type": "string",
"description": "Bounding box: west,south,east,north in decimal degrees (e.g. \"-105.5,39.5,-104.5,40.5\")"
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "US state FIPS code, 2 chars (e.g. \"CA\", \"NY\", \"CO\")"
},
"county": {
"type": "string",
"description": "County FIPS code, 5 digits (e.g. \"06037\" for Los Angeles County)"
},
"site_no": {
"type": "string",
"description": "USGS site number (e.g. \"09380000\" for Colorado River at Lees Ferry)"
}
},
"additionalProperties": false
}Current AQI observations near a US coordinate. Same fields as current_zip. EPA AirNow
| Argument | Type | Description |
|---|---|---|
| lat* | number | Latitude (decimal degrees, e.g. 40.7128 for NYC). |
| lng* | number | Longitude (decimal degrees, e.g. -74.0060 for NYC). |
| distance | integer | Search radius in miles around the coordinate (default 25). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lng"
],
"properties": {
"lat": {
"type": "number",
"description": "Latitude (decimal degrees, e.g. 40.7128 for NYC)."
},
"lng": {
"type": "number",
"description": "Longitude (decimal degrees, e.g. -74.0060 for NYC)."
},
"distance": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Search radius in miles around the coordinate (default 25)."
}
},
"additionalProperties": false
}Current Air Quality Index (AQI) observations from EPA AirNow for any US ZIP code. Returns PM2.5, ozone, AQI value + category (Good/Moderate/Unhealthy/...). US Gov free
| Argument | Type | Description |
|---|---|---|
| zip* | string | US ZIP code — 5 digits (e.g. "10001" Manhattan, "90210" Beverly Hills, "60601" Chicago). |
| distance | integer | Search radius in miles around the ZIP centroid (default 25). If no monitor within radius, returns empty array. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"zip"
],
"properties": {
"zip": {
"type": "string",
"maxLength": 5,
"minLength": 5,
"description": "US ZIP code — 5 digits (e.g. \"10001\" Manhattan, \"90210\" Beverly Hills, \"60601\" Chicago)."
},
"distance": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Search radius in miles around the ZIP centroid (default 25). If no monitor within radius, returns empty array."
}
},
"additionalProperties": false
}Multi-day AQI forecast for a US lat/lng. EPA AirNow
| Argument | Type | Description |
|---|---|---|
| lat* | number | Latitude (decimal degrees, e.g. 40.7128 for NYC). |
| lng* | number | Longitude (decimal degrees, e.g. -74.0060 for NYC). |
| date | string | Optional ISO date YYYY-MM-DD to get forecast for that day. Default: today. |
| distance | integer | Search radius in miles around the coordinate (default 25). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lng"
],
"properties": {
"lat": {
"type": "number",
"description": "Latitude (decimal degrees, e.g. 40.7128 for NYC)."
},
"lng": {
"type": "number",
"description": "Longitude (decimal degrees, e.g. -74.0060 for NYC)."
},
"date": {
"type": "string",
"description": "Optional ISO date YYYY-MM-DD to get forecast for that day. Default: today."
},
"distance": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Search radius in miles around the coordinate (default 25)."
}
},
"additionalProperties": false
}Multi-day AQI forecast (today + ~5 days) for a US ZIP — ozone + PM2.5 expected category. EPA AirNow
| Argument | Type | Description |
|---|---|---|
| zip* | string | US ZIP code — 5 digits (e.g. "10001" Manhattan, "90210" Beverly Hills, "60601" Chicago). |
| date | string | Optional ISO date YYYY-MM-DD to get forecast for that day. Default: today. |
| distance | integer | Search radius in miles around the ZIP centroid (default 25). If no monitor within radius, returns empty array. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"zip"
],
"properties": {
"zip": {
"type": "string",
"maxLength": 5,
"minLength": 5,
"description": "US ZIP code — 5 digits (e.g. \"10001\" Manhattan, \"90210\" Beverly Hills, \"60601\" Chicago)."
},
"date": {
"type": "string",
"description": "Optional ISO date YYYY-MM-DD to get forecast for that day. Default: today."
},
"distance": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Search radius in miles around the ZIP centroid (default 25). If no monitor within radius, returns empty array."
}
},
"additionalProperties": false
}Active severe weather alerts for the US — tornado warnings, flood watches, heat advisories, winter storms. Filter by state, severity, event type. US Government open data, unlimited, no auth (NWS/NOAA)
| Argument | Type | Description |
|---|---|---|
| area | string | US state code (e.g. "CA", "TX", "NY") or marine zone |
| event | string | Event type filter (e.g. "Tornado Warning", "Flood Watch", "Heat Advisory") |
| limit | integer | Max alerts to return (default 10, max 50) |
| urgency | string | Urgency filter |
| severity | string | Alert severity filter |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"area": {
"type": "string",
"description": "US state code (e.g. \"CA\", \"TX\", \"NY\") or marine zone"
},
"event": {
"type": "string",
"description": "Event type filter (e.g. \"Tornado Warning\", \"Flood Watch\", \"Heat Advisory\")"
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Max alerts to return (default 10, max 50)"
},
"urgency": {
"enum": [
"Immediate",
"Expected",
"Future",
"Past",
"Unknown"
],
"type": "string",
"description": "Urgency filter"
},
"severity": {
"enum": [
"Extreme",
"Severe",
"Moderate",
"Minor",
"Unknown"
],
"type": "string",
"description": "Alert severity filter"
}
},
"additionalProperties": false
}Active weather alerts for a specific US state — all warnings, watches, and advisories. Returns event, severity, urgency, description, area, timing (NWS/NOAA)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max alerts (default 10, max 50) |
| state* | string | US state code (e.g. "CA", "FL", "TX") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"state"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Max alerts (default 10, max 50)"
},
"state": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "US state code (e.g. \"CA\", \"FL\", \"TX\")"
}
},
"additionalProperties": false
}Get current weather conditions for a location
| Argument | Type | Description |
|---|---|---|
| units | string | Temperature units system |
| location* | string | City name, coordinates (lat,lon), or zip code |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"location"
],
"properties": {
"units": {
"enum": [
"metric",
"imperial"
],
"type": "string",
"description": "Temperature units system"
},
"location": {
"type": "string",
"description": "City name, coordinates (lat,lon), or zip code"
}
},
"additionalProperties": false
}Get weather forecast for a location
| Argument | Type | Description |
|---|---|---|
| type | string | Forecast granularity: hourly, daily, or both |
| units | string | Temperature units system |
| location* | string | City name, coordinates (lat,lon), or zip code |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"location"
],
"properties": {
"type": {
"enum": [
"hourly",
"daily",
"both"
],
"type": "string",
"description": "Forecast granularity: hourly, daily, or both"
},
"units": {
"enum": [
"metric",
"imperial"
],
"type": "string",
"description": "Temperature units system"
},
"location": {
"type": "string",
"description": "City name, coordinates (lat,lon), or zip code"
}
},
"additionalProperties": false
}Get sunrise, sunset, moonrise, moonset times and moon phase for any location and date. Returns moon illumination percentage and phase name (WeatherAPI.com)
| Argument | Type | Description |
|---|---|---|
| q* | string | Location query — city name, coordinates, or zip code |
| date | string | Date for astronomy data (YYYY-MM-DD, default today) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"minLength": 1,
"description": "Location query — city name, coordinates, or zip code"
},
"date": {
"type": "string",
"description": "Date for astronomy data (YYYY-MM-DD, default today)"
}
},
"additionalProperties": false
}Get current weather conditions for any location worldwide — temperature, wind, humidity, pressure, UV index, cloud cover, feels-like temp. Accepts city name, coordinates, zip code, or airport code. 100K+ stations globally (WeatherAPI.com)
| Argument | Type | Description |
|---|---|---|
| q* | string | Location query — city name (e.g. "London"), coordinates ("48.8,2.35"), US zip ("10001"), UK postcode ("SW1"), IP address, or IATA airport code ("JFK") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"minLength": 1,
"description": "Location query — city name (e.g. \"London\"), coordinates (\"48.8,2.35\"), US zip (\"10001\"), UK postcode (\"SW1\"), IP address, or IATA airport code (\"JFK\")"
}
},
"additionalProperties": false
}Get 3-day weather forecast — daily min/max temperature, conditions, wind, precipitation, humidity, rain/snow chance, UV index. Accepts any location query (WeatherAPI.com)
| Argument | Type | Description |
|---|---|---|
| q* | string | Location query — city name, coordinates, zip code, or airport code |
| days | integer | Forecast days (1-3, default 3) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"minLength": 1,
"description": "Location query — city name, coordinates, zip code, or airport code"
},
"days": {
"type": "integer",
"default": 3,
"maximum": 3,
"minimum": 1,
"description": "Forecast days (1-3, default 3)"
}
},
"additionalProperties": false
}Search and autocomplete location names — returns matching cities with coordinates. Type partial name (e.g. "lon" → London, "mos" → Moscow). Use result coordinates with other weather tools (WeatherAPI.com)
| Argument | Type | Description |
|---|---|---|
| q* | string | Search query — partial city name for autocomplete (e.g. "lon" → London, "mos" → Moscow) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"minLength": 1,
"description": "Search query — partial city name for autocomplete (e.g. \"lon\" → London, \"mos\" → Moscow)"
}
},
"additionalProperties": false
}⚡ ACTION: Take a screenshot of any URL — returns image URL. Chrome-based rendering, supports full-page capture, custom viewport, ad blocking, cookie banner removal. Waits for JS-heavy SPAs to load (ApiFlash)
| Argument | Type | Description |
|---|---|---|
| url* | string | URL of the website to screenshot (e.g. "https://example.com") |
| delay | integer | Wait N seconds before capture (0-10, for JS-heavy pages) |
| width | integer | Viewport width in pixels (default 1920, max 3840) |
| format | string | Image format: "png" (default), "jpeg", or "webp" |
| height | integer | Viewport height in pixels (default 1080) |
| no_ads | boolean | Block ads before capture (default false) |
| full_page | boolean | Capture full page scroll height (default false) |
| wait_until | string | "page_loaded" (default) or "network_idle" (wait for all XHR/fetch) |
| no_cookie_banners | boolean | Remove cookie consent banners (default false) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "URL of the website to screenshot (e.g. \"https://example.com\")"
},
"delay": {
"type": "integer",
"maximum": 10,
"minimum": 0,
"description": "Wait N seconds before capture (0-10, for JS-heavy pages)"
},
"width": {
"type": "integer",
"maximum": 3840,
"minimum": 100,
"description": "Viewport width in pixels (default 1920, max 3840)"
},
"format": {
"enum": [
"png",
"jpeg",
"webp"
],
"type": "string",
"description": "Image format: \"png\" (default), \"jpeg\", or \"webp\""
},
"height": {
"type": "integer",
"maximum": 3840,
"minimum": 100,
"description": "Viewport height in pixels (default 1080)"
},
"no_ads": {
"type": "boolean",
"description": "Block ads before capture (default false)"
},
"full_page": {
"type": "boolean",
"description": "Capture full page scroll height (default false)"
},
"wait_until": {
"enum": [
"page_loaded",
"network_idle"
],
"type": "string",
"description": "\"page_loaded\" (default) or \"network_idle\" (wait for all XHR/fetch)"
},
"no_cookie_banners": {
"type": "boolean",
"description": "Remove cookie consent banners (default false)"
}
},
"additionalProperties": false
}⚡ ACTION: Create a short URL from any long URL. Optional custom slug. Returns short link at apibase.short.gy. 1,000 free links/month (Short.io)
| Argument | Type | Description |
|---|---|---|
| url* | string | Original URL to shorten (e.g. "https://example.com/very/long/path") |
| slug | string | Custom short path (e.g. "my-link" → apibase.short.gy/my-link). Auto-generated if omitted. |
| title | string | Optional title/label for the short link |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Original URL to shorten (e.g. \"https://example.com/very/long/path\")"
},
"slug": {
"type": "string",
"description": "Custom short path (e.g. \"my-link\" → apibase.short.gy/my-link). Auto-generated if omitted."
},
"title": {
"type": "string",
"description": "Optional title/label for the short link"
}
},
"additionalProperties": false
}Get click statistics and metadata for a short URL by its path (Short.io)
| Argument | Type | Description |
|---|---|---|
| path* | string | Short link path (e.g. "imV5of" from apibase.short.gy/imV5of) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"path"
],
"properties": {
"path": {
"type": "string",
"description": "Short link path (e.g. \"imV5of\" from apibase.short.gy/imV5of)"
}
},
"additionalProperties": false
}Get full exercise details by ID — description, primary and secondary muscles worked, required equipment (barbell/dumbbell/bodyweight/machine), and category. Use with exercise_search to build workout plans.
| Argument | Type | Description |
|---|---|---|
| id* | integer | Exercise base ID from search results (e.g. 615 for Squats) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"description": "Exercise base ID from search results (e.g. 615 for Squats)"
}
},
"additionalProperties": false
}Search 896 exercises by name — bench press, squat, deadlift, curl, etc. Returns exercise name, category (Chest/Back/Legs/Arms/Abs/Shoulders/Cardio), and ID for details lookup. Open-source fitness database (Wger, CC-BY-SA).
| Argument | Type | Description |
|---|---|---|
| term* | string | Exercise name to search (e.g. "bench press", "squat", "deadlift", "bicep curl") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"term"
],
"properties": {
"term": {
"type": "string",
"minLength": 1,
"description": "Exercise name to search (e.g. \"bench press\", \"squat\", \"deadlift\", \"bicep curl\")"
}
},
"additionalProperties": false
}Search 1.28M food ingredients by name — chicken breast, rice, banana, oats. Returns calories (kcal), protein, carbs, fat, fiber, sugar, sodium per 100g. Complements USDA FDC with broader international coverage.
| Argument | Type | Description |
|---|---|---|
| name* | string | Food ingredient name (e.g. "chicken breast", "rice", "banana", "oats") |
| limit | integer | Number of results (1-20, default 10) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"minLength": 1,
"description": "Food ingredient name (e.g. \"chicken breast\", \"rice\", \"banana\", \"oats\")"
},
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of results (1-20, default 10)"
}
},
"additionalProperties": false
}List all 194 WHO member countries and territories with codes and names. Use returned country codes with who.data to filter health indicators by country.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of countries to return, max 200 (default 50) |
| search | string | Partial country name to filter (e.g. "United", "Germany", "Brazil") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Number of countries to return, max 200 (default 50)"
},
"search": {
"type": "string",
"description": "Partial country name to filter (e.g. \"United\", \"Germany\", \"Brazil\")"
}
},
"additionalProperties": false
}Get WHO health indicator data for a specific country. Specify a 3-letter ISO country code and optionally filter by indicator and year. Useful for country-level health profiles: life expectancy, immunization coverage, maternal mortality, disease burden, and SDG health targets. Use who.dimension_values with dimension="COUNTRY" to discover valid country codes. No auth — WHO public data, unlimited free.
| Argument | Type | Description |
|---|---|---|
| year | integer | Specific year to retrieve data for (e.g. 2022). Omit to get all available years. |
| limit | integer | Maximum number of records to return (1–100, default 20). |
| country_code* | string | ISO 3166-1 alpha-3 country code (e.g. "USA", "BRA", "KEN", "IND"). Use who.dimension_values with dimension="COUNTRY" to list all valid codes. |
| indicator_code | string | WHO GHO indicator code to retrieve (default: WHOSIS_000001 for life expectancy). Use who.indicator_search to find codes. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country_code"
],
"properties": {
"year": {
"type": "integer",
"maximum": 2100,
"minimum": 1900,
"description": "Specific year to retrieve data for (e.g. 2022). Omit to get all available years."
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of records to return (1–100, default 20)."
},
"country_code": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO 3166-1 alpha-3 country code (e.g. \"USA\", \"BRA\", \"KEN\", \"IND\"). Use who.dimension_values with dimension=\"COUNTRY\" to list all valid codes."
},
"indicator_code": {
"type": "string",
"description": "WHO GHO indicator code to retrieve (default: WHOSIS_000001 for life expectancy). Use who.indicator_search to find codes."
}
},
"additionalProperties": false
}Retrieve WHO health data for a specific indicator, optionally filtered by country and year range. Returns values for up to 194 countries spanning multiple decades. Official UN member state reporting data.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of data points to return, max 100 (default 20) |
| country | string | ISO 3166-1 alpha-3 country code (e.g. "USA", "DEU", "BRA", "JPN"). Omit for all countries |
| year_to | integer | Latest year to include (e.g. 2023) |
| indicator* | string | WHO indicator code (e.g. "WHOSIS_000001" for life expectancy, "MDG_0000000001" for under-5 mortality). Get codes from who.indicators |
| year_from | integer | Earliest year to include (e.g. 2000) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"indicator"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of data points to return, max 100 (default 20)"
},
"country": {
"type": "string",
"description": "ISO 3166-1 alpha-3 country code (e.g. \"USA\", \"DEU\", \"BRA\", \"JPN\"). Omit for all countries"
},
"year_to": {
"type": "integer",
"description": "Latest year to include (e.g. 2023)"
},
"indicator": {
"type": "string",
"description": "WHO indicator code (e.g. \"WHOSIS_000001\" for life expectancy, \"MDG_0000000001\" for under-5 mortality). Get codes from who.indicators"
},
"year_from": {
"type": "integer",
"description": "Earliest year to include (e.g. 2000)"
}
},
"additionalProperties": false
}List valid values for a WHO GHO dimension such as countries (COUNTRY), WHO regions (REGION), sex categories (SEX), age groups (AGEGROUP), or world bank income groups (WORLDBANKINCOMEGROUP). Essential for discovering valid filter values before querying indicator data. Returns codes and human-readable titles for all values in the dimension. No auth — WHO public reference data, unlimited free.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of values to return (1–100, default 20). |
| search | string | Filter dimension values by partial title match (e.g. "africa" to filter African countries). |
| dimension* | string | Dimension code to list values for (e.g. "COUNTRY" for country codes, "REGION" for WHO regions, "SEX" for sex categories, "AGEGROUP" for age groups). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"dimension"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of values to return (1–100, default 20)."
},
"search": {
"type": "string",
"description": "Filter dimension values by partial title match (e.g. \"africa\" to filter African countries)."
},
"dimension": {
"type": "string",
"description": "Dimension code to list values for (e.g. \"COUNTRY\" for country codes, \"REGION\" for WHO regions, \"SEX\" for sex categories, \"AGEGROUP\" for age groups)."
}
},
"additionalProperties": false
}Retrieve time-series values for a specific WHO Global Health Observatory indicator. Filter by country (ISO alpha-3), year range, and sex (both sexes, male, or female). Returns numeric values with confidence intervals for indicators such as life expectancy at birth (WHOSIS_000001), DTP3 immunization coverage (dptv), TB incidence (MDG_0000000020), and 3,000+ more. Use who.indicator_search to find indicator codes. No auth — unlimited free.
| Argument | Type | Description |
|---|---|---|
| sex | string | Sex dimension filter: SEX_BTSX (both sexes), SEX_MLE (male), SEX_FMLE (female). |
| limit | integer | Maximum number of data points to return (1–100, default 20). |
| year_to | integer | End year for time series data (inclusive, e.g. 2023). |
| year_from | integer | Start year for time series data (inclusive, e.g. 2015). |
| country_code | string | ISO 3166-1 alpha-3 country code to filter results (e.g. "USA", "FRA", "IND"). |
| indicator_code* | string | WHO GHO indicator code (e.g. "WHOSIS_000001" for life expectancy, "dptv" for DTP3 immunization, "MORT_100" for mortality). Use who.indicator_search to find codes. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"indicator_code"
],
"properties": {
"sex": {
"enum": [
"SEX_BTSX",
"SEX_MLE",
"SEX_FMLE"
],
"type": "string",
"description": "Sex dimension filter: SEX_BTSX (both sexes), SEX_MLE (male), SEX_FMLE (female)."
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of data points to return (1–100, default 20)."
},
"year_to": {
"type": "integer",
"maximum": 2100,
"minimum": 1900,
"description": "End year for time series data (inclusive, e.g. 2023)."
},
"year_from": {
"type": "integer",
"maximum": 2100,
"minimum": 1900,
"description": "Start year for time series data (inclusive, e.g. 2015)."
},
"country_code": {
"type": "string",
"maxLength": 3,
"minLength": 3,
"description": "ISO 3166-1 alpha-3 country code to filter results (e.g. \"USA\", \"FRA\", \"IND\")."
},
"indicator_code": {
"type": "string",
"description": "WHO GHO indicator code (e.g. \"WHOSIS_000001\" for life expectancy, \"dptv\" for DTP3 immunization, \"MORT_100\" for mortality). Use who.indicator_search to find codes."
}
},
"additionalProperties": false
}Search the WHO Global Health Observatory catalog of 3,000+ health indicators by keyword. Returns indicator codes, full names, and definitions for topics like immunization, life expectancy, mortality, tuberculosis, malaria, maternal health, NCDs, and SDG health metrics. Use the returned indicator_code with who.indicator_data to retrieve actual values. No auth — WHO CC BY-NC-SA 3.0 IGO, unlimited free.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of indicators to return (1–100, default 20). |
| keyword | string | Keyword to search indicator names (e.g. "immunization", "mortality", "tuberculosis"). Omit to list all indicators. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of indicators to return (1–100, default 20)."
},
"keyword": {
"type": "string",
"description": "Keyword to search indicator names (e.g. \"immunization\", \"mortality\", \"tuberculosis\"). Omit to list all indicators."
}
},
"additionalProperties": false
}List 1,000+ WHO Global Health Observatory indicators: life expectancy, mortality rates, disease burden, immunization, nutrition, mental health, environmental health. Returns indicator codes for use with who.data.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Number of indicators to return, max 100 (default 20) |
| search | string | Keyword to filter indicators by name (e.g. "mortality", "immunization", "life expectancy", "HIV", "malaria") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Number of indicators to return, max 100 (default 20)"
},
"search": {
"type": "string",
"description": "Keyword to filter indicators by name (e.g. \"mortality\", \"immunization\", \"life expectancy\", \"HIV\", \"malaria\")"
}
},
"additionalProperties": false
}Get DNS records for a domain — A, AAAA, MX, NS, SOA, TXT, CNAME, SRV, CAA records with TTL and raw data (WhoisXML)
| Argument | Type | Description |
|---|---|---|
| domain* | string | Domain name to look up DNS records for (e.g. "google.com") |
| record_type | string | DNS record type to query: A, AAAA, MX, NS, SOA, TXT, CNAME, SRV, CAA, or _all (default _all) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"description": "Domain name to look up DNS records for (e.g. \"google.com\")"
},
"record_type": {
"enum": [
"A",
"AAAA",
"MX",
"NS",
"SOA",
"TXT",
"CNAME",
"SRV",
"CAA",
"_all"
],
"type": "string",
"description": "DNS record type to query: A, AAAA, MX, NS, SOA, TXT, CNAME, SRV, CAA, or _all (default _all)"
}
},
"additionalProperties": false
}Check if a domain name is available for registration — fast DNS check or thorough DNS+WHOIS verification (WhoisXML)
| Argument | Type | Description |
|---|---|---|
| mode | string | Check mode: DNS_ONLY is fast, DNS_AND_WHOIS is more accurate (default DNS_AND_WHOIS) |
| domain* | string | Domain name to check availability for (e.g. "example.com", "mybrand.io") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"domain"
],
"properties": {
"mode": {
"enum": [
"DNS_ONLY",
"DNS_AND_WHOIS"
],
"type": "string",
"description": "Check mode: DNS_ONLY is fast, DNS_AND_WHOIS is more accurate (default DNS_AND_WHOIS)"
},
"domain": {
"type": "string",
"description": "Domain name to check availability for (e.g. \"example.com\", \"mybrand.io\")"
}
},
"additionalProperties": false
}Get WHOIS registration data for any domain — registrar, creation/expiry dates, nameservers, registrant contact, status across 374M+ domains and 7,596 TLDs (WhoisXML)
| Argument | Type | Description |
|---|---|---|
| domain* | string | Domain name, IPv4, IPv6, or email address for WHOIS lookup (e.g. "google.com", "8.8.8.8") |
| include_ips | boolean | Include resolved IP addresses for the domain (default false) |
| prefer_fresh | boolean | Get latest WHOIS record even if incomplete (default false) |
| check_availability | boolean | Also check domain availability status (default false) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"description": "Domain name, IPv4, IPv6, or email address for WHOIS lookup (e.g. \"google.com\", \"8.8.8.8\")"
},
"include_ips": {
"type": "boolean",
"description": "Include resolved IP addresses for the domain (default false)"
},
"prefer_fresh": {
"type": "boolean",
"description": "Get latest WHOIS record even if incomplete (default false)"
},
"check_availability": {
"type": "boolean",
"description": "Also check domain availability status (default false)"
}
},
"additionalProperties": false
}Find all domains registered by a person, company, or email — reverse WHOIS lookup for OSINT and brand monitoring (WhoisXML)
| Argument | Type | Description |
|---|---|---|
| keyword* | string | Search keyword to find domains — registrant name, email, company, or address (e.g. "John Smith", "acme.com") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"keyword"
],
"properties": {
"keyword": {
"type": "string",
"description": "Search keyword to find domains — registrant name, email, company, or address (e.g. \"John Smith\", \"acme.com\")"
}
},
"additionalProperties": false
}Discover subdomains for any domain via DNS brute-force enumeration. Returns subdomain names, DNS record types (A/CNAME/MX), resolved IPs, and active/inactive status. Useful for security reconnaissance, asset inventory, and infrastructure mapping (WhoisJSON)
| Argument | Type | Description |
|---|---|---|
| domain* | string | Domain name to discover subdomains (e.g. github.com, example.com) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"minLength": 1,
"description": "Domain name to discover subdomains (e.g. github.com, example.com)"
}
},
"additionalProperties": false
}Validate SSL/TLS certificate for any domain. Returns issuer (org, CN), validity dates, subject CN, wildcard status, key size, and Subject Alternative Names (SAN) list. Useful for security audits, monitoring cert expiration, and verifying HTTPS configuration (WhoisJSON)
| Argument | Type | Description |
|---|---|---|
| domain* | string | Domain name to check SSL certificate (e.g. google.com, apibase.pro) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"minLength": 1,
"description": "Domain name to check SSL certificate (e.g. google.com, apibase.pro)"
}
},
"additionalProperties": false
}Get total edit counts for a Wikimedia project over a date range, bucketed daily or monthly. Filter by editor type (anonymous, group-bot, name-bot, user, or all-editor-types) and page type (content, non-content, or all-page-types). Data: Wikimedia Analytics REST API (wikimedia.org/api/rest_v1), no auth required.
| Argument | Type | Description |
|---|---|---|
| end* | string | End date in YYYYMMDD format (e.g. 20260801) |
| start* | string | Start date in YYYYMMDD format (e.g. 20260801) |
| project* | string | Wikimedia project domain (e.g. en.wikipedia, de.wikipedia, commons.wikimedia) |
| page_type | string | Page namespace type filter (default all-page-types) |
| editor_type | string | Editor type filter (default all-editor-types) |
| granularity | string | Time bucket granularity (default monthly) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"project",
"start",
"end"
],
"properties": {
"end": {
"type": "string",
"pattern": "^\\d{8}$",
"description": "End date in YYYYMMDD format (e.g. 20260801)"
},
"start": {
"type": "string",
"pattern": "^\\d{8}$",
"description": "Start date in YYYYMMDD format (e.g. 20260801)"
},
"project": {
"type": "string",
"minLength": 1,
"description": "Wikimedia project domain (e.g. en.wikipedia, de.wikipedia, commons.wikimedia)"
},
"page_type": {
"enum": [
"all-page-types",
"content",
"non-content"
],
"type": "string",
"description": "Page namespace type filter (default all-page-types)"
},
"editor_type": {
"enum": [
"all-editor-types",
"anonymous",
"group-bot",
"name-bot",
"user"
],
"type": "string",
"description": "Editor type filter (default all-editor-types)"
},
"granularity": {
"enum": [
"daily",
"monthly"
],
"type": "string",
"description": "Time bucket granularity (default monthly)"
}
},
"additionalProperties": false
}Get total pageview counts for a Wikimedia project (e.g. en.wikipedia, de.wikipedia, commons.wikimedia) over a date range, bucketed daily or monthly. Filter by access method (desktop, mobile-web, mobile-app, or all-access) and traffic agent (user, spider, automated, or all-agents). Data: Wikimedia Analytics REST API (wikimedia.org/api/rest_v1), no auth required.
| Argument | Type | Description |
|---|---|---|
| end* | string | End date in YYYYMMDD format (e.g. 20260801) |
| agent | string | Traffic agent filter (default all-agents) |
| start* | string | Start date in YYYYMMDD format (e.g. 20260801) |
| access | string | Access method filter (default all-access) |
| project* | string | Wikimedia project domain (e.g. en.wikipedia, de.wikipedia, commons.wikimedia) |
| granularity | string | Time bucket granularity (default daily) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"project",
"start",
"end"
],
"properties": {
"end": {
"type": "string",
"pattern": "^\\d{8}$",
"description": "End date in YYYYMMDD format (e.g. 20260801)"
},
"agent": {
"enum": [
"all-agents",
"user",
"spider",
"automated"
],
"type": "string",
"description": "Traffic agent filter (default all-agents)"
},
"start": {
"type": "string",
"pattern": "^\\d{8}$",
"description": "Start date in YYYYMMDD format (e.g. 20260801)"
},
"access": {
"enum": [
"all-access",
"desktop",
"mobile-app",
"mobile-web"
],
"type": "string",
"description": "Access method filter (default all-access)"
},
"project": {
"type": "string",
"minLength": 1,
"description": "Wikimedia project domain (e.g. en.wikipedia, de.wikipedia, commons.wikimedia)"
},
"granularity": {
"enum": [
"daily",
"monthly"
],
"type": "string",
"description": "Time bucket granularity (default daily)"
}
},
"additionalProperties": false
}Get pageview history for one specific article on a Wikimedia project over a date range, bucketed daily or monthly. Filter by access method and traffic agent. Use after wikimedia-analytics.pageviews_top to track trend history for a discovered article. Data: Wikimedia Analytics REST API (wikimedia.org/api/rest_v1), no auth required.
| Argument | Type | Description |
|---|---|---|
| end* | string | End date in YYYYMMDD format (e.g. 20260801) |
| agent | string | Traffic agent filter (default all-agents) |
| start* | string | Start date in YYYYMMDD format (e.g. 20260801) |
| access | string | Access method filter (default all-access) |
| article* | string | Article title, spaces or underscores accepted (e.g. Albert_Einstein) |
| project* | string | Wikimedia project domain (e.g. en.wikipedia, de.wikipedia, commons.wikimedia) |
| granularity | string | Time bucket granularity (default daily) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"project",
"article",
"start",
"end"
],
"properties": {
"end": {
"type": "string",
"pattern": "^\\d{8}$",
"description": "End date in YYYYMMDD format (e.g. 20260801)"
},
"agent": {
"enum": [
"all-agents",
"user",
"spider",
"automated"
],
"type": "string",
"description": "Traffic agent filter (default all-agents)"
},
"start": {
"type": "string",
"pattern": "^\\d{8}$",
"description": "Start date in YYYYMMDD format (e.g. 20260801)"
},
"access": {
"enum": [
"all-access",
"desktop",
"mobile-app",
"mobile-web"
],
"type": "string",
"description": "Access method filter (default all-access)"
},
"article": {
"type": "string",
"minLength": 1,
"description": "Article title, spaces or underscores accepted (e.g. Albert_Einstein)"
},
"project": {
"type": "string",
"minLength": 1,
"description": "Wikimedia project domain (e.g. en.wikipedia, de.wikipedia, commons.wikimedia)"
},
"granularity": {
"enum": [
"daily",
"monthly"
],
"type": "string",
"description": "Time bucket granularity (default daily)"
}
},
"additionalProperties": false
}List the most-viewed articles on a Wikimedia project for a single day, or for a full month with day="all-days". Returns each article title, view count, and rank. Filter by access method (desktop, mobile-web, mobile-app, or all-access). Data: Wikimedia Analytics REST API (wikimedia.org/api/rest_v1), no auth required.
| Argument | Type | Description |
|---|---|---|
| day* | string | 2-digit day (e.g. 01), or "all-days" for the monthly top list |
| year* | string | 4-digit year (e.g. 2026) |
| month* | string | 2-digit month (e.g. 08) |
| access | string | Access method filter (default all-access) |
| project* | string | Wikimedia project domain (e.g. en.wikipedia, de.wikipedia, commons.wikimedia) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"project",
"year",
"month",
"day"
],
"properties": {
"day": {
"type": "string",
"pattern": "^(\\d{2}|all-days)$",
"description": "2-digit day (e.g. 01), or \"all-days\" for the monthly top list"
},
"year": {
"type": "string",
"pattern": "^\\d{4}$",
"description": "4-digit year (e.g. 2026)"
},
"month": {
"type": "string",
"pattern": "^\\d{2}$",
"description": "2-digit month (e.g. 08)"
},
"access": {
"enum": [
"all-access",
"desktop",
"mobile-app",
"mobile-web"
],
"type": "string",
"description": "Access method filter (default all-access)"
},
"project": {
"type": "string",
"minLength": 1,
"description": "Wikimedia project domain (e.g. en.wikipedia, de.wikipedia, commons.wikimedia)"
}
},
"additionalProperties": false
}List media files inside a Wikimedia Commons category (e.g. "Category:Eiffel Tower"), with a pagination cursor for large categories. Returns file titles, page IDs, and description-page URLs — useful for browsing a curated topic/collection instead of free-text search. Data: commons.wikimedia.org (MediaWiki Action API), no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of files to return (1-50, default 20) |
| cursor | string | Pagination cursor from a previous call's next_cursor field, to fetch the next page |
| category* | string | Commons category name, with or without the "Category:" prefix (e.g. "Category:Eiffel Tower") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"category"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of files to return (1-50, default 20)"
},
"cursor": {
"type": "string",
"description": "Pagination cursor from a previous call's next_cursor field, to fetch the next page"
},
"category": {
"type": "string",
"minLength": 1,
"description": "Commons category name, with or without the \"Category:\" prefix (e.g. \"Category:Eiffel Tower\")"
}
},
"additionalProperties": false
}Get full metadata for a specific Wikimedia Commons file by title (e.g. "File:Example.jpg"): direct download URL, dimensions, size, MIME type, description, artist/credit, license name and URL, capture date, and category list. Use after wikimedia-commons.search or wikimedia-commons.category_files to resolve a title into a usable, licensed download link. Data: commons.wikimedia.org (MediaWiki Action API), no auth required.
| Argument | Type | Description |
|---|---|---|
| title* | string | Commons file title, with or without the "File:" prefix (e.g. "File:Tour Eiffel Wikimedia Commons.jpg") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"title"
],
"properties": {
"title": {
"type": "string",
"minLength": 1,
"description": "Commons file title, with or without the \"File:\" prefix (e.g. \"File:Tour Eiffel Wikimedia Commons.jpg\")"
}
},
"additionalProperties": false
}Get a random sample of Wikimedia Commons media files (titles, page IDs, and description-page URLs). Useful for discovery, sampling, or "surprise me" style prompts. Data: commons.wikimedia.org (MediaWiki Action API), no auth required.
| Argument | Type | Description |
|---|---|---|
| count | integer | Number of random files to return (1-20, default 5) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"count": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Number of random files to return (1-20, default 5)"
}
},
"additionalProperties": false
}Search Wikimedia Commons (100M+ freely-licensed images, audio, and video files) by keyword. Returns matching file titles, page IDs, a stripped text snippet, file size, last-edit timestamp, and the Commons description-page URL. Use wikimedia-commons.file_info afterwards for full license, dimensions, and download URL. Data: commons.wikimedia.org (MediaWiki Action API), no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of results to return (1-50, default 10) |
| query* | string | Search keywords for Wikimedia Commons files (e.g. "Eiffel Tower") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of results to return (1-50, default 10)"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Search keywords for Wikimedia Commons files (e.g. \"Eiffel Tower\")"
}
},
"additionalProperties": false
}Get historical events, births, deaths, holidays, or editor-selected highlights that occurred on a given month/day across history, as curated by Wikipedia. Select category with type (births, deaths, events, holidays, selected) and the language edition with lang (default en). Data: Wikipedia REST API (wikipedia.org/api/rest_v1/feed/onthisday), no auth required.
| Argument | Type | Description |
|---|---|---|
| day* | string | 2-digit day of month (e.g. 30) |
| lang | string | Wikipedia language edition subdomain code (default en, e.g. de, fr, ja, zh-yue) |
| type* | string | Category of historical events to return |
| month* | string | 2-digit month (e.g. 08 for August) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"type",
"month",
"day"
],
"properties": {
"day": {
"type": "string",
"pattern": "^\\d{2}$",
"description": "2-digit day of month (e.g. 30)"
},
"lang": {
"type": "string",
"pattern": "^[a-z]{2,3}(-[a-z0-9]{1,8})?$",
"description": "Wikipedia language edition subdomain code (default en, e.g. de, fr, ja, zh-yue)"
},
"type": {
"enum": [
"births",
"deaths",
"events",
"holidays",
"selected"
],
"type": "string",
"description": "Category of historical events to return"
},
"month": {
"type": "string",
"pattern": "^\\d{2}$",
"description": "2-digit month (e.g. 08 for August)"
}
},
"additionalProperties": false
}List all images, audio, and video files referenced in a Wikipedia article, with source URLs and gallery/lead-image flags. Select the language edition with lang (default en). Data: Wikipedia REST API (wikipedia.org/api/rest_v1/page/media-list), no auth required.
| Argument | Type | Description |
|---|---|---|
| lang | string | Wikipedia language edition subdomain code (default en, e.g. de, fr, ja, zh-yue) |
| title* | string | Article title, spaces or underscores accepted (e.g. Albert_Einstein) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"title"
],
"properties": {
"lang": {
"type": "string",
"pattern": "^[a-z]{2,3}(-[a-z0-9]{1,8})?$",
"description": "Wikipedia language edition subdomain code (default en, e.g. de, fr, ja, zh-yue)"
},
"title": {
"type": "string",
"minLength": 1,
"description": "Article title, spaces or underscores accepted (e.g. Albert_Einstein)"
}
},
"additionalProperties": false
}Full-text search across Wikipedia article titles and content. Returns matching page titles, highlighted excerpts, short descriptions, and thumbnails, ranked by relevance. Select the language edition with lang (default en). Data: MediaWiki REST API (wikipedia.org/w/rest.php/v1), no auth required.
| Argument | Type | Description |
|---|---|---|
| lang | string | Wikipedia language edition subdomain code (default en, e.g. de, fr, ja, zh-yue) |
| limit | integer | Maximum number of results to return, 1-50 (default 10) |
| query* | string | Full-text search query (e.g. "einstein relativity") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"lang": {
"type": "string",
"pattern": "^[a-z]{2,3}(-[a-z0-9]{1,8})?$",
"description": "Wikipedia language edition subdomain code (default en, e.g. de, fr, ja, zh-yue)"
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of results to return, 1-50 (default 10)"
},
"query": {
"type": "string",
"minLength": 1,
"description": "Full-text search query (e.g. \"einstein relativity\")"
}
},
"additionalProperties": false
}Get the intro extract, short description, thumbnail, and canonical article URL for a Wikipedia article by title. Select the language edition with lang (default en, e.g. de, fr, ja). Data: Wikipedia REST API (wikipedia.org/api/rest_v1), no auth required.
| Argument | Type | Description |
|---|---|---|
| lang | string | Wikipedia language edition subdomain code (default en, e.g. de, fr, ja, zh-yue) |
| title* | string | Article title, spaces or underscores accepted (e.g. Albert_Einstein) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"title"
],
"properties": {
"lang": {
"type": "string",
"pattern": "^[a-z]{2,3}(-[a-z0-9]{1,8})?$",
"description": "Wikipedia language edition subdomain code (default en, e.g. de, fr, ja, zh-yue)"
},
"title": {
"type": "string",
"minLength": 1,
"description": "Article title, spaces or underscores accepted (e.g. Albert_Einstein)"
}
},
"additionalProperties": false
}List all images and media files embedded in a Wikipedia article — returns file titles, type (image/video/audio), srcset URLs at multiple resolutions, and caption text. Useful for enriching responses with article visuals. No auth required. Data: Wikipedia contributors, CC BY-SA 4.0.
| Argument | Type | Description |
|---|---|---|
| title* | string | Wikipedia article title (e.g. "Eiffel_Tower", "Milky_Way"). Use underscores for spaces. Returns images and media files embedded in the article. |
| language | string | Two-letter Wikipedia language code (default "en"). Media availability varies across language editions. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"title"
],
"properties": {
"title": {
"type": "string",
"description": "Wikipedia article title (e.g. \"Eiffel_Tower\", \"Milky_Way\"). Use underscores for spaces. Returns images and media files embedded in the article."
},
"language": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Two-letter Wikipedia language code (default \"en\"). Media availability varies across language editions."
}
},
"additionalProperties": false
}Fetch the introductory summary of any Wikipedia article — returns plain-text extract, short description, thumbnail image URL, Wikidata item ID, and the canonical article URL. Supports 55+ Wikipedia language editions via the optional language parameter. Ideal for quick entity lookups: people, places, concepts, events, organizations. No auth required. Data: Wikipedia contributors, CC BY-SA 4.0 (attribution included in response).
| Argument | Type | Description |
|---|---|---|
| title* | string | Wikipedia article title exactly as it appears in the URL (e.g. "Python_(programming_language)", "Albert_Einstein"). Use underscores for spaces. Case-sensitive. |
| language | string | Two-letter Wikipedia language code (e.g. "en" for English, "de" for German, "fr" for French). Defaults to English ("en"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"title"
],
"properties": {
"title": {
"type": "string",
"description": "Wikipedia article title exactly as it appears in the URL (e.g. \"Python_(programming_language)\", \"Albert_Einstein\"). Use underscores for spaces. Case-sensitive."
},
"language": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Two-letter Wikipedia language code (e.g. \"en\" for English, \"de\" for German, \"fr\" for French). Defaults to English (\"en\")."
}
},
"additionalProperties": false
}Fetch Wikipedia's daily curated highlights for any date — returns the Today's Featured Article (with extract and thumbnail), the Featured Image of the Day (with artist credit), and the top 10 most-read articles. English only. No auth required. Data: Wikipedia contributors, CC BY-SA 4.0.
| Argument | Type | Description |
|---|---|---|
| date | string | Date in YYYY-MM-DD format to fetch featured content for (e.g. "2024-07-04"). Defaults to today. Returns the daily featured article, featured image, and top 10 most-read articles. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Date in YYYY-MM-DD format to fetch featured content for (e.g. \"2024-07-04\"). Defaults to today. Returns the daily featured article, featured image, and top 10 most-read articles."
}
},
"additionalProperties": false
}Retrieve historical events that occurred on a given month/day across all years — returns event text, year, and links to up to 3 related Wikipedia articles per event. Useful for history timelines, date-based trivia, and anniversary lookups. No auth required. Data: Wikipedia contributors, CC BY-SA 4.0.
| Argument | Type | Description |
|---|---|---|
| date | string | Date in YYYY-MM-DD format (e.g. "2024-07-04"). Only month and day are used — year is ignored. Returns historical events that happened on this month/day across all years. Defaults to today. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Date in YYYY-MM-DD format (e.g. \"2024-07-04\"). Only month and day are used — year is ignored. Returns historical events that happened on this month/day across all years. Defaults to today."
}
},
"additionalProperties": false
}Search Wikipedia for articles matching a keyword or phrase — returns ranked results with article titles, Wikidata descriptions, content excerpts, and thumbnail images. Supports 55+ language editions. Up to 50 results per query. No auth required. Data: Wikipedia contributors, CC BY-SA 4.0.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of results to return (1–50, default 10). |
| query* | string | Search query string (e.g. "machine learning", "World War II", "quantum physics"). Searches article titles and content snippets. |
| language | string | Two-letter Wikipedia language code (default "en" for English). Use "es" for Spanish, "zh" for Chinese, "ar" for Arabic, etc. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of results to return (1–50, default 10)."
},
"query": {
"type": "string",
"minLength": 1,
"description": "Search query string (e.g. \"machine learning\", \"World War II\", \"quantum physics\"). Searches article titles and content snippets."
},
"language": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Two-letter Wikipedia language code (default \"en\" for English). Use \"es\" for Spanish, \"zh\" for Chinese, \"ar\" for Arabic, etc."
}
},
"additionalProperties": false
}Get import tariff statistics from the World Bank WITS (UNCTAD TRAINS data): MFN and applied simple/weighted average tariffs, maximum rates and duty-free shares for a reporter country, partner, product/sector and one or more years. Data: wits.worldbank.org, no auth required.
| Argument | Type | Description |
|---|---|---|
| year* | string | Year or comma-separated years, max 10 (e.g. "2020" or "2018,2019,2020"). |
| partner | string | Partner country/region ISO3 code (default "wld" = World). E.g. "chn", "mex". |
| product | string | Product/sector code (default "Total"), sector name, or HS code. |
| reporter* | string | Reporting country ISO3 code (e.g. "usa", "chn", "deu"). |
| indicator | string | Tariff indicator code (default "MFN-WGHTD-AVRG" = MFN weighted average tariff %). Others: "MFN-SMPL-AVRG", "AHS-WGHTD-AVRG" (applied weighted avg), "MFN-MXMM-RT", "MFN-DTY-FR-TRFF-LNS-SHR". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"reporter",
"year"
],
"properties": {
"year": {
"type": "string",
"minLength": 4,
"description": "Year or comma-separated years, max 10 (e.g. \"2020\" or \"2018,2019,2020\")."
},
"partner": {
"type": "string",
"description": "Partner country/region ISO3 code (default \"wld\" = World). E.g. \"chn\", \"mex\"."
},
"product": {
"type": "string",
"description": "Product/sector code (default \"Total\"), sector name, or HS code."
},
"reporter": {
"type": "string",
"minLength": 2,
"description": "Reporting country ISO3 code (e.g. \"usa\", \"chn\", \"deu\")."
},
"indicator": {
"type": "string",
"description": "Tariff indicator code (default \"MFN-WGHTD-AVRG\" = MFN weighted average tariff %). Others: \"MFN-SMPL-AVRG\", \"AHS-WGHTD-AVRG\" (applied weighted avg), \"MFN-MXMM-RT\", \"MFN-DTY-FR-TRFF-LNS-SHR\"."
}
},
"additionalProperties": false
}Get international trade statistics from the World Bank WITS (UN Comtrade data): export/import value, trade share and partner indicators for a reporter country, partner (default World), product/sector and one or more years. Values in US$ thousand for value indicators. Data: wits.worldbank.org, no auth required.
| Argument | Type | Description |
|---|---|---|
| year* | string | Year or comma-separated years, max 10 (e.g. "2020" or "2018,2019,2020"). |
| partner | string | Partner country/region ISO3 code (default "wld" = World). E.g. "chn", "mex". |
| product | string | Product/sector code (default "Total"). Sector codes like "16-24_FoodProd", "27-27_Fuels", "Food", or HS codes. |
| reporter* | string | Reporting country ISO3 code (e.g. "usa", "chn", "deu"). |
| indicator | string | Trade indicator code (default "XPRT-TRD-VL" = export value, US$ thousand). Others: "MPRT-TRD-VL" (import value), "TRD-VL" (total trade), "XPRT-PRTNR-SHR". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"reporter",
"year"
],
"properties": {
"year": {
"type": "string",
"minLength": 4,
"description": "Year or comma-separated years, max 10 (e.g. \"2020\" or \"2018,2019,2020\")."
},
"partner": {
"type": "string",
"description": "Partner country/region ISO3 code (default \"wld\" = World). E.g. \"chn\", \"mex\"."
},
"product": {
"type": "string",
"description": "Product/sector code (default \"Total\"). Sector codes like \"16-24_FoodProd\", \"27-27_Fuels\", \"Food\", or HS codes."
},
"reporter": {
"type": "string",
"minLength": 2,
"description": "Reporting country ISO3 code (e.g. \"usa\", \"chn\", \"deu\")."
},
"indicator": {
"type": "string",
"description": "Trade indicator code (default \"XPRT-TRD-VL\" = export value, US$ thousand). Others: \"MPRT-TRD-VL\" (import value), \"TRD-VL\" (total trade), \"XPRT-PRTNR-SHR\"."
}
},
"additionalProperties": false
}Get 30-year monthly climate normals for a city — average max/min/mean temperature and rainfall for each of the 12 months, sourced from the WMO climatological standard normals (typically 1961-1990 or 1991-2020 depending on the station). Requires a WMO city ID (see wmo-weather.city_search first, e.g. 219 for Kabul). Useful for "what is the weather usually like in [city] in [month]" style questions, distinct from wmo-weather.forecast which covers the next 7 days. Data: worldweather.wmo.int, no auth required.
| Argument | Type | Description |
|---|---|---|
| city_id* | integer | WMO city ID, e.g. 219 (Kabul) or 183 (Tokyo). Discover IDs with wmo-weather.city_search. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"city_id"
],
"properties": {
"city_id": {
"type": "integer",
"description": "WMO city ID, e.g. 219 (Kabul) or 183 (Tokyo). Discover IDs with wmo-weather.city_search.",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Get the official 7-day weather forecast for a city, sourced directly from that country's National Meteorological and Hydrological Service (NMHS) — the same forecast shown on the government weather portal, not a third-party model. Requires a WMO city ID (see wmo-weather.city_search first, e.g. 183 for Tokyo). Returns daily min/max temperature and weather condition. Forecast coverage and update frequency vary by NMHS; some cities may return fewer days or none if the source NMHS has not published one. Data: worldweather.wmo.int, no auth required.
| Argument | Type | Description |
|---|---|---|
| city_id* | integer | WMO city ID, e.g. 219 (Kabul) or 183 (Tokyo). Discover IDs with wmo-weather.city_search. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"city_id"
],
"properties": {
"city_id": {
"type": "integer",
"description": "WMO city ID, e.g. 219 (Kabul) or 183 (Tokyo). Discover IDs with wmo-weather.city_search.",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Search the WMO World Weather Information Service directory of ~2,600 cities by city or country name (case-insensitive partial match). Returns each match's WMO city ID, needed by wmo-weather.forecast and wmo-weather.climate_normals. Example: query="Tokyo" or query="Argentina". Data: worldweather.wmo.int, no auth required.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of matching cities to return (default 20, max 50). |
| query* | string | City or country name to search for (case-insensitive partial match), e.g. "Tokyo", "Kabul", or "Argentina". Matches against ~2,600 cities in the WMO city directory. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Maximum number of matching cities to return (default 20, max 50)."
},
"query": {
"type": "string",
"maxLength": 100,
"minLength": 2,
"description": "City or country name to search for (case-insensitive partial match), e.g. \"Tokyo\", \"Kabul\", or \"Argentina\". Matches against ~2,600 cities in the WMO city directory."
}
},
"additionalProperties": false
}Get a derived extreme-climate index for a country: hot days over 35C/40C (hd35/hd40), frost days (fd), max consecutive dry/wet days (cdd/cwd), heavy precipitation days over 20mm (r20mm), or tropical nights (tr23). Defaults to the 1995-2014 observed baseline (scenario "historical"), or pass an SSP scenario + future period for a projection. Data: World Bank Climate Change Knowledge Portal (CMIP6 model ensemble), no auth required.
| Argument | Type | Description |
|---|---|---|
| index* | string | Extreme-climate index: "hd35"/"hd40" (annual count of days with max temp > 35°C/40°C), "fd" (frost days, min temp < 0°C), "cdd" (max consecutive dry days, precip < 1mm), "cwd" (max consecutive wet days, precip >= 1mm), "r20mm" (days with precip > 20mm), "tr23" (tropical nights, min temp > 23°C). |
| period | string | Future 20-year projection window, only used when scenario is not "historical". Defaults to "2040-2059". |
| country* | string | Geography code: ISO3166 alpha-3 country code (e.g. "BRA", "USA", "IND"), or a special aggregate code such as "all_countries" (every country in one call) or "region_SAS" (South Asia region, admin1-level breakdown included — replace SAS with any World Bank region code). |
| scenario | string | "historical" (default) returns the 1995-2014 observed baseline. A CMIP6 SSP scenario ("ssp126"/"ssp245"/"ssp370"/"ssp585") returns a future projection for the period below. |
| aggregation | string | Time aggregation of the returned values. "annual" returns one value per year, "monthly" returns 12 values per year, "seasonal" returns 4 values per year (DJF/MAM/JJA/SON). Defaults to "annual". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"index",
"country"
],
"properties": {
"index": {
"enum": [
"hd35",
"hd40",
"fd",
"cdd",
"cwd",
"r20mm",
"tr23"
],
"type": "string",
"description": "Extreme-climate index: \"hd35\"/\"hd40\" (annual count of days with max temp > 35°C/40°C), \"fd\" (frost days, min temp < 0°C), \"cdd\" (max consecutive dry days, precip < 1mm), \"cwd\" (max consecutive wet days, precip >= 1mm), \"r20mm\" (days with precip > 20mm), \"tr23\" (tropical nights, min temp > 23°C)."
},
"period": {
"enum": [
"2020-2039",
"2040-2059",
"2060-2079",
"2080-2099"
],
"type": "string",
"description": "Future 20-year projection window, only used when scenario is not \"historical\". Defaults to \"2040-2059\"."
},
"country": {
"type": "string",
"minLength": 1,
"description": "Geography code: ISO3166 alpha-3 country code (e.g. \"BRA\", \"USA\", \"IND\"), or a special aggregate code such as \"all_countries\" (every country in one call) or \"region_SAS\" (South Asia region, admin1-level breakdown included — replace SAS with any World Bank region code)."
},
"scenario": {
"enum": [
"historical",
"ssp126",
"ssp245",
"ssp370",
"ssp585"
],
"type": "string",
"description": "\"historical\" (default) returns the 1995-2014 observed baseline. A CMIP6 SSP scenario (\"ssp126\"/\"ssp245\"/\"ssp370\"/\"ssp585\") returns a future projection for the period below."
},
"aggregation": {
"enum": [
"annual",
"monthly",
"seasonal"
],
"type": "string",
"description": "Time aggregation of the returned values. \"annual\" returns one value per year, \"monthly\" returns 12 values per year, \"seasonal\" returns 4 values per year (DJF/MAM/JJA/SON). Defaults to \"annual\"."
}
},
"additionalProperties": false
}Get the observed historical baseline climatology (1995-2014 average) for a country: mean temperature (tas), max/min temperature (tasmax/tasmin), or precipitation (pr). Choose annual, monthly, or seasonal aggregation. Use "all_countries" or "region_XXX" as country to fetch every country/sub-region in one call. Data: World Bank Climate Change Knowledge Portal (CMIP6 model ensemble), no auth required.
| Argument | Type | Description |
|---|---|---|
| country* | string | Geography code: ISO3166 alpha-3 country code (e.g. "BRA", "USA", "IND"), or a special aggregate code such as "all_countries" (every country in one call) or "region_SAS" (South Asia region, admin1-level breakdown included — replace SAS with any World Bank region code). |
| variable* | string | Climate variable: "tas" (mean near-surface air temperature, °C), "tasmax" (mean daily maximum temperature, °C), "tasmin" (mean daily minimum temperature, °C), "pr" (precipitation, mm). |
| aggregation | string | Time aggregation of the returned values. "annual" returns one value per year, "monthly" returns 12 values per year, "seasonal" returns 4 values per year (DJF/MAM/JJA/SON). Defaults to "annual". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"variable",
"country"
],
"properties": {
"country": {
"type": "string",
"minLength": 1,
"description": "Geography code: ISO3166 alpha-3 country code (e.g. \"BRA\", \"USA\", \"IND\"), or a special aggregate code such as \"all_countries\" (every country in one call) or \"region_SAS\" (South Asia region, admin1-level breakdown included — replace SAS with any World Bank region code)."
},
"variable": {
"enum": [
"tas",
"tasmax",
"tasmin",
"pr"
],
"type": "string",
"description": "Climate variable: \"tas\" (mean near-surface air temperature, °C), \"tasmax\" (mean daily maximum temperature, °C), \"tasmin\" (mean daily minimum temperature, °C), \"pr\" (precipitation, mm)."
},
"aggregation": {
"enum": [
"annual",
"monthly",
"seasonal"
],
"type": "string",
"description": "Time aggregation of the returned values. \"annual\" returns one value per year, \"monthly\" returns 12 values per year, \"seasonal\" returns 4 values per year (DJF/MAM/JJA/SON). Defaults to \"annual\"."
}
},
"additionalProperties": false
}Get a CMIP6 future climate projection for a country: mean temperature (tas), max/min temperature (tasmax/tasmin), or precipitation (pr), under an SSP emission scenario (ssp126 low / ssp245 intermediate / ssp370 high / ssp585 very high) and a future 20-year window (2020-2039 through 2080-2099). Choose annual, monthly, or seasonal aggregation. Data: World Bank Climate Change Knowledge Portal (CMIP6 model ensemble), no auth required.
| Argument | Type | Description |
|---|---|---|
| period | string | Future 20-year projection window. Defaults to "2040-2059". |
| country* | string | Geography code: ISO3166 alpha-3 country code (e.g. "BRA", "USA", "IND"), or a special aggregate code such as "all_countries" (every country in one call) or "region_SAS" (South Asia region, admin1-level breakdown included — replace SAS with any World Bank region code). |
| scenario* | string | CMIP6 Shared Socioeconomic Pathway emission scenario: "ssp126" (low emissions, strong mitigation), "ssp245" (intermediate emissions), "ssp370" (high emissions), "ssp585" (very high emissions, fossil-fuel-intensive). |
| variable* | string | Climate variable: "tas" (mean near-surface air temperature, °C), "tasmax" (mean daily maximum temperature, °C), "tasmin" (mean daily minimum temperature, °C), "pr" (precipitation, mm). |
| aggregation | string | Time aggregation of the returned values. "annual" returns one value per year, "monthly" returns 12 values per year, "seasonal" returns 4 values per year (DJF/MAM/JJA/SON). Defaults to "annual". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"variable",
"country",
"scenario"
],
"properties": {
"period": {
"enum": [
"2020-2039",
"2040-2059",
"2060-2079",
"2080-2099"
],
"type": "string",
"description": "Future 20-year projection window. Defaults to \"2040-2059\"."
},
"country": {
"type": "string",
"minLength": 1,
"description": "Geography code: ISO3166 alpha-3 country code (e.g. \"BRA\", \"USA\", \"IND\"), or a special aggregate code such as \"all_countries\" (every country in one call) or \"region_SAS\" (South Asia region, admin1-level breakdown included — replace SAS with any World Bank region code)."
},
"scenario": {
"enum": [
"ssp126",
"ssp245",
"ssp370",
"ssp585"
],
"type": "string",
"description": "CMIP6 Shared Socioeconomic Pathway emission scenario: \"ssp126\" (low emissions, strong mitigation), \"ssp245\" (intermediate emissions), \"ssp370\" (high emissions), \"ssp585\" (very high emissions, fossil-fuel-intensive)."
},
"variable": {
"enum": [
"tas",
"tasmax",
"tasmin",
"pr"
],
"type": "string",
"description": "Climate variable: \"tas\" (mean near-surface air temperature, °C), \"tasmax\" (mean daily maximum temperature, °C), \"tasmin\" (mean daily minimum temperature, °C), \"pr\" (precipitation, mm)."
},
"aggregation": {
"enum": [
"annual",
"monthly",
"seasonal"
],
"type": "string",
"description": "Time aggregation of the returned values. \"annual\" returns one value per year, \"monthly\" returns 12 values per year, \"seasonal\" returns 4 values per year (DJF/MAM/JJA/SON). Defaults to \"annual\"."
}
},
"additionalProperties": false
}Get country details by ISO code (US, GB, DE, JP). Returns name, population, area, capital, currencies, languages, flag (REST Countries)
| Argument | Type | Description |
|---|---|---|
| code* | string | ISO 3166-1 country code — alpha-2 ("US") or alpha-3 ("USA") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"code"
],
"properties": {
"code": {
"type": "string",
"maxLength": 3,
"minLength": 2,
"description": "ISO 3166-1 country code — alpha-2 (\"US\") or alpha-3 (\"USA\")"
}
},
"additionalProperties": false
}Search country by name — population, area, capital, languages, currencies, timezones, flag, region, borders. 250+ countries. No auth, free (REST Countries)
| Argument | Type | Description |
|---|---|---|
| name* | string | Country name to search (e.g. "United States", "Germany", "Japan") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"minLength": 2,
"description": "Country name to search (e.g. \"United States\", \"Germany\", \"Japan\")"
}
},
"additionalProperties": false
}Search 16,000+ World Bank development indicators by keyword or topic — GDP, population, poverty, education, health, environment, trade. Returns indicator ID, name, source, description, topics. Use indicator IDs with finance.country_data for time-series data (World Bank, CC BY 4.0)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Results per page (1-50, default 20) |
| topic | string | Topic ID filter (1=Agriculture, 3=Economy, 4=Education, 6=Environment, 8=Health, 11=Poverty, 14=Science, 19=Climate Change) |
| source | string | Source ID filter (2=World Development Indicators, 11=Africa, 57=Gender) |
| keyword | string | Search keyword for indicators (e.g. "gdp", "population", "poverty", "education", "co2 emissions") |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Results per page (1-50, default 20)"
},
"topic": {
"type": "string",
"description": "Topic ID filter (1=Agriculture, 3=Economy, 4=Education, 6=Environment, 8=Health, 11=Poverty, 14=Science, 19=Climate Change)"
},
"source": {
"type": "string",
"description": "Source ID filter (2=World Development Indicators, 11=Africa, 57=Gender)"
},
"keyword": {
"type": "string",
"description": "Search keyword for indicators (e.g. \"gdp\", \"population\", \"poverty\", \"education\", \"co2 emissions\")"
}
},
"additionalProperties": false
}Get the full taxonomic classification tree for a marine taxon by AphiaID. Returns the complete nested hierarchy from Superdomain/Biota down to the queried taxon — each node has AphiaID, rank, and scientific name. Ideal for building taxonomic trees, verifying rank placement, or navigating the WoRMS backbone. Source: World Register of Marine Species, CC BY 4.0.
| Argument | Type | Description |
|---|---|---|
| aphia_id* | integer | WoRMS AphiaID of the taxon whose full classification tree you want to retrieve (e.g. 137102 for Orcinus orca). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"aphia_id"
],
"properties": {
"aphia_id": {
"type": "integer",
"description": "WoRMS AphiaID of the taxon whose full classification tree you want to retrieve (e.g. 137102 for Orcinus orca).",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Retrieve the full WoRMS Aphia record for a taxon by its AphiaID. Returns complete taxonomy (kingdom to genus), accepted name and authority, valid AphiaID for synonyms, citation string, LSID (life science identifier), habitat flags, and last-modified date. Use this to resolve synonym chains — if status is "unaccepted", valid_AphiaID points to the accepted taxon. Source: World Register of Marine Species, CC BY 4.0.
| Argument | Type | Description |
|---|---|---|
| aphia_id* | integer | WoRMS AphiaID — the unique numeric identifier for a taxon (e.g. 137102 for Orcinus orca). Obtain via worms.species.search. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"aphia_id"
],
"properties": {
"aphia_id": {
"type": "integer",
"description": "WoRMS AphiaID — the unique numeric identifier for a taxon (e.g. 137102 for Orcinus orca). Obtain via worms.species.search.",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Search 240K+ accepted marine species by scientific or partial name in the World Register of Marine Species (WoRMS). Returns AphiaID, accepted scientific name, authority, taxonomic status, kingdom/phylum/class/order/family/genus, LSID, and habitat flags (marine/brackish/freshwater/terrestrial/extinct). Supports fuzzy matching and optional restriction to marine-only taxa. Use the AphiaID from results with worms.species.details, worms.species.classification, or worms.species.vernaculars. Source: WoRMS Editorial Board, CC BY 4.0.
| Argument | Type | Description |
|---|---|---|
| like | boolean | Enable fuzzy/partial match (default true). Set false for exact scientific name match only. |
| name* | string | Scientific or partial name to search (e.g. "Orcinus orca", "Tursiops", "Gadus morhua"). Case-insensitive. |
| offset | integer | Pagination offset — return records starting at this position (default 1, max 50 per page). |
| marine_only | boolean | Restrict results to marine species only (default true). Set false to include brackish/freshwater/terrestrial. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"like": {
"type": "boolean",
"description": "Enable fuzzy/partial match (default true). Set false for exact scientific name match only."
},
"name": {
"type": "string",
"description": "Scientific or partial name to search (e.g. \"Orcinus orca\", \"Tursiops\", \"Gadus morhua\"). Case-insensitive."
},
"offset": {
"type": "integer",
"minimum": 1,
"description": "Pagination offset — return records starting at this position (default 1, max 50 per page)."
},
"marine_only": {
"type": "boolean",
"description": "Restrict results to marine species only (default true). Set false to include brackish/freshwater/terrestrial."
}
},
"additionalProperties": false
}Retrieve all registered vernacular (common) names for a marine taxon by AphiaID across all languages. Each entry includes the common name, ISO language code, and full language name. For example, AphiaID 137102 (Orcinus orca) returns "killer whale" (English), "orca" (Spanish), "épaulard" (French), and dozens more. Useful for multilingual species identification, biodiversity apps, and natural-history content. Source: World Register of Marine Species, CC BY 4.0.
| Argument | Type | Description |
|---|---|---|
| aphia_id* | integer | WoRMS AphiaID of the taxon whose vernacular (common) names you want — returns names across all registered languages (e.g. "killer whale" in English, "orca" in Spanish). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"aphia_id"
],
"properties": {
"aphia_id": {
"type": "integer",
"description": "WoRMS AphiaID of the taxon whose vernacular (common) names you want — returns names across all registered languages (e.g. \"killer whale\" in English, \"orca\" in Spanish).",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Retrieve official World Trade Organization time-series data for trade and tariff indicators by reporting economy and year. Covers 58 indicators across three domains: tariff profiles (MFN applied/bound tariff averages, HS-level ad valorem duties by product), merchandise trade values (exports and imports by product group, quarterly and monthly), and commercial services trade (exports and imports by sector and partner). Returns structured data rows with indicator code, reporting economy, partner economy (for bilateral flows), product/sector classification, year, value, and unit. Example queries: US MFN applied tariff in 2022 (indicator TP_A_0010, reporter 840), China merchandise exports 2018-2022 (ITS_MTV_AX, reporter 156), EU commercial services exports (ITS_CS_AX6, reporter 097). Use wto.trade.indicators to discover indicator codes with their categories, units, and year ranges. Use wto.trade.reporters to look up 3-digit economy codes. Data is updated annually/quarterly by WTO Statistics Division. Free tier: 10 req/s.
| Argument | Type | Description |
|---|---|---|
| years | string | Comma-separated year(s) or year-ranges to retrieve (e.g. "2022", "2020,2021,2022", "2015-2022"). Omit to get all available years for the indicator. Most tariff/trade indicators cover 2005–2024. |
| max_rows | integer | Maximum number of data rows to return (1–500, default 100). Lower values are faster; raise for multi-year/multi-country queries. |
| partner_codes | string | Comma-separated partner economy code(s) for bilateral trade data. Only applicable to indicators that have partner dimension (bilateral trade flows). Use "000" for world total. Omit for indicators without partner dimension (e.g. tariffs). |
| reporter_codes* | string | Comma-separated WTO reporter economy code(s). Use the 3-digit numeric codes from wto.trade.reporters — e.g. "840" for USA, "276" for Germany, "156" for China, "392" for Japan, "000" for World aggregate. Multiple codes accepted (e.g. "840,276,156"). |
| indicator_codes* | string | Comma-separated WTO indicator code(s) to retrieve data for. Examples: "TP_A_0010" (MFN applied tariff, all products), "ITS_MTV_AX" (merchandise exports by product group, annual), "ITS_CS_AX6" (commercial services exports by sector). Use wto.trade.indicators to discover available codes. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"indicator_codes",
"reporter_codes"
],
"properties": {
"years": {
"type": "string",
"description": "Comma-separated year(s) or year-ranges to retrieve (e.g. \"2022\", \"2020,2021,2022\", \"2015-2022\"). Omit to get all available years for the indicator. Most tariff/trade indicators cover 2005–2024."
},
"max_rows": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Maximum number of data rows to return (1–500, default 100). Lower values are faster; raise for multi-year/multi-country queries."
},
"partner_codes": {
"type": "string",
"description": "Comma-separated partner economy code(s) for bilateral trade data. Only applicable to indicators that have partner dimension (bilateral trade flows). Use \"000\" for world total. Omit for indicators without partner dimension (e.g. tariffs)."
},
"reporter_codes": {
"type": "string",
"description": "Comma-separated WTO reporter economy code(s). Use the 3-digit numeric codes from wto.trade.reporters — e.g. \"840\" for USA, \"276\" for Germany, \"156\" for China, \"392\" for Japan, \"000\" for World aggregate. Multiple codes accepted (e.g. \"840,276,156\")."
},
"indicator_codes": {
"type": "string",
"description": "Comma-separated WTO indicator code(s) to retrieve data for. Examples: \"TP_A_0010\" (MFN applied tariff, all products), \"ITS_MTV_AX\" (merchandise exports by product group, annual), \"ITS_CS_AX6\" (commercial services exports by sector). Use wto.trade.indicators to discover available codes."
}
},
"additionalProperties": false
}List all available World Trade Organization time-series indicators with metadata. Returns indicator code, name, category (TAR=tariff, ITS_M=merchandise trade, ITS_S=commercial services), subcategory, unit (e.g. percent, USD millions), frequency (annual/quarterly/monthly), year coverage (startYear–endYear), number of reporting economies covered, and estimated datapoint count. Use this tool before wto.trade.data to identify the correct indicator codes. Filter by topic_id (use wto.trade.topics to enumerate topic IDs) or by category code (TAR for tariff indicators, ITS_M for merchandise trade, ITS_S for services). Key indicators: TP_A_0010 (MFN applied tariff, all products), TP_B_0090 (bound tariff), ITS_MTV_AX (merchandise exports by product group, annual), ITS_CS_AX6 (commercial services exports by sector and partner). Returns the full catalogue of 58+ indicators maintained by the WTO Statistics Division.
| Argument | Type | Description |
|---|---|---|
| category | string | Filter indicators by category code. Known values: "TAR" (tariff profiles), "ITS_M" (merchandise trade values/indices), "ITS_S" (commercial services trade). Omit to return all categories. |
| topic_id | integer | Filter indicators by WTO topic ID (1–N). Use wto.trade.topics to list topic IDs. Example: topic 3 = World Tariff Profiles. Omit to list all 58+ indicators. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"category": {
"type": "string",
"description": "Filter indicators by category code. Known values: \"TAR\" (tariff profiles), \"ITS_M\" (merchandise trade values/indices), \"ITS_S\" (commercial services trade). Omit to return all categories."
},
"topic_id": {
"type": "integer",
"description": "Filter indicators by WTO topic ID (1–N). Use wto.trade.topics to list topic IDs. Example: topic 3 = World Tariff Profiles. Omit to list all 58+ indicators."
}
},
"additionalProperties": false
}List all 288 reporting economies (countries and economic groups) recognized by the WTO time-series database, with their 3-digit numeric codes, ISO 3-letter country codes, and display names. Use these codes in wto.trade.data reporter_codes and partner_codes parameters. Includes individual WTO members (e.g. 840=USA, 156=China, 276=Germany, 392=Japan, 356=India, 036=Australia), geographic aggregates (e.g. 097=European Union, 413=LDC group), and the world total (000=World). Filter results client-side by name substring (e.g. "Africa", "European", "United") to find the relevant codes for your query. Data sourced from the WTO Statistics Division; economy composition reflects WTO membership.
| Argument | Type | Description |
|---|---|---|
| filter | string | Optional case-insensitive substring to filter reporters by name (e.g. "European", "Africa", "United"). Applied client-side — returns full list if omitted (288 economies). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"filter": {
"type": "string",
"description": "Optional case-insensitive substring to filter reporters by name (e.g. \"European\", \"Africa\", \"United\"). Applied client-side — returns full list if omitted (288 economies)."
}
},
"additionalProperties": false
}List all WTO time-series database topic categories with their numeric IDs and names. Topics group related datasets — for example: World Tariff Profiles (topic 3), I-TIP non-tariff measures (topic 1), Merchandise Trade Values (topic 7), Commercial Services Trade (topic 12). Use the topic ID in wto.trade.indicators (topic_id parameter) to filter and discover the specific indicator codes available within that data domain. Returned topics correspond to the WTO Statistics Portal database groupings maintained by the WTO Statistics Division.
| Argument | Type | Description |
|---|---|---|
| locale | string | Response language. Currently only English is supported by the WTO API (lang=1). Reserved for future use; leave unset. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"locale": {
"type": "string",
"description": "Response language. Currently only English is supported by the WTO API (lang=1). Reserved for future use; leave unset."
}
},
"additionalProperties": false
}Search Zenodo communities — curated subject-specific collections maintained by researchers and institutions. Communities group related records by discipline, project, or institution (e.g. "astronomy", "bioinformatics", "EU Horizon projects", "CERN data"). Returns community ID, title, description, and URL. Each community has a dedicated landing page on Zenodo with all its member records. Use the community ID with the Zenodo website to browse records within a specific collection. Zenodo currently hosts 5,000+ communities covering all scientific disciplines.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default 1). |
| sort | string | Sort order: "bestmatch" (relevance), "newest", or "oldest". Default: bestmatch. |
| limit | integer | Number of communities to return (default 10, max 50). |
| query | string | Search term to filter communities by name or topic (e.g. "astronomy", "machine learning", "climate", "bioinformatics"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1)."
},
"sort": {
"enum": [
"bestmatch",
"newest",
"oldest"
],
"type": "string",
"description": "Sort order: \"bestmatch\" (relevance), \"newest\", or \"oldest\". Default: bestmatch."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of communities to return (default 10, max 50)."
},
"query": {
"type": "string",
"description": "Search term to filter communities by name or topic (e.g. \"astronomy\", \"machine learning\", \"climate\", \"bioinformatics\")."
}
},
"additionalProperties": false
}Get full metadata for a specific Zenodo research record by its numeric record ID. Returns title, DOI, creators with affiliations and ORCID, publication date, resource type, abstract/description, keywords, license, access right, related communities, file count, download and view statistics, and a link to the Zenodo page. Use zenodo.records.search to find record IDs, or extract the ID from a DOI like "10.5281/zenodo.10487285" → ID is 10487285. To list downloadable files, follow up with zenodo.records.files.
| Argument | Type | Description |
|---|---|---|
| record_id* | string | number | Zenodo record ID (numeric, e.g. 10487285) or DOI suffix. Find IDs via zenodo.records.search or from a DOI like "10.5281/zenodo.10487285". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"record_id"
],
"properties": {
"record_id": {
"type": [
"string",
"number"
],
"description": "Zenodo record ID (numeric, e.g. 10487285) or DOI suffix. Find IDs via zenodo.records.search or from a DOI like \"10.5281/zenodo.10487285\"."
}
},
"additionalProperties": false
}List all downloadable files for a Zenodo record. Returns filename, MIME type, size in bytes, checksum (MD5), and a direct download URL for each file. Zenodo records can contain multiple files (data CSVs, code archives, supplementary PDFs, images, etc.). Use zenodo.records.search or zenodo.records.detail to find the record ID, then call this tool to get the file manifest with direct download links. All files in open-access records are freely downloadable without authentication.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of files to return (default 50, max 100). |
| record_id* | string | number | Zenodo record ID whose files to list (numeric, e.g. 10487285). Obtain from zenodo.records.search or zenodo.records.detail. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"record_id"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of files to return (default 50, max 100)."
},
"record_id": {
"type": [
"string",
"number"
],
"description": "Zenodo record ID whose files to list (numeric, e.g. 10487285). Obtain from zenodo.records.search or zenodo.records.detail."
}
},
"additionalProperties": false
}Search 3.5M+ open-access research outputs on Zenodo — publications, datasets, software, presentations, posters, videos, and more. Filter by type, access right (open/embargoed/restricted), and publication date range. Sort by relevance, recency, most-viewed, or most-downloaded. Each result includes DOI, title, creators, resource type, access right, keywords, view/download stats, and a direct URL. Zenodo is operated by CERN under the OpenAIRE program and hosts research from EU-funded projects, science institutions worldwide, and individual researchers. All metadata is CC0.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (default 1). Combine with limit for paging. |
| sort | string | Sort order: "bestmatch" (relevance), "mostrecent" (newest first), "mostviewed", or "mostdownloaded". Default: bestmatch. |
| type | string | Filter by record type: "publication" (papers/preprints), "dataset", "software", "presentation", "poster", "image", "video", "lesson", "physicalobject", or "other". |
| limit | integer | Number of results to return per page (default 10, max 50). |
| query | string | Free-text search query across title, description, creators, and keywords (e.g. "CRISPR gene editing", "climate change datasets", "machine learning"). |
| date_to | string | Filter records published on or before this date in ISO 8601 format (e.g. "2024-12-31"). |
| date_from | string | Filter records published on or after this date in ISO 8601 format (e.g. "2023-01-01"). |
| access_right | string | Filter by access right: "open" (freely downloadable), "embargoed", "restricted", or "closed". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number for pagination (default 1). Combine with limit for paging."
},
"sort": {
"enum": [
"bestmatch",
"mostrecent",
"mostviewed",
"mostdownloaded"
],
"type": "string",
"description": "Sort order: \"bestmatch\" (relevance), \"mostrecent\" (newest first), \"mostviewed\", or \"mostdownloaded\". Default: bestmatch."
},
"type": {
"enum": [
"publication",
"poster",
"presentation",
"dataset",
"image",
"video",
"software",
"lesson",
"physicalobject",
"other"
],
"type": "string",
"description": "Filter by record type: \"publication\" (papers/preprints), \"dataset\", \"software\", \"presentation\", \"poster\", \"image\", \"video\", \"lesson\", \"physicalobject\", or \"other\"."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of results to return per page (default 10, max 50)."
},
"query": {
"type": "string",
"description": "Free-text search query across title, description, creators, and keywords (e.g. \"CRISPR gene editing\", \"climate change datasets\", \"machine learning\")."
},
"date_to": {
"type": "string",
"description": "Filter records published on or before this date in ISO 8601 format (e.g. \"2024-12-31\")."
},
"date_from": {
"type": "string",
"description": "Filter records published on or after this date in ISO 8601 format (e.g. \"2023-01-01\")."
},
"access_right": {
"enum": [
"open",
"embargoed",
"restricted",
"closed"
],
"type": "string",
"description": "Filter by access right: \"open\" (freely downloadable), \"embargoed\", \"restricted\", or \"closed\"."
}
},
"additionalProperties": false
}