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

# Use the Dedica API and MCP server

> Create a Dedica account, see the operations the dashboard uses, and connect an AI agent to Dedica's own MCP server with OAuth.

Everything you can do in the Dedica dashboard, an AI agent can do through Dedica's own MCP server. Both use the same sign-in and the same [role permissions](https://docs.getdedica.com/reference/roles.md).

## Sign in

Create an account at [app.getdedica.com/sign-up](https://app.getdedica.com/sign-up) with Google or a code sent to your email. If you aren't joining a team, you name your company and become its owner.

Agents sign in through OAuth, as described under [Dedica MCP server](#dedica-mcp-server). Every API request carries a bearer token:

```bash theme={null}
curl https://api.getdedica.com/api/v1/auth/me/ \
  -H "Authorization: Bearer $DEDICA_TOKEN"
```

There is no way yet to get a token for your own scripts. See [Limitations](https://docs.getdedica.com/reference/limitations.md).

A `401` means the token is missing, expired or not valid. A `403` with a `code` under `extra` means the token is valid but your account can't be used this way, for example `account_inactive` or `organization_mismatch`.

## Errors

Errors share one shape:

```json theme={null}
{"message": "What went wrong", "extra": {}}
```

A validation error puts the field errors under `extra.fields`.

## Common operations

| Operation | Request |
| - | - |
| Your site's latest agent-readiness report (`404` before its first scan finishes) | `GET /api/v1/site-report/` |
| Scan your site again, or join the scan already running | `POST /api/v1/site-report/scan/start/` |
| The latest scan's progress | `GET /api/v1/site-report/scan/` |
| Your onboarding steps | `GET /api/v1/onboarding/` |
| Middleware status and setup values, and your [preview](https://docs.getdedica.com/serving/preview.md) address (`preview_url`) | `GET /api/v1/onboarding/middleware/` |
| Run the middleware check | `POST /api/v1/onboarding/middleware/check/` |
| Switch the serving mode | `PATCH /api/v1/onboarding/middleware/mode/update/` with `{"mode": "autopilot"}` |
| Check that agents get your content | `POST /api/v1/onboarding/middleware/serving/check/` |
| List findings and drafts | `GET /api/v1/site/items/?kind=&pending=` |
| Approve a draft | `POST /api/v1/site/items/<id>/approve/` |
| Dismiss a draft | `POST /api/v1/site/items/<id>/dismiss/` |
| Approve every draft of a kind | `POST /api/v1/site/items/approve/` with `{"kind": "agent_page"}` |
| Edit a live item, or turn a tool or agent page off | `PATCH /api/v1/site/items/<id>/update/` with `{"data": {...}}` (`"enabled": false` turns it off) |
| Remove a live item | `POST /api/v1/site/items/<id>/remove/` |
| Restore a removed item, or bring back a dismissed one | `POST /api/v1/site/items/<id>/restore/` |
| An item's history | `GET /api/v1/site/changes/?item_id=<id>` |
| Analyse your site again | `POST /api/v1/site/analysis/start/` |
| See what an agent gets at a path | `GET /api/v1/agent-pages/content/?path=/pricing.md` |

## Dedica MCP server

Dedica's own MCP server is at `https://api.getdedica.com/mcp`. Its tools are generated from the API, so an agent can do anything you can, within your role. Add the address to your agent, and it opens a browser for you to sign in, approve access and choose your organization. For example, with Claude Code:

```bash theme={null}
claude mcp add --transport http dedica https://api.getdedica.com/mcp
```

> [!NOTE]
>
> This is Dedica's MCP server for managing your account. The MCP server agents use on your website is at `https://<your domain>/mcp`. See [MCP server and /ask](https://docs.getdedica.com/serving/mcp-and-ask.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.