Banco de Portugal Dataset Observations (BPstat)
bpstat/dataset-observations
The observations of one BPstat dataset of the Banco de Portugal, by domain id and dataset id, as a JSON-stat 2.0 dataset in English: the dataset's series (id, label, dimension coding), the dimension labels with the list of reference dates, and one flat array of values laid out by dimension size. The whole dataset comes back in one answer and cannot be limited, so a large dataset is large (an unknown id fails with an error); get the dataset id from Banco de Portugal Datasets of a Statistical Domain. Source: Banco de Portugal (BPstat), https://bpstat.bportugal.pt. Values are passed through unmodified (nothing is rounded, resampled or converted), served by Eden Engine; this is not an official Banco de Portugal service and the Banco de Portugal does not endorse it.
Price
$0.0026 per call
You pay the price shown. If a call turns out to cost more than its quote, you pay the actual price, capped at twice the quote. No monthly minimum. Top-ups start at $5.
Data source
Fonte: Banco de Portugal (BPstat), https://bpstat.bportugal.pt. Values are passed through unmodified; if you modify them, say so. Served by Eden Engine; not an official Banco de Portugal service and not endorsed by the Banco de Portugal.
Use it
Five steps: search, inspect, learn, run, settle. No per-tool setup; your agent reaches this tool through the meta-tools it already has.
Connect once and your AI can find and run this tool, and any other it needs.
// 1. search: find the tool
omnial_search({ query: "what you need" })
// 2. inspect: price and input schema
omnial_inspect({ tool: "bpstat/dataset-observations" })
// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "bpstat/dataset-observations" })
// 4. run: price the exact call first, then run it
omnial_execute({ tool: "bpstat/dataset-observations", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "bpstat/dataset-observations", input: { /* ... */ } })
// 5. settle: the call is charged when it finishes, nothing to doNot connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.
Pricing
Every charge this tool can incur.
| Charge | Price |
|---|---|
Per call | $0.0026 |
- Updated
- Oct 20, 2026
Input and output schemas
Input schema
{
"type": "object",
"required": [
"domain_id",
"dataset_id"
],
"properties": {
"domain_id": {
"type": "integer",
"minimum": 1,
"description": "BPstat domain id, a number such as 186 (Loans for house purchase) or 48 (economic activity coincident indicators)."
},
"dataset_id": {
"type": "string",
"pattern": "^[0-9a-f]{32}$",
"description": "Dataset id: 32 lowercase hex characters, as returned by the domain datasets tool (for example aea9d7f70ddf9c6de29feaeba86a9456 in domain 48)."
}
},
"additionalProperties": false
}Output schema
{
"type": "object",
"required": [
"id",
"size",
"value",
"dimension",
"extension"
],
"properties": {
"id": {
"type": "array",
"items": {
"type": "string"
},
"description": "Dimension ids in the order the values are laid out; the last is reference_date."
},
"href": {
"type": "string"
},
"role": {
"type": "object",
"additionalProperties": true
},
"size": {
"type": "array",
"items": {
"type": "integer"
},
"description": "Number of categories per dimension, in the order of id. The product of the sizes is the length of value."
},
"class": {
"type": "string",
"description": "dataset"
},
"label": {
"type": "string",
"description": "The dataset's dimensions, separated by semicolons."
},
"value": {
"type": "array",
"items": {
"type": [
"number",
"null"
]
},
"description": "All observations in one flat array, in the order of id and size (the last dimension, reference date, varies fastest)."
},
"source": {
"type": "string"
},
"status": {
"type": "array",
"items": {
"type": "string"
},
"description": "Per-observation status flags, parallel to value (every captured one was F)."
},
"version": {
"type": "string",
"description": "JSON-stat version, 2.0."
},
"dimension": {
"type": "object",
"description": "For each dimension id: `label` and `category` (`index` and `label` by category id). `reference_date` lists the observation dates.",
"additionalProperties": true
},
"extension": {
"type": "object",
"properties": {
"series": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
}
},
"num_series": {
"type": "integer"
},
"obs_updated_at": {
"type": "string"
}
},
"description": "num_series, obs_updated_at (UTC) and `series`: one entry per series with id, label, dimension_category and href.",
"additionalProperties": true
}
},
"description": "A JSON-stat 2.0 dataset: dimensions, a flat value array and the series list.",
"additionalProperties": true
}