Search / io.stackdata/stackdata
StackData
R0· no sign-inOfficial statistics, China censuses & yearbooks, and as-of customs tariffs with legal citations.
v0.1.0 · active · website · descriptor JSON · versions
Search / io.stackdata/stackdata
R0· no sign-inOfficial statistics, China censuses & yearbooks, and as-of customs tariffs with legal citations.
v0.1.0 · active · website · descriptor JSON · versions
{
"mcpServers": {
"stackdata": {
"type": "http",
"url": "https://api.stackdata.io/mcp"
}
}
}claude mcp add --transport http stackdata https://api.stackdata.io/mcp[mcp_servers.stackdata]
url = "https://api.stackdata.io/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"stackdata": {
"type": "remote",
"url": "https://api.stackdata.io/mcp",
"enabled": true
}
}
}{
"mcpServers": {
"stackdata": {
"type": "http",
"url": "https://api.stackdata.io/mcp"
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=stackdata&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vYXBpLnN0YWNrZGF0YS5pby9tY3AifQ%3D%3D"
}{
"servers": {
"stackdata": {
"type": "http",
"url": "https://api.stackdata.io/mcp"
}
}
}{
"mcpServers": {
"stackdata": {
"httpUrl": "https://api.stackdata.io/mcp"
}
}
}extensions:
"stackdata":
enabled: true
name: "stackdata"
type: streamable_http
uri: "https://api.stackdata.io/mcp"
timeout: 300
protocol.modernnewest supported version is 2025-06-18; 2026-07-28 not supported, older versions are deprecated until 2027-07-28protocol.statelessonly applies to 2026-07-28 serversprotocol.transportstreamable HTTPprotocol.list_ttlonly applies to 2026-07-28 serversauth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptionsevery tool has a descriptiontools.description_lengthdescriptions are concisetools.schemasevery tool has an object input schematools.annotationsno tool declares readOnlyHint or destructiveHint, so clients cannot tell safe calls from risky onestools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: resolve_data (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); get_structure (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); tariff_lookup (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); …tools.token_costabout 1,038 tokens to load every tooltools.api_dumptools are not a one-to-one API dumpstability.changes2 tool changes in 30 daysstability.rug_pullno tool changed its meaning under the same namedeps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI packageget_seriesaddedFetch ONE series with every dimension named by you (no guessing or relaxing): dataset, ISO3 countries, an ISO period range and a member code for every dimension from get_structure. Returns status ok/empty/refused with each value's provenance, and the missing country-periods listed. A bad request is a named 400 error saying which field and what is allowed.
get_structureaddedThe published structure of one dataset, free: its dimensions with every member code and label, frequencies, period coverage, the ISO3 countries it serves, and whether it is servable. Call this before get_series to learn the codes to send. Dataset ids come from search_datasets.
Full history: list_changes · trend: quality JSON.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+dns-namespace +website +reachable +uptime-99% ~updated-51d-ago -no-repository
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://api.stackdata.io/mcp streamable-http | none | yes | 99% | 392 ms | 2025-06-18 | 2026-10-19 |
get_series | Fetch ONE series with every dimension named by you (no guessing or relaxing): dataset, ISO3 countries, an ISO period range and a member code for every dimension from get_structure. Returns status ok/empty/refused with each value's provenance, and the missing country-periods listed. A bad request is a named 400 error saying which field and what is allowed. |
get_structure | The published structure of one dataset, free: its dimensions with every member code and label, frequencies, period coverage, the ISO3 countries it serves, and whether it is servable. Call this before get_series to learn the codes to send. Dataset ids come from search_datasets. |
get_table | Fetch a STORED table whole, by dataset id (families cn-nbs-census and cn-nbs-yearbook): labelled rows × columns with original-language labels, English overlay, units, and provenance down to the source file. Ids look like 'cn-nbs-census:2010_a0101a'. |
resolve_data | Ask a data question in English ('unemployment rate in Japan', 'compare GDP in Japan and Germany') — resolves to the best covering dataset and returns the observations, with coverage honesty (missing countries are reported, never papered over). |
search_datasets | Search StackData's catalog of 50k+ official statistical datasets (SDMX/World Bank dataflows, China censuses and yearbooks, tariff schedules). Multilingual: an English query finds Chinese-titled tables. Returns dataset ids usable with the other tools. |
tariff_lookup | As-of customs-tariff lookup: which measures/duty rates apply to a goods code in a jurisdiction (eu, us, uk, jp), optionally from an origin, on a date. Duty expressions are verbatim; every measure carries its legal citation. Not legal advice. |
Schemas: list_tools.
{
"name": "io.stackdata/stackdata",
"title": "StackData",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://api.stackdata.io/mcp",
"type": "streamable-http"
}
],
"version": "0.1.0",
"websiteUrl": "https://stackdata.io",
"description": "Official statistics, China censuses & yearbooks, and as-of customs tariffs with legal citations."
}