{"name":"dev.starwell/world-data-statistics","slug":"starwell-world-data-statistics","title":"Starwell: World Data & Statistics","description":"Statistics from 28 agencies: FRED, Eurostat, ECB, World Bank, OECD. Cited values, computed answers.","url":"https://mcp.market/server/starwell-world-data-statistics","rating":null,"grade":"B","score":82,"certified":false,"status":"active","category":"finance","tags":["finance"],"presence":{"score":26,"stars":0,"forks":0,"downloads_week":41,"last_push_at":"2026-08-13T19:36:46.000Z","license":"MIT"},"uptime":{"percent":100,"checks":22,"ok":22,"last_checked_at":"2026-09-24T19:11:05.319Z","last_ok_at":"2026-09-24T19:11:05.319Z","latency_ms":512},"claimed":false,"transport":"mixed","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/Adarsh4052/starwell-mcp","website":"https://starwell.dev","version":"0.2.2","remotes":[{"type":"streamable-http","url":"https://starwell.dev/api/starwell/mcp"}],"packages":[{"registryType":"npm","identifier":"starwell-mcp","version":"0.2.2","transport":{"type":"stdio"},"environmentVariables":[{"description":"Free Bearer key from https://starwell.dev/account. Data reads work without one; answer, deep_analysis, and monitors require it.","isSecret":true,"name":"STARWELL_API_KEY"}]}],"tools":[{"name":"answer","description":"The flagship: ask a natural-language question about the served official statistics. Returns a COMPUTED answer (real Python runs in a sandbox over the verified store, nothing is estimated by a model), the Plotly chart, the Python code, citations to the official tables, and a verification badge per series. CROSS-SOURCE: one question may join series from DIFFERENT agencies, e.g. unemployment from the US BLS, Statistics Canada and the UK ONS in a single call, for correlations, ratios, and like-for-like comparison. How many series one question may join is set by the caller's plan; asking for more returns a series_limit error naming that cap. Returns a refusal when no served series can answer. Takes 10-40 seconds. Requires a free API key (create at /account on the Starwell host; pass Authorization: Bearer dlk_... or set STARWELL_API_KEY on the starwell-mcp bridge). Keyless calls return key_required.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"question":{"type":"string","minLength":3,"maxLength":500},"series":{"type":"array","items":{"type":"object","properties":{"source":{"type":"string"},"seriesId":{"type":"string"}},"required":["source","seriesId"],"additionalProperties":false},"maxItems":6,"description":"Optional: pin exact series, across sources, and skip AI resolution"},"start":{"type":"string","description":"YYYY-MM-DD"},"end":{"type":"string","description":"YYYY-MM-DD"},"share":{"type":"boolean","description":"When true, the answer becomes a permanent public page and meta.permalink carries its URL — hand it to the user as a citable link"}},"required":["question"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"create_monitor","description":"Create a monitor: when the store's refresh lands a new period or a revised value for the series, a series.updated webhook fires to your URL with the new value, verification status, and citation. Requires an API key (free with an account at /account); webhook must be https. Manage with list_monitors / delete_monitor.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"source":{"type":"string","description":"Source slug, e.g. 'fred'"},"seriesId":{"type":"string","description":"Series id, e.g. 'DGS10'"},"webhookUrl":{"type":"string","description":"https URL to receive series.updated events"}},"required":["source","seriesId","webhookUrl"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"deep_analysis","description":"The moat: a PLANNED multi-section report on a question. The engine designs 3-4 orthogonal analyses (trend, statistics, outliers, cross-series relationships), runs real Python for each in the sandbox over the verified store, and synthesizes one decision-ready report. Every number computed, every series cited and verification-badged. Sections can join series from DIFFERENT agencies in one report, up to the caller's plan width; over it, the call returns a series_limit error naming that cap. Slower than answer (60-180 seconds), so use it for \"analyze\", \"break down\", \"give me a full picture\" asks; use the answer tool for a single direct question. Requires a free API key (create at /account on the Starwell host; pass Authorization: Bearer dlk_... or set STARWELL_API_KEY on the starwell-mcp bridge). Keyless calls return key_required.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"question":{"type":"string","minLength":3,"maxLength":500},"series":{"type":"array","items":{"type":"object","properties":{"source":{"type":"string"},"seriesId":{"type":"string"}},"required":["source","seriesId"],"additionalProperties":false},"maxItems":6,"description":"Optional: pin exact series, across sources, and skip AI resolution"},"start":{"type":"string","description":"YYYY-MM-DD"},"end":{"type":"string","description":"YYYY-MM-DD"}},"required":["question"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"delete_monitor","description":"","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"id":{"type":"string","description":"Monitor id from list_monitors"}},"required":["id"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"get_observations","description":"Observation values for one series. Every value carries provenance (the exact source URL it came from, retrieval time, connector version) and the envelope carries the series verification status + citation. Defaults to the latest 60 points; use start/end (YYYY-MM-DD) or latest to control the window.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"source":{"type":"string"},"seriesId":{"type":"string"},"start":{"type":"string","description":"YYYY-MM-DD inclusive lower bound"},"end":{"type":"string","description":"YYYY-MM-DD inclusive upper bound"},"latest":{"type":"integer","minimum":1,"maximum":2000,"description":"Return only the latest N points (default 60 when no start/end given)"}},"required":["source","seriesId"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"get_series","description":"Full metadata for one series: indicator, unit, frequency, geography, coverage, its VERIFICATION STATUS (passing/stale/failing/unverified from golden-value + freshness checks against the live source), recent check records, and the citation to the official table.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"source":{"type":"string","description":"Source slug, e.g. 'fred'"},"seriesId":{"type":"string","description":"Source-native series id, e.g. 'UNRATE' or 'v41690973'"}},"required":["source","seriesId"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"get_series_stats","description":"Latest value, previous, all-time min/max, mean, and change vs the previous period and vs a year ago — computed over the verified store, with the citation attached. The cheap way to answer \"what is it now and how has it moved\" without a full analysis run.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"source":{"type":"string","description":"Source slug, e.g. 'fred'"},"seriesId":{"type":"string","description":"Series id, e.g. 'DGS10'"}},"required":["source","seriesId"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"list_datasets","description":"List the datasets (official releases/tables) available in one source, with coverage dates and links to the official table pages.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"source":{"type":"string","description":"Source slug, e.g. 'fred' or 'statcan'"}},"required":["source"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"list_monitors","description":"Monitors on your API key, with delivery health (last fired, failures, active).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"list_sources","description":"List the official statistical sources served by this data layer (e.g. Statistics Canada, FRED), with dataset/series counts, cadence notes, and terms links. Start here to see what exists.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"search_catalog","description":"Find series across ALL sources in one call: case-insensitive search over series ids, indicator names, geographies, and dataset titles (e.g. \"unemployment canada\", \"10-year treasury\", \"CPI\"). Returns candidate series with units, coverage, verification status, and license, plus datasetMatches from the wider dataset index — datasets whose series can be requested by source-native id and are fetched from the official source on first call. The fastest path from a question to the exact series id to fetch or pin in the answer tool.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"query":{"type":"string","minLength":1,"maxLength":200,"description":"Search terms, e.g. \"unemployment rate canada\""},"source":{"type":"string","description":"Optional source slug to restrict to, e.g. 'fred'"},"limit":{"type":"integer","minimum":1,"maximum":100,"description":"Max results (default 20)"},"offset":{"type":"integer","minimum":0,"description":"Skip the first N ranked hits (default 0). When hasMore is true, call again with offset = offset + limit."}},"required":["query"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}}],"scan":{"score":82,"grade":"B","scanned_at":"2026-09-23T11:55:39.589Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-23T11:55:39.585Z","components":{"code":{"score":25,"max":25,"notes":["2 source files scanned"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 878ms"]},"poisoning":{"score":15,"max":15,"notes":["11 tool descriptions checked"]},"auth":{"score":3,"max":15,"notes":["open endpoint exposes 2 write-action tools with no auth"]},"maintenance":{"score":12,"max":15,"notes":["last push 41 days ago"]},"identity":{"score":7,"max":10,"notes":["namespace and repository owner differ","GitHub account older than a year","website matches verified namespace"]}},"findings":[{"id":"auth.open-write","severity":"high","component":"auth","title":"Write-action tools reachable without authentication"}],"inputs":{"probes":[{"url":"https://starwell.dev/api/starwell/mcp","reachable":true,"authRequired":false,"latencyMs":878,"serverInfo":{"name":"Starwell","version":"1.0.0"}}],"packages":[{"registryType":"npm","identifier":"starwell-mcp","version":"0.2.2","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":1,"publishedAt":"2026-08-13T19:50:25.421Z","repositoryUrl":"git+https://github.com/Adarsh4052/starwell-mcp.git","weeklyDownloads":41}],"repo":{"found":true,"owner":"Adarsh4052","repo":"starwell-mcp","archived":false,"pushedAt":"2026-08-13T19:36:46Z","stars":0,"forks":0,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/5776641?v=4","ownerCreatedAt":"2013-10-25T17:59:10Z","license":"MIT"},"icon":{"url":"https://starwell.dev/icon-512.png","source":"registry","width":512,"height":512},"presence":{"stars":0,"forks":0,"downloadsWeek":41,"license":"MIT","lastPushAt":"2026-08-13T19:36:46.000Z","score":26}}}},"grade_history":[],"reviews":[]}