Skip to content
Neram
Esc
navigateopen⌘Jpreview
On this page

Reference

Stable, machine-readable error codes for CLI and MCP.

CLI and MCP failures use stable, machine-readable codes. An AMBIGUOUS response includes candidate ids in details.matches so agents can retry with an exact id.

Error codes

UNAUTHENTICATED       # run neram login
MISSING_CONFIG        # config fetch failed; check network or env overrides
AMBIGUOUS             # name matched multiple records; retry with an id from details.matches
NOT_FOUND             # project or task does not exist
FORBIDDEN             # caller lacks access
ORGANIZATION_REQUIRED # choose a workspace and sign in again
CONFIRMATION_REQUIRED # exact Organization id/slug or confirmation is missing
VALIDATION            # bad input shape or value
{
  "error": {
    "code": "AMBIGUOUS",
    "message": "Multiple projects matched \"Website\".",
    "details": {
      "matches": [
        { "id": "j57abc...", "name": "Website" },
        { "id": "j57def...", "name": "Website" }
      ]
    }
  }
}

Tool failure shape

MCP tool failures return isError: true with content: [{ type: "text", text: JSON.stringify({ error }) }]. They are not protocol exceptions. The same shape is returned by neram --json commands on failure.

Config

Public CLI config is at /.well-known/neram-agent.json. It exposes convexUrl, clerkFrontendApiUrl, and oauthClientId. Override only for local dev with NERAM_CONVEX_URL, NERAM_CLERK_FRONTEND_API_URL, NERAM_CLERK_OAUTH_CLIENT_ID.

Skills

The neram skill (skills/neram/SKILL.md, grouped as “Neram” in skills.sh.json) teaches an agent to use the CLI and MCP surfaces above instead of browser automation.

Was this page helpful?