MCP

Troubleshooting

Symptom first, then the cause and the fix. Every error also carries a next_action sentence; read it before anything on this page.

401 Unauthorized

Every request to https://app.curviate.com/mcp is authenticated, the tool calls included, so a 401 means the credential on that request was missing or not accepted.

  • API key setup: the key is wrong, was rotated, or was revoked, or the environment variable the client reads is empty in the environment the client runs in. Copy the current key from the dashboard key chip and check the variable where the client starts. A cvt_test_ token is never valid.
  • OAuth setup: the client's access was revoked under Settings, Authorized applications, or its sign-in expired. Sign in again from the client (in Claude Code: /mcp, curviate, Authenticate; in Codex: codex mcp login curviate; in Gemini CLI: /mcp auth curviate).

Credential details: Authentication.

A tool seems missing

Its toolset is probably off: clients see a focused set by default, and Sales Navigator and Recruiter are off everywhere until turned on. Ask the agent to call list_toolsets (or explain_tools with the task), then enable_toolsets for the toolset it needs. If the client still does not show the tool, reconnect it so it reloads the tool list. Calling the tool directly returns TOOLSET_DISABLED naming the toolset. Full rules: Toolsets.

AMBIGUOUS_IDENTIFIER

Several LinkedIn accounts are connected and the call did not say which one to use, or the name it passed matches none of them. The error lists the accounts in candidates. Re-call with account_id set to one of those acc_ ids or its exact name. With one account connected, account_id can be left out.

FILTER_CANDIDATES_REQUIRED

A search filter value (a location, an industry, a company) matched more than one entry, or none exactly, so the search did not run. unresolved lists each value with its candidates. Re-call the same search with each listed value replaced by the id of the candidate you mean. Prefer full terms over abbreviations (Artificial Intelligence, not AI). The mechanism in depth: Search.

The session dropped after a server update

Curviate keeps MCP sessions in the server process, so a server deploy ends them. The next request on the old session gets 404 Session not found, which is the MCP signal for a client to start a new session, and clients that follow the spec reconnect on their own without you noticing. If yours shows the server as failed or disconnected instead, reconnect the server from the client's MCP settings, or restart the client. Your saved toolsets and OAuth sign-in survive; nothing else needs redoing.

The client connects, then every tool call fails with 401

Some clients send custom headers when they open the connection but not on the requests that follow. Because Curviate authenticates every request, the connection succeeds and each tool call is refused. Fixes, in order of preference:

  1. Use OAuth if the client supports it; tokens are sent on every request.
  2. Update the client; this is a client bug.
  3. As a last resort, put the key in the URL: https://app.curviate.com/mcp?token=cvt_live_YOUR_KEY. Read the warnings on Authentication first.