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

# MCP server

> Drive Briefed Research Workflows from Claude, or any MCP client.

# MCP server

Compose a workflow, validate it, publish it and read its runs from an agentic
client, without writing an integration.

Ten tools over the [Workflows API](/api-reference/workflows/overview). Requires a
Max or Team plan, the same entitlement as the API itself. It does not require an
API key: you sign in and approve access.

## Connect

Add `https://mcp.briefedmedia.com/mcp` as a custom connector in your client. You
will be sent to Briefed to sign in and approve access, and that is the whole
setup: no API key to create, copy or store.

<CodeGroup>
  ```bash Claude Code theme={null}
  claude mcp add --transport http briefed https://mcp.briefedmedia.com/mcp
  ```

  ```json Claude Desktop theme={null}
  {
    "mcpServers": {
      "briefed": {
        "type": "http",
        "url": "https://mcp.briefedmedia.com/mcp"
      }
    }
  }
  ```
</CodeGroup>

Then ask your assistant to "list my Briefed workflows". Confirm with
`claude mcp list`.

Access is granted to your Briefed account. Revoke it at any time under
**Authorised apps** on
[Developer settings](https://id.briefedmedia.com/developer/oauth-apps).

### With an API key instead

For scripts and headless environments, send a key in the same header. Create one
under [API keys](https://id.briefedmedia.com/api-keys).

```bash theme={null}
claude mcp add --transport http briefed https://mcp.briefedmedia.com/mcp \
  --header "Authorization: Bearer $BRIEFED_API_KEY"
```

## Tools

| Tool                        | Does                                                                      |
| --------------------------- | ------------------------------------------------------------------------- |
| `workflow_list`             | Your workflows, with published version, trigger and schedule              |
| `workflow_get`              | One workflow in full: graph, pinned subjects, evidence gate, destinations |
| `workflow_catalogue`        | The research steps available, and what each requires and produces         |
| `workflow_resolve_subjects` | Resolve company names or tickers to pinned subjects                       |
| `workflow_validate`         | Check a draft before publishing. Costs nothing                            |
| `workflow_create`           | Create a draft                                                            |
| `workflow_save_version`     | Save a new version of a draft                                             |
| `workflow_runs`             | Runs for a workflow, with status and output                               |
| `workflow_publish`          | Publish a version. **Commits money if scheduled**                         |
| `workflow_run_now`          | Run once, now. **Spends credits**                                         |

The two marked actions are flagged to your client, so it can ask before an agent
commits anything. Everything else either reads or edits a draft.

## Permissions

The server holds no authority of its own. Every call runs through the Workflows
API as you, so plan entitlement, quotas and rate limits apply exactly as they do
to the REST API. An agent can reach nothing you cannot.

How the authority is bounded depends on which credential you connected with:

* **Approved access** (the connector above). Bounded by your plan entitlement,
  not by scopes, so the client can do anything the browser app can: create,
  publish and run. Revoke it under **Authorised apps** to end that.
* **An API key.** Additionally bounded by the key's scopes. A `read:workflows`
  key can list, read the catalogue, resolve subjects, validate drafts and read
  runs, and nothing it does can spend. Creating, publishing and running need
  `write:workflows`.

If you want an agent that provably cannot incur cost, connect it with a
read-only key rather than by approving access.

## Anya

Not exposed over MCP. Her output is typed as sourced fact, inference, ranking or
negative assertion, and that typing does not survive an agent rewriting it as
prose. Use [Anya's API](/research/anya#anyas-own-api) directly.

## Without an agent

If you are building a normal integration, use the
[Workflows REST API](/api-reference/workflows/overview). It is the same surface
these tools call.
