> For the complete documentation index, see [llms.txt](https://docs.metacopier.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.metacopier.io/ai/ai/endpoints.md).

# Endpoints and toolsets

The MCP server publishes **129 tools**. That is far more than most assistants handle well: a large tool list eats context, slows the model down and makes it more likely to pick the wrong tool. So the catalogue can be narrowed by the URL you connect to.

***

## The URL

```
https://ai.metacopier.io[/p/{projectId}]/mcp[/x/{toolset}][/readonly]
```

Every part in brackets is optional and they combine freely.

<table><thead><tr><th width="360">URL</th><th>What you get</th></tr></thead><tbody><tr><td><code>/mcp</code></td><td>The default toolsets on the project resolved from your login</td></tr><tr><td><code>/mcp/readonly</code></td><td>The same, with every write tool removed</td></tr><tr><td><code>/mcp/x/trading</code></td><td>Only the trading toolset</td></tr><tr><td><code>/mcp/x/all</code></td><td>All 129 tools</td></tr><tr><td><code>/mcp/x/all/readonly</code></td><td>Every read tool, no write tool at all</td></tr><tr><td><code>/p/{projectId}/mcp</code></td><td>The default toolsets on that specific project</td></tr><tr><td><code>/p/{projectId}/mcp/x/copiers/readonly</code></td><td>Read only copier tools on that specific project</td></tr></tbody></table>

{% hint style="info" %}
The URL is the whole configuration. There is no settings page for the connection, which means you can change what an assistant sees by editing one line in your client and reconnecting.
{% endhint %}

***

## Toolsets

<table><thead><tr><th width="150">Toolset</th><th width="70" align="center">Tools</th><th>Contents</th></tr></thead><tbody><tr><td><code>accounts</code></td><td align="center">25</td><td>Trading accounts, their connection state, balances, settings, groups and labels</td></tr><tr><td><code>templates</code></td><td align="center">8</td><td>Account templates and their defaults</td></tr><tr><td><code>copiers</code></td><td align="center">17</td><td>Copiers, their settings, symbol mappings, filters and state</td></tr><tr><td><code>strategies</code></td><td align="center">10</td><td>Strategies, their members and their configuration</td></tr><tr><td><code>trading</code></td><td align="center">10</td><td>Open positions, trade history, symbols, quotes, and the five tools that trade</td></tr><tr><td><code>reports</code></td><td align="center">4</td><td>Performance and statistics reporting</td></tr><tr><td><code>logs</code></td><td align="center">7</td><td>Account and copier logs, the first place to look when something did not fire</td></tr><tr><td><code>news</code></td><td align="center">19</td><td>Economic calendar, market news, bank holidays, news filters and calendar alerts</td></tr><tr><td><code>marketplace</code></td><td align="center">8</td><td>Signal marketplace, signal performance and earnings</td></tr><tr><td><code>dashboards</code></td><td align="center">5</td><td>Dashboards</td></tr><tr><td><code>webhooks</code></td><td align="center">4</td><td>Webhook requests and stored webhook data</td></tr><tr><td><code>project</code></td><td align="center">6</td><td>The project itself, its labels and its features</td></tr><tr><td><code>reference</code></td><td align="center">4</td><td>Enum values, copier setting fields, broker servers and the connection description</td></tr><tr><td><code>docs</code></td><td align="center">2</td><td>Search and read these documentation pages</td></tr></tbody></table>

### Default selection

Connecting to `/mcp` without naming a toolset gives you:

```
accounts, copiers, logs
```

That covers the great majority of questions people ask: what do I have, why is it not copying, what happened.

### Always present

`reference` and `docs` are added to **every** selection and cannot be switched off. The assistant needs them to know which values a field accepts and to look things up rather than guess.

### Selecting several toolsets

Name them comma separated:

```
https://ai.metacopier.io/mcp/x/accounts,copiers,trading,logs
```

Or use the header, which works on every endpoint shape:

```
X-MC-Toolsets: accounts,copiers,trading,logs
```

The header wins when both are present, which is handy for a client that lets you set headers but not the URL.

An unknown name is answered with an error naming the toolsets that exist. You are told, rather than silently handed the default.

***

## Read only endpoints

Appending `/readonly` removes every tool that can change anything. Only reads remain.

```
https://ai.metacopier.io/p/{projectId}/mcp/readonly
```

The same can be done with a header:

```
X-MC-Readonly: true
```

{% hint style="success" %}
This is a good default for a first connection. Let the assistant explain your setup for a while, and add write access once you trust what it does.
{% endhint %}

Read only is applied on top of everything else. A read only endpoint with a read write key is still read only, and a read write endpoint with a read only key is still read only. The most restrictive layer always wins.

***

## Prompts

Prompts are ready made workflows your client can offer as slash commands or buttons.

<table><thead><tr><th width="200">Prompt</th><th width="200">Arguments</th><th>What it does</th></tr></thead><tbody><tr><td><code>weekly-review</code></td><td><code>projectId</code>, <code>days</code></td><td>Walks through the past week of a project: what was traded, what went wrong, what is worth changing</td></tr><tr><td><code>diagnose-copier</code></td><td><code>accountId</code>, <code>symbol</code></td><td>Works out why trades are not arriving on a follower account</td></tr><tr><td><code>risk-audit</code></td><td><code>projectId</code></td><td>Checks a project for the gaps that turn a bad day into a blown account</td></tr><tr><td><code>onboard-account</code></td><td><code>accountId</code></td><td>Checks a newly added account against the accounts that already work</td></tr><tr><td><code>cost-review</code></td><td><code>projectId</code></td><td>Explains what the project is being charged for and where the money goes</td></tr></tbody></table>

Where an argument is optional, leaving it out means "the project of this connection".

***

## Resources

<table><thead><tr><th width="280">Resource</th><th>Contents</th></tr></thead><tbody><tr><td><code>metacopier://connection</code></td><td>Which project this connection works on, whether it may change anything, when it expires, and the access rules that apply</td></tr></tbody></table>

Attaching it at the start of a conversation saves the assistant from guessing, and stops it proposing a change it is not allowed to make.
