Monitly
Official statistics for AI agents: Eurostat, World Bank, OECD, IMF and WHO data for 150+ countries.
Sollte ich dies verwenden
Qualität und Sicherheit
Befunde (2)
- LOWin list_mcp_keys
- LOWin delete_mcp_key
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"monitly": {
"url": "https://monit.ly/api/mcp"
}
}
}Remote-Endpunkte
https://monit.ly/api/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (21)
🟢search_catalog(query, country, source_name, limit)
Find statistical datasets in the catalog (Eurostat, World Bank, OECD, etc.). Index-backed hybrid search (name/code + embeddings). Optional country and source_name filters. Use this instead of SELECT … FROM main ILIKE. Returns compact cards, not series values.
Eingabe-Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "What to find, e.g. 'GDP annual current prices' or 'unemployment rate'."
},
"country": {
"type": "string",
"description": "Optional country name to prefer datasets that include this geo (e.g. 'Germany')."
},
"source_name": {
"type": "string",
"description": "Optional source filter, e.g. 'Eurostat', 'World Bank' (World Development Indicators), 'OECD', 'IMF'."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 16,
"description": "Max cards (default 8, max 16)."
}
},
"required": [
"query"
]
}🟢search_datasets(query, country, source_name, limit)
Alias of search_catalog. Find statistical datasets by query, optional country and source_name.
Eingabe-Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "What to find, e.g. 'GDP annual current prices'."
},
"country": {
"type": "string",
"description": "Optional country name (e.g. 'Germany')."
},
"source_name": {
"type": "string",
"description": "Optional source filter, e.g. 'Eurostat'."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 16,
"description": "Max cards (default 8, max 16)."
}
},
"required": [
"query"
]
}🟢inspect_dataset(id, country)
Peek one dataset by main.id: default slice, whether a country is in the series, dataId, and the last few values. Uses indexed main_id lookup — do not scan the data table yourself for discovery.
Eingabe-Schema
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Dataset id (main.id) from search_catalog."
},
"country": {
"type": "string",
"description": "Optional country to resolve in the format header (e.g. 'Germany')."
}
},
"required": [
"id"
]
}🟢get_dataset(id)
Get one dataset metadata row from main by id (includes dimensions, default_view, geos).
Eingabe-Schema
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Dataset id (main.id)."
}
},
"required": [
"id"
]
}🟢execute_sql(query)
Run a read-only SELECT (or WITH … SELECT) against tables main and data only. Use after search_catalog + inspect_dataset to pull the time series for a known data.id / main_id.
Eingabe-Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "SQL SELECT against main / data only."
}
},
"required": [
"query"
]
}🟢list_plans
List Monitly plans (Essential, Pro, Enterprise) with prices and limits.
Eingabe-Schema
{
"type": "object",
"properties": {}
}🟢get_plan
Current plan of the key owner: name, status, period end and limits (API/day, MCP/month, watchlist, API keys).
Eingabe-Schema
{
"type": "object",
"properties": {}
}🟢get_usage
MCP queries this billing period, REST API requests today and watchlist slots — used, limit, remaining.
Eingabe-Schema
{
"type": "object",
"properties": {}
}🟡upgrade_plan(plan_id)
Create a Stripe Checkout session for the Pro plan and return checkout_url. Open it in the browser for the user to pay.
Eingabe-Schema
{
"type": "object",
"properties": {
"plan_id": {
"type": "string",
"enum": [
"pro"
],
"description": "Target plan (default 'pro')."
}
}
}🟢list_watchlist(limit, offset)
Datasets the user follows (watchlist) with source, latest period and alert status. Paginate with limit/offset.
Eingabe-Schema
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"description": "Max rows (default 20)."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset (default 0)."
}
}
}🟡add_to_watchlist(dataset_id)
Follow a dataset by id (from search_catalog). The user gets alerts when it updates. Respects the plan's watchlist limit.
Eingabe-Schema
{
"type": "object",
"properties": {
"dataset_id": {
"type": "integer",
"description": "Dataset id (main.id) from search_catalog."
}
},
"required": [
"dataset_id"
]
}🟡add_watchlist_batch(dataset_ids)
Follow up to 100 datasets in one call. Skips duplicates and stops at the plan limit (reported in skipped_limit).
Eingabe-Schema
{
"type": "object",
"properties": {
"dataset_ids": {
"type": "array",
"items": {
"type": "integer"
},
"description": "Dataset ids (main.id)."
}
},
"required": [
"dataset_ids"
]
}🔴remove_from_watchlist(dataset_id)
Unfollow a dataset by id.
Eingabe-Schema
{
"type": "object",
"properties": {
"dataset_id": {
"type": "integer",
"description": "Dataset id (main.id) from search_catalog."
}
},
"required": [
"dataset_id"
]
}🟡set_notification_preferences(action, email_notifications, slack_notifications, dataset_id, dataset_notifications)
action='get' returns e-mail/Slack alert settings. action='set' changes email_notifications / slack_notifications, or turns alerts for one followed dataset on/off (dataset_id + dataset_notifications).
Eingabe-Schema
{
"type": "object",
"properties": {
"action": {
"type": "string",
"enum": [
"get",
"set"
],
"description": "'get' or 'set'."
},
"email_notifications": {
"type": "boolean",
"description": "E-mail alerts for followed datasets."
},
"slack_notifications": {
"type": "boolean",
"description": "Slack alerts (webhook is configured in Settings)."
},
"dataset_id": {
"type": "integer",
"description": "Followed dataset to change."
},
"dataset_notifications": {
"type": "boolean",
"description": "Alerts for that dataset on/off."
}
},
"required": [
"action"
]
}🟢list_api_keys
Active REST API keys (mon_…) of the account: id, name, prefix, created/last used.
Eingabe-Schema
{
"type": "object",
"properties": {}
}🟡create_api_key(name)
Create a REST API key (mon_…) for /api endpoints. The raw key is returned once. Limit: 3 (Essential) / 10 (Pro).
Eingabe-Schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Label (max 100 chars)."
}
}
}🔴delete_api_key(key_id)
Revoke a REST API key by id. The last remaining key cannot be deleted.
Eingabe-Schema
{
"type": "object",
"properties": {
"key_id": {
"type": "string",
"description": "Key id (uuid) from the list call."
}
},
"required": [
"key_id"
]
}🟢list_mcp_keys
Active MCP keys (mcpk_…). The key used for this session is marked current=true.
Eingabe-Schema
{
"type": "object",
"properties": {}
}🟡create_mcp_key(name)
Create another MCP key (mcpk_…), e.g. for a second client. The raw key is returned once.
Eingabe-Schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Label (max 100 chars)."
}
}
}🔴delete_mcp_key(key_id)
Revoke an MCP key by id. The key used for the current session cannot be revoked here.
Eingabe-Schema
{
"type": "object",
"properties": {
"key_id": {
"type": "string",
"description": "Key id (uuid) from the list call."
}
},
"required": [
"key_id"
]
}🟢export_dataset(dataset_id, countries, dimensions)
Return a CSV download URL for a dataset, optionally filtered by countries and dimension values (dim1…dim8 from inspect_dataset).
Eingabe-Schema
{
"type": "object",
"properties": {
"dataset_id": {
"type": "integer",
"description": "Dataset id (main.id) from search_catalog."
},
"countries": {
"type": "array",
"items": {
"type": "string"
},
"description": "Country names, e.g. ['Poland','Germany']."
},
"dimensions": {
"type": "object",
"description": "Dimension filters, e.g. {\"dim1\": [\"Annual\"], \"dim2\": [\"Percentage\"]}."
}
},
"required": [
"dataset_id"
]
}Community
Nachweis