Skip to main content
Version: v1.0.0(int)

Connect Your Agent

The MCP endpoint is your Pharus API host plus /mcp:

https://<pharus-backend>.run.app/mcp

It speaks Streamable HTTP (the current MCP remote transport), stateless — no sessions to manage. You need a personal access token (pharus_pat_...).

tip

Replace https://<pharus-backend>.run.app below with the API URL for your environment — the same host your Pharus web client talks to.

Claude Code

claude mcp add --transport http pharus https://<pharus-backend>.run.app/mcp \
--header "Authorization: Bearer pharus_pat_YOUR_TOKEN"

Then just ask: "using pharus, how much raw cotton do we have in stock?"

Claude Desktop / claude.ai

Add a custom connector (Settings → Connectors → Add custom connector) with the URL https://<pharus-backend>.run.app/mcp. For clients that don't yet support sending a custom Authorization header, bridge with mcp-remote in your claude_desktop_config.json:

{
"mcpServers": {
"pharus": {
"command": "npx",
"args": [
"mcp-remote",
"https://<pharus-backend>.run.app/mcp",
"--header",
"Authorization: Bearer pharus_pat_YOUR_TOKEN"
]
}
}
}

Claude API (MCP connector)

Pass the server directly in a Messages API call:

{
"model": "claude-opus-4-8",
"max_tokens": 2048,
"mcp_servers": [
{
"type": "url",
"url": "https://<pharus-backend>.run.app/mcp",
"name": "pharus",
"authorization_token": "pharus_pat_YOUR_TOKEN"
}
],
"messages": [{ "role": "user", "content": "List our open purchase orders" }]
}

Any other MCP client

Standard Streamable HTTP configuration:

  • URL: https://<pharus-backend>.run.app/mcp
  • Header: Authorization: Bearer pharus_pat_YOUR_TOKEN
  • Transport: Streamable HTTP (POST only; the server is stateless and returns JSON responses)

First contact

Your token is bound to a single organization and every call is scoped to it automatically — there is no identity or "who am I" step. Jump straight into the data plane: the Tool Reference is the menu.

Troubleshooting

SymptomCause
401 UnauthorizedMissing/invalid/expired/revoked token, or a non-PAT bearer (the MCP endpoint only accepts pharus_pat_* tokens).
403 forbidden on a tool callYour role in the organization doesn't allow that operation (e.g. member trying an admin-only delete).
405 Method Not AllowedThe client tried GET/SSE on /mcp — the server is stateless; use a Streamable-HTTP client.
Tool error validation_failedThe arguments don't match the tool's input schema — the error details name the offending fields.