> ## Documentation Index
> Fetch the complete documentation index at: https://docs.alphractal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Tools and Resources

> Everything the MCP server exposes: tools by area, the resources you can pull by name, and the response envelope every tool shares.

## The response envelope

Every tool answers the same shape:

```json theme={null}
{ "ok": true, "tool": "get_metric_data", "data": { }, "error": null, "errorKind": null, "details": null }
```

Read the named collection inside `data` — `data.metrics`, `data.items`, and so on. When `ok`
is false, `errorKind` says which kind of refusal it is (see
[when it refuses](/mcp/connecting#when-it-refuses)).

**No ambient context.** Unlike the web chat, there is no open chart and no conversation
history: pass `assetId` and `chartId` explicitly on every call. Resolve them first with
`search_assets`, `suggest_charts` / `search_charts` and `search_metrics`.

## Discovery and metrics

| Tool                      | What it does                                                |
| ------------------------- | ----------------------------------------------------------- |
| `search_metrics`          | Find a metric by name or concept                            |
| `get_metric_info`         | Details of a single metric                                  |
| `get_metric_data`         | Time-series for a metric and asset                          |
| `compare_metrics`         | Two or more metrics on the same window                      |
| `get_metrics_variation`   | What moved today                                            |
| `get_endpoint_parameters` | Which parameters a metric accepts, including its timeframes |

## Assets and market

| Tool                      | What it does                                      |
| ------------------------- | ------------------------------------------------- |
| `search_assets`           | Resolve an asset by name or ticker                |
| `get_asset_info`          | Asset details                                     |
| `get_summary_info`        | Market summary for an asset                       |
| `get_asset_price_history` | Price history                                     |
| `get_trending_assets`     | Trending assets over a period (`1d`, `7d`, `30d`) |

## Charts

| Tool                      | What it does                        |
| ------------------------- | ----------------------------------- |
| `suggest_charts`          | Charts relevant to a question       |
| `search_charts`           | Find a chart by name                |
| `get_chart_details`       | What a chart is and how it is built |
| `get_chart_metrics`       | Metrics plotted on a chart          |
| `compare_charts`          | Two charts side by side             |
| `get_charts_by_asset`     | Charts covering an asset            |
| `get_charts_by_category`  | Charts in a category                |
| `get_categories_by_asset` | Categories available for an asset   |

## Analysis

| Tool                    | What it does                                                  |
| ----------------------- | ------------------------------------------------------------- |
| `backtest_metric`       | What happened historically after a metric crossed a threshold |
| `rank_assets_by_metric` | Rank assets by any metric                                     |
| `compute_purchase_plan` | Build a staged purchase plan                                  |

## Screener, derivatives and signals

| Tool                       | What it does                                            |
| -------------------------- | ------------------------------------------------------- |
| `get_screener_data`        | Screener rows                                           |
| `get_screener_overview`    | Screener ranking                                        |
| `get_liquidation_clusters` | Liquidation clusters for an asset and timeframe         |
| `get_ohlcv_spot`           | Spot candles                                            |
| `get_signal_series`        | Trading indicator series — the indicator is an argument |
| `get_signal_availability`  | Which buckets an asset actually has                     |

## Research

| Tool                      | What it does               |
| ------------------------- | -------------------------- |
| `search_reports`          | Search research by content |
| `get_reports_by_asset`    | Reports covering an asset  |
| `get_latest_reports`      | Most recent reports        |
| `get_report_key_insights` | Key insights from a report |

<Note>
  Reports above your plan come back as metadata only, flagged with `accessDenied` and
  `requiredPlanTier`. That is a plan wall, not an empty report.
</Note>

## Your account

| Tool                 | What it does                                           |
| -------------------- | ------------------------------------------------------ |
| `get_my_plan`        | Your plan and what it entitles you to                  |
| `get_my_usage`       | Credits and rate limit consumed                        |
| `get_user_favorites` | Your favorite assets                                   |
| `get_user_alerts`    | Your alerts                                            |
| `get_alert_triggers` | When your alerts fired                                 |
| `check_alert_usage`  | How many alerts your plan allows and how many are used |

## Tools that change something

These are flagged in the protocol so a well-behaved client asks you first.

| Tool                                                                     | What it does                                                   |
| ------------------------------------------------------------------------ | -------------------------------------------------------------- |
| `prepare_alert`                                                          | Stage an alert and return the exact configuration plus a token |
| `confirm_alert_creation`                                                 | Create the alert that was staged, by token                     |
| `update_alert`                                                           | Edit an existing alert                                         |
| `delete_alert`                                                           | Delete an alert                                                |
| `add_favorite_asset` / `remove_favorite_asset`                           | Manage favorites                                               |
| `list_screener_views`                                                    | Your saved screener views                                      |
| `create_screener_view` / `update_screener_view` / `delete_screener_view` | Manage saved views                                             |

<Warning>
  Alert creation is deliberately two calls. `prepare_alert` does not create anything — it
  returns the configuration for you to read and a token. Only `confirm_alert_creation` with
  that token creates the alert, and what gets created is what you were shown.
</Warning>

## Resources

Pullable by name, without a tool call:

| Resource                | URI                            |
| ----------------------- | ------------------------------ |
| Metric catalog          | `alphractal://catalog/metrics` |
| Asset catalog           | `alphractal://catalog/assets`  |
| My favorites            | `alphractal://user/favorites`  |
| Latest research reports | `alphractal://reports/latest`  |
| A specific report       | `alphractal://reports/{id}`    |

## Prompt

`asset-deep-dive` — a structured prompt that runs the tools in an order that works, instead
of leaving the model to guess the sequence.

## Timeframe is a resolution, never a period

One vocabulary across the whole platform — `1m`, `5m`, `15m`, `30m`, `1h`, `4h`, `6h`, `12h`,
`1d` — in which **`1m` is one minute**. There is no weekly or monthly interval anywhere.

`timeframe` sets the spacing between points; the period is `startDate` and `endDate`. Where a
tool ranks or measures over a span instead of sampling a series, the argument is called
`period` and takes spans (`1d`, `7d`, `30d`) — `get_trending_assets` is the one that does. So
`7d` is always a span and never a spacing.
