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

# Troubleshooting

What the server says when something is wrong, and what to do about it

### Connection and authentication

| What you see                                                                                       | What it means                                                                                                                    | What to do                                                                                              |
| -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- |
| `Send your DivMagic MCP key as an Authorization: Bearer header.`                                   | No key reached the server.                                                                                                       | Check that the `Authorization` header is set in your client config, spelled exactly as in the examples. |
| `This MCP key is not valid.`                                                                       | The key was not recognised. Usually a typo, a truncated paste, or a key that was revoked by issuing a new one.                   | Create a new key in the Dashboard and update your client config.                                        |
| `This MCP key is not active. Buy MCP credits at https://divmagic.com/dashboard to start using it.` | The key is genuine but the account has never bought MCP credits.                                                                 | Buy credits on the **MCP Server** page. The key you already hold activates — do not create a new one.   |
| The server connects but no tools appear                                                            | An inactive key is refused before the tool list is sent, so the connection fails as a whole rather than returning an empty list. | Same as above — buy credits, then restart the client.                                                   |
| The server does not appear in your client at all                                                   | The config was not picked up.                                                                                                    | Restart the client. Check the file path and that the JSON parses.                                       |

{% hint style="info" %}
An inactive key answers `403`, not `401`. That is deliberate: the key is real, so re-authenticating would hand back the same key. Buying credits is the only thing that changes the answer.
{% endhint %}

### Credits

| What you see                                                                         | What it means                              |
| ------------------------------------------------------------------------------------ | ------------------------------------------ |
| `Your MCP quota is exhausted. Top up at https://divmagic.com/dashboard to continue.` | The key is active but the balance is zero. |

An exhausted balance stops copies and nothing else. Your key stays active, the connection stays up, and every library tool keeps working — running out of credits never locks you out of designs you already own.

### Copying

| What you see                                                     | What it means                                      | What to do                                                           |
| ---------------------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------------------------- |
| `Still working. Ask again in about 10 seconds.`                  | The render is in progress.                         | Wait and call `get_component_result` again.                          |
| `The attempt on this job stopped without finishing.`             | The worker stopped before producing a result.      | Call `copy_component_from_url` again with the same inputs.           |
| `No such job. It may have expired; copies are kept for 30 days.` | The job id is unknown or older than 30 days.       | Run the copy again.                                                  |
| `The result is no longer available. Please run the copy again.`  | The record survived but the stored markup did not. | Run the copy again.                                                  |
| `Unable to connect to the url`                                   | The page could not be reached.                     | Check the URL. Pages behind a login or bot protection will not copy. |
| `The provided URL does not exist or is not accessible`           | The page answered `404`.                           | Check the URL.                                                       |

### The copy came back wrong

**Content is missing.** The page may render that content only after interaction, or only at a wider window. Copies are taken at a fixed browser size, so a desktop-only navigation bar that collapses on narrow screens will not be in the copy.

**The layout looks wrong when pasted.** Some sites' stylesheets do not yield media queries the converter can carry over. The copy is then a snapshot of one width rather than a responsive layout.

**The page changed since.** If the copy came with a `[stored copy, rendered …]` notice, ask again with `refresh: true`.

**The agent restructured it.** If what you received is tidier than the source — content lifted into arrays, repeated blocks turned into a `.map()` — that is the agent, not DivMagic. Ask it for the copy exactly as the tool returned it.

### Library

| What you see                                                         | What it means                                                                                           |
| -------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- |
| `This MCP key is not attached to a DivMagic account with a library.` | The key predates a dashboard sign-in. Sign in at the Dashboard and issue the key again.                 |
| A save was refused for containing JavaScript                         | The library renders markup and never runs it. See [what may be saved](/mcp/tools.md#what-may-be-saved). |
| A save was refused as too large                                      | A component may hold up to 250,000 bytes.                                                               |
| A component "does not exist"                                         | It belongs to another account. Components are scoped to the account the key belongs to.                 |

### Still stuck

Account, billing and key questions: [divmagic.com](https://divmagic.com)

When reporting a bad copy, include the URL, the `componentFormat` and `styleFormat` you asked for, and the job id if you were given one.
