Skip to main content
Syntaxia exposes a read-only Model Context Protocol server so coding agents and chat clients can browse reconciled CRM accounts, contacts, reps, and opportunities from the org you authenticate as.

Authentication

Syntaxia supports two authentication paths:
  • OAuth 2.1 (recommended for Claude.ai web). The client registers itself, you approve consent in Syntaxia, and the access token is issued and stored automatically. Nothing to copy or paste.
  • Bearer token (Claude Desktop, Claude Code, Cursor, VS Code). You generate a token under Settings → Integrations and put it in the client’s config.
Both paths bind the resulting token to a user-and-org pair, so the token alone determines what data Claude sees. To connect Claude to a different organization, generate a new token (or re-authorize) for that workspace.

Sign in to Syntaxia

Generate a token at Settings → Integrations, or initiate an OAuth flow from the Claude.ai connector dialog.

Client setup

Tabs are organized from easiest to most-control. The endpoint is the same for all clients: https://app.syntaxia.com/mcp.
Claude.ai uses OAuth 2.1 with Dynamic Client Registration. You don’t need to generate or paste a token.
1

Open the connector dialog

In Claude.ai, go to Settings → Connectors and click Add custom connector.
2

Enter the endpoint

Name the connector (eg. Syntaxia) and paste the URL:
Leave OAuth Client ID and OAuth Client Secret empty under Advanced settings. Claude will register itself automatically.
3

Approve consent

Click Add. Claude opens a Syntaxia sign-in popup. After you sign in, the consent screen asks which organization to authorize. Pick one and click Allow.
4

Connected

The connector status flips to Connected and the four MCP tools (read_profile, list_accounts, search_accounts, read_account) become available to Claude.
To switch organizations, click Revoke on the connector card in Claude.ai, then re-add it and pick the other organization on the consent screen.

Tools

Always call search_accounts before read_account unless you already have a unified_account_id in context.

read_profile

Returns the authenticated user’s identity, organization, and role. No arguments.
Example response

list_accounts

Lists active unified accounts in the authenticated organization, paginated.
integer
default:"20"
Page size (max 100).
integer
default:"0"
Row offset for pagination.
uuid
Optional. Restrict to clusters with a member contributed by this source.
Example response

search_accounts

Fuzzy-searches unified accounts by name (pg_trgm similarity).
string
required
Search query (1 to 100 characters).
integer
default:"10"
Page size (max 50).
Example response

read_account

Returns the full reconciled payload for one unified account.
uuid
required
Unified account UUID, typically obtained from search_accounts or list_accounts.
Example response