MCP Databricks Server vs Statistics Canada MCP… | AllMCPs
Side-by-Side Model Context Protocol Comparison
MCP Databricks Server vs Statistics Canada MCP Server
In-depth architectural comparison of the MCP Databricks Server and Statistics Canada MCP Server MCP servers. Compare execution transports, security boundaries, tool capabilities, quality scores, and ready-to-paste client installation snippets for Claude, Cursor, Windsurf, and VS Code.
At a Glance & Executive Verdict
MCP Databricks Server
Data Platforms · Local stdio
Quality: 35/100 (Fair) | Auth: API Key required
Statistics Canada MCP Server
Data Platforms · Local stdio
Quality: 61/100 (Good) | Auth: No auth required
Verdict Summary: Choose MCP Databricks Server if you need specialized Data Platforms tools running via a local process. Choose Statistics Canada MCP Server if your workspace requires Data Platforms integration with local subprocess execution. Both servers can be configured concurrently in your client's mcpServers manifest.
Which MCP Server Should You Choose?
Choose MCP Databricks Server when:
You need dedicated capabilities in the Data Platforms domain.
You prefer local stdio subprocess transport architecture.
Your security boundary fits: API Key required (Free / Open Source).
You have access to required keys: DATABRICKS_HOST, DATABRICKS_TOKEN, DATABRICKS_HTTP_PATH.
Primary tools included: Execute SQL on Databricks SQL warehouses, List workspace jobs, Retrieve job status by ID.
Retrieves definitions for various code sets used by the API (e.g., frequency, units of measure).
Corresponds to: GET /getCodeSets
Returns:
Dict[str, Any]: Dictionary containing code set definitions (scalar, frequency, etc.).
Raises:
httpx.HTTPStatusError: If the API returns an error status code.
ValueError: If the API response format is unexpected.
Exception: For other network or unexpected errors.
IMPORTANT: In your final response to the user, you MUST cite the source of your data.
For code sets, this means specifying which code set table or definition is being used.
Ready-to-Paste Client Configurations
Paste either (or both) of these JSON server blocks into your client config file (e.g. claude_desktop_config.json or ~/.cursor/mcp.json).
MCP Databricks Server is categorized under Data Platforms and uses a local stdio subprocess. In contrast, Statistics Canada MCP Server belongs to Data Platforms using local stdio subprocess. Select MCP Databricks Server when you need capabilities focused on data platforms and Statistics Canada MCP Server when you require tools for data platforms.
Provides a complete inventory of data tables available via the API,
including dimension-level details. Disables SSL Verification.
Corresponds to: GET /getAllCubesList
Results are paginated. Default returns first 100 cubes. Use offset/limit
to page through. Prefer search_cubes_by_title if you know what you're looking for.
IMPORTANT: In your final response to the user, you MUST cite the source of your data.
For cubes, this means including the ProductId (pid) and the Title.
get_all_cubes_list_lite
Provides a complete inventory of data tables available via the API,
excluding dimension or footnote information (lighter version). Disables SSL Verification.
Corresponds to: GET /getAllCubesListLite
Results are paginated. Default returns first 100 cubes. Use offset/limit
to page through. Prefer search_cubes_by_title if you know what you're looking for.
IMPORTANT: In your final response to the user, you MUST cite the source of your data.
For cubes, this means including the ProductId (pid) and the Title.
search_cubes_by_title
Searches for data cubes/tables where the English or French title contains
the provided search term (case-insensitive). Returns a list of matching cubes
in the 'lite' format (excluding dimensions/footnotes).
Multiple keywords use AND logic (e.g., "tobacco smoking age" finds cubes
containing ALL three words). Results are capped at max_results (default 25).
IMPORTANT: In your final response to the user, you MUST cite the source of your data.
For cubes, this means including the ProductId (pid) and the Title.
Raises:
httpx.HTTPStatusError: If the underlying API call fails.
Exception: For other network or unexpected errors during the fetch.
get_cube_metadata
Retrieves detailed metadata for a specific data table/cube using its ProductId.
Includes dimension info, titles, date ranges, codes, etc. Disables SSL Verification.
Corresponds to: POST /getCubeMetadata
Start with summary=True (default). The summary strips noise (French translations,
archive codes, footnotes) and shows only 3 sample members per dimension with
_next_steps guidance. Safe for all context window sizes.
Set summary=False only if you need the full raw member list or all API fields.
To browse dimension codes for get_sdmx_data key construction, use get_sdmx_structure.
To resolve a coordinate to a vectorId, use get_series_info.
Returns:
Dict[str, Any]: The metadata object for the specified cube on success.
Raises:
httpx.HTTPStatusError: If the API returns an error status code.
ValueError: If the API response format is unexpected or status is not SUCCESS.
Exception: For other network or unexpected errors.
IMPORTANT: In your final response to the user, you MUST cite the source of your data.
For cubes, this means including the ProductId (pid) and the Title.
get_changed_series_data_from_cube_pid_coord
Retrieves changed series data (data points that have changed) using Cube ProductId
and Coordinate string.
Coordinates are automatically padded to 10 dimensions. Disables SSL Verification.
Corresponds to: POST /getChangedSeriesDataFromCubePidCoord
Returns:
Dict[str, Any]: A dictionary containing the changed series data object.
Raises:
httpx.HTTPStatusError: If the API returns an error status code.
ValueError: If the API response format is unexpected or status is not SUCCESS.
Exception: For other network or unexpected errors.
IMPORTANT: In your final response to the user, you MUST cite the source of your data.
For changed series data, this means including the VectorId, ProductId (pid), and Coordinate.
get_series_info
Resolve one or more {productId, coordinate} pairs to series metadata
(vectorId, titles, frequency, UOM, etc.) in a single API call.
Use this to find vectorIds before fetching data with get_sdmx_data or
get_sdmx_vector_data. Pass one item or many — same tool either way.
Coordinates are automatically padded to 10 dimensions.
Corresponds to: POST /getSeriesInfoFromCubePidCoord (accepts array)
NOTE: Response fields like scalarFactorCode, frequencyCode, and memberUomCode
use StatCan numeric codes. Call get_code_sets() to decode them
(e.g. frequencyCode 6 = "Monthly", scalarFactorCode 0 = "Units").
Returns:
List of series metadata dicts, paginated with _guidance if >50 results.
Raises:
httpx.HTTPStatusError: If the API returns an error status code.
ValueError: If no items return SUCCESS.
Exception: For other network or unexpected errors.
IMPORTANT: In your final response cite the ProductId and Coordinate for each series.
get_changed_cube_list
Get the list of data tables/cubes that were updated on a specific date (YYYY-MM-DD).
Disables SSL Verification.
Corresponds to: GET /getChangedCubeList/{date}
Returns:
List[Dict[str, Any]]: A list of dictionaries describing changed cube objects.
IMPORTANT: In your final response to the user, you MUST cite the source of your data.
For changed cubes, this means including the ProductId (pid) and Title.
get_series_info_from_vector
Request series metadata (productId, coordinate, titles, frequency, etc.)
by Vector ID. Disables SSL Verification.
Corresponds to: POST /getSeriesInfoFromVector
Returns:
Dict[str, Any]: A dictionary containing the series metadata object.
Raises:
httpx.HTTPStatusError: If the API returns an error status code.
ValueError: If the API response format is unexpected or status is not SUCCESS.
Exception: For other network or unexpected errors.
IMPORTANT: In your final response to the user, you MUST cite the source of your data.
For series info, this means including the VectorId, ProductId (pid), and Coordinate.
get_bulk_vector_data_by_range
Fetches bulk data for multiple vectors filtered by *release date* range (YYYY-MM-DDTHH:MM),
NOT by reference period. Use this when you want data released within a specific
date/time window (e.g., "all updates released yesterday").
*** IMPORTANT: release date vs reference period ***
- Use THIS tool when you want: "data released between date A and date B"
- Use get_sdmx_vector_data (startPeriod/endPeriod) when you want: "data for the time period YYYY to YYYY"
get_sdmx_vector_data is more reliable and filters by reference period, not release date.
*** LARGE RESPONSE WARNING ***
This tool can return hundreds of flattened data points. If the response
exceeds context limits, narrow the request: use fewer vectorIds, or use
offset/limit pagination to page through results in smaller chunks.
Response is pre-flattened: each element is one data point with vectorId,
productId, coordinate, and all value fields injected at the top level.
Disables SSL Verification.
Corresponds to: POST /getBulkVectorDataByRange
Returns:
List[Dict[str, Any]]: Flat list of data point dicts, each tagged with vectorId,
productId, and coordinate.
Raises:
httpx.HTTPStatusError: If the API returns an error status code.
ValueError: If the API response format is unexpected or no vectors return SUCCESS.
Exception: For other network or unexpected errors.
IMPORTANT: In your final response to the user, you MUST cite the source of your data.
For vector data, this means including the VectorId and Release Time.
get_changed_series_data_from_vector
Get changed series data (data points that have changed) for a series
identified by Vector ID. Disables SSL Verification.
Corresponds to: POST /getChangedSeriesDataFromVector
Returns:
Dict[str, Any]: A dictionary containing the changed series data object.
Raises:
httpx.HTTPStatusError: If the API returns an error status code.
ValueError: If the API response format is unexpected or status is not SUCCESS.
Exception: For other network or unexpected errors.
IMPORTANT: In your final response to the user, you MUST cite the source of your data.
For changed series data, this means including the VectorId.
get_changed_series_list
Get the list of series (vectorId, productId, coordinate, releaseTime)
that were updated on a specific date (YYYY-MM-DD).
Disables SSL Verification.
Corresponds to: GET /getChangedSeriesList/{date}
Returns:
List[Dict[str, Any]]: A list of dictionaries describing changed series objects.
Raises:
httpx.HTTPStatusError: If the API returns an error status code.
ValueError: If date format is invalid or API response format is unexpected.
Exception: For other network or unexpected errors.
IMPORTANT: In your final response to the user, you MUST cite the source of your data.
For changed series, this means including the VectorId.