# Sidecar (remote · service-mcp.sidecardata.com)

Cross-tool context for your data stack. Search, lineage, and impact across warehouse and BI tools.

- Trust score: 37/100 (low)
- Change this week: −29
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- remote · `service-mcp.sidecardata.com`: 37/100 (this document), [markdown](https://verifymcp.io/servers/com-sidecardata-sidecar/sidecar-mcp.md), [page](https://verifymcp.io/servers/com-sidecardata-sidecar/sidecar-mcp)

## Channel facts

- Endpoint: `https://service-mcp.sidecardata.com/sidecar/mcp`
- Transports: `streamable-http`
- Auth: `required`
- Version: `1.0.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-03.

- **Endpoint Security**: 92/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - The endpoint enforces authorisation, advertised via RFC 9728 protected-resource metadata.
  - HTTPS is enforced; there's no plaintext access path.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
  - The authorisation server supports Client ID Metadata Documents, the current MCP client-registration mechanism.
- **Transport & Reachability**: 0/100
  - Transport blocked by authentication: the endpoint requires auth we don't have to verify streamable-http.
- **Schema Quality & AI Usability**: 0/100
  - Schema blocked by authentication: the endpoint requires auth we don't have to read it.
- **Stability & Change Management**: 0/100
  - Stability not yet verified: not enough scan history yet (needs a 30-day window).
- **Tool Coverage**: 0/100
  - Tool coverage blocked by authentication: the endpoint requires auth we don't have to read its tools.
- **Capabilities**: 0/100
  - Capabilities blocked by authentication: the endpoint requires auth we don't have to read them.

**Unverified: 5 categories.** Categories scored 0 because we could not verify them: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm.

## Install

### Claude

```bash
claude mcp add --transport http com-sidecardata-sidecar https://service-mcp.sidecardata.com/sidecar/mcp
```

### Codex

```toml
[mcp_servers.com-sidecardata-sidecar]
url = "https://service-mcp.sidecardata.com/sidecar/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-sidecardata-sidecar": {
      "type": "remote",
      "url": "https://service-mcp.sidecardata.com/sidecar/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add com-sidecardata-sidecar --url https://service-mcp.sidecardata.com/sidecar/mcp --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  com-sidecardata-sidecar:
    url: "https://service-mcp.sidecardata.com/sidecar/mcp"
```

### Other

```json
{
  "mcpServers": {
    "com-sidecardata-sidecar": {
      "type": "http",
      "url": "https://service-mcp.sidecardata.com/sidecar/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-07-31 (score 37, +14)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-29 (score 23, −44)

- [security regression] Endpoint reachability: reachable → behind authorisation
- [security regression] Stability: 0.07 → unverified
- [security regression] Transport: pass → unverified
- [security improvement] Authorization: unverified → pass
- [functional regression] Capabilities: pass → unverified
- [functional regression] Schema quality: 100 → unverified
- [functional regression] Tool coverage: 100 → unverified

### 2026-07-28 (score 67, +1)

No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-07-27 (score 66, +1)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-26 (score 65)

First indexed and scored.

## MCP tools (10)

### `get_catalog_overview` (~145 tokens)

Get a summary of everything available in this customer's Sidecar catalog.

Returns the connected tools (e.g. SNOWFLAKE, DBT_CLOUD, LOOKER), asset type breakdown
with counts, all available tag names, and a customer-provided company summary describing
the company's domain and data landscape (if set).

Call this at the start of any open-ended exploration (e.g. 'what data do we have?',
'show me all Snowflake tables'), or when a search returns no results and you need to
understand what's actually in the catalog before trying again.
Use the customer_summary field (when present) to understand the business context behind the data.

### `get_context_repo` (~27 tokens)

Return the clean OSI semantic contract currently deployed to this MCP token's Context Garage surface.

### `list_knowledge_base_files` (~126 tokens)

List all files in the customer's knowledge base.

The knowledge base contains company-specific reference material — playbooks, metric definitions,
business nuances, and conventions — uploaded by the customer's team.

Returns file names, paths, types, and IDs. Pass a file ID to `get_knowledge_base_file_content`
to read its content. Use the optional folder_path parameter to narrow results to a specific folder.

Input parameters:

- `folder_path`: Optional folder path to filter results (e.g. '/Playbooks', '/Metrics and Drivers'). When omitted, returns all files across the entire knowledge base.

### `get_knowledge_base_file_content` (~89 tokens)

Fetch the full text content of a file from the customer's knowledge base.

Use this after calling list_knowledge_base_files to get file IDs. Works with any file in
the knowledge base — playbooks, metric definitions, nuances, or captured context summaries.

Input parameters:

- `file_id` (string, required): UUID of the knowledge base file to retrieve. Get file IDs from list_knowledge_base_files.

### `resolve_asset_id` (~423 tokens)

Look up any data asset by name across the full catalog (dbt, Snowflake, BigQuery, Looker, etc.).

Returns the asset's columns, description, owner, tags, and its **Sidecar asset identifier**
(`asset_identifier` field) — the fully-qualified internal name used by lineage and impact tools
(e.g. `model.jaffle_shop.fct_orders`, `PROD_DB.ANALYTICS.FCT_ORDERS`).

When a single asset is resolved, the response also includes a `context_summary` with
counts of linked tickets (Jira/Linear) and Slack threads. If those counts are non-zero
and relevant to the user's question, follow up with `describe_asset` using
include=['tickets'] or include=['slack'] to fetch the actual content.

Call this first whenever the user refers to a specific table, model, view, or dashboard.

Input parameters:

- `asset_name` (string, required): Name or query for the asset to look up. Plain name ('fct_reviews'), wildcard ('fct_*'), or filters inline ('fct_reviews tool_type:SNOWFLAKE', 'tag:finance'). Filter keys: tool_type (UPPERCASE, e.g. S…
- `asset_type`: Narrow to a specific asset type. snake_case, e.g. snowflake_table, dbt_model, dbt_source, looker_dashboard. Call get_catalog_overview to see all asset types present for this customer.
- `tool_type`: Narrow to a specific tool. UPPERCASE, e.g. SNOWFLAKE, DBT_CLOUD, DBT_CORE, BIGQUERY, LOOKER, METABASE, FIVETRAN, POWER_BI, REDSHIFT. Call get_catalog_overview to see which tools are connected for thi…

### `inspect_lineage_details` (~157 tokens)

Trace the full data lineage for an asset — both upstream sources and downstream consumers.

Use this when the user asks 'where does this data come from?', 'what feeds into X?',
or needs the raw lineage graph. For pure downstream impact (blast radius), prefer
\`calculate_downstream_impact` instead.

Input parameters:

- `asset_identifier` (string, required): Asset name or Sidecar asset identifier to trace (e.g., 'fct_reviews' or 'model.jaffle_shop.fct_reviews').
- `downstream_depth` (integer): Levels of downstream lineage to include.
- `tool_type`: Optional tool/source hint (e.g., DBT_CLOUD, DBT_CORE).
- `upstream_depth` (integer): Levels of upstream lineage to include.

### `calculate_downstream_impact` (~167 tokens)

Find everything downstream of a data asset — tables, dashboards, and reports that would
break or be affected if this asset changes.

Call this automatically after the user modifies any SQL file, dbt model, or source definition,
or whenever they ask 'what depends on X?' or 'what breaks if I change Y?'

Returns a breakdown of affected assets by tool type and a full list of downstream nodes.

Input parameters:

- `asset_identifier` (string, required): Asset name or Sidecar asset identifier to analyze (e.g., 'fct_reviews' or 'model.jaffle_shop.fct_reviews').
- `max_depth` (integer): Downstream depth to traverse for impact analysis.
- `tool_type`: Optional tool/source hint (e.g., DBT_CLOUD, SNOWFLAKE).

### `get_column_lineage` (~195 tokens)

Trace column-level lineage — which upstream columns feed into a column and which downstream columns consume it.

Use this when the user asks 'where does this column come from?', 'what columns feed into X.col?',
or needs to understand column-level data flow.

Returns the target column, upstream columns (with levels), and downstream columns (with levels).

Input parameters:

- `asset_identifier` (string, required): Asset name or Sidecar asset identifier (e.g., 'fct_orders' or 'model.jaffle_shop.fct_orders').
- `column_name` (string, required): The column name to trace lineage for (case-insensitive).
- `downstream_depth` (integer): Levels of downstream column lineage to include.
- `tool_type`: Optional tool/source hint (e.g., DBT_CLOUD, SNOWFLAKE) to disambiguate when multiple assets share the same identifier.
- `upstream_depth` (integer): Levels of upstream column lineage to include.

### `advanced_search` (~333 tokens)

Search for data assets using identifier matching, keyword search, semantic similarity, or hybrid fusion.

Use 'identifier' mode (default) when you know the asset name or a pattern (supports * wildcards).
Use 'keyword' when searching by domain terms or metadata keywords.
Use 'semantic' for natural language queries about what the data represents.
Use 'hybrid' to combine all approaches for the best recall.

Returns a ranked list of matching assets with identifiers, types, and relevance scores.

Input parameters:

- `asset_type`: Filter to a specific asset type. snake_case, e.g. snowflake_table, dbt_model.
- `importance`: Filter to a specific importance level: 'high', 'medium', or 'low'.
- `limit` (integer): Maximum number of results (1-50).
- `mode` (string): Search mode. 'identifier' (default): exact/wildcard match on asset_identifier. 'keyword': full-text search over indexed keywords. 'semantic': vector similarity search. 'hybrid': fuses identifier + ke…
- `query` (string, required): Search query. For identifier mode: asset name or wildcard pattern (e.g. 'fct_orders', 'stg_*', 'analytics.*customers'). For keyword/semantic/hybrid: natural language query (e.g. 'revenue metrics', 'u…
- `tags`: Filter to assets with any of these tags (OR semantics).
- `tool_type`: Filter to a specific tool. UPPERCASE, e.g. SNOWFLAKE, DBT_CLOUD, BIGQUERY.

### `describe_asset` (~275 tokens)

Fetch detailed information about a data asset by its identifier.

Resolves the asset, then fetches the requested sections in parallel. Use this after
advanced_search or resolve_asset_id to get deeper information about a specific asset.

Sections:
\- overview: asset description, importance, owner, metadata
\- columns: full column schema with types and descriptions
\- tests: dbt test coverage (only for assets with a dbt parent)
\- context_counts: cheap count of linked tickets and Slack threads
\- tickets: full Jira/Linear ticket content
\- slack: full Slack thread content (truncated to first 5 messages per thread)

Input parameters:

- `asset_identifier` (string, required): Asset name or Sidecar asset identifier (e.g. 'fct_orders' or 'model.jaffle_shop.fct_orders').
- `include` (array, required): Which sections to fetch. One or more of: 'overview' (description, importance, owner), 'columns' (schema), 'tests' (dbt test coverage), 'context_counts' (ticket/slack counts), 'tickets' (full ticket c…
- `tool_type`: Optional tool/source hint to disambiguate (e.g. SNOWFLAKE, DBT_CLOUD).

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/com-sidecardata-sidecar/sidecar-mcp#diagnostics

## Score history

- 2026-08-03: 37
- 2026-08-02: 37
- 2026-08-01: 37
- 2026-07-31: 37
- 2026-07-30: 23
- 2026-07-29: 23
- 2026-07-28: 67
- 2026-07-27: 66
- 2026-07-26: 65

## Links

- Remote endpoint: https://service-mcp.sidecardata.com/sidecar/mcp
- Authorisation metadata: https://service-mcp.sidecardata.com/.well-known/oauth-protected-resource/sidecar/mcp
- Website: https://sidecardata.com/
- Changelog RSS feed: https://verifymcp.io/servers/com-sidecardata-sidecar/sidecar-mcp/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/com-sidecardata-sidecar/sidecar-mcp/changelog.json
- HTML version of this page: https://verifymcp.io/servers/com-sidecardata-sidecar/sidecar-mcp
