Skip to content
Phylax
Integration guides

Remote Phylax MCP

Point your assistant at the hosted Phylax MCP server, with one configuration shared across a team.

The hosted server needs nothing installed. The client connects over HTTPS, which means one configuration works for a whole team and for clients that cannot spawn a local process.

Local or remote

LocalRemote
InstallPhylax CLI on every machineNothing
Transportstdio, no portHTTPS
TokenPer developer, stays on the machineIssued per user or per team
Works offlineYes, for cached verdictsNo
Best forOne machine, no network hopA team sharing one configuration

Connect

claude_desktop_config.json
{
"mcpServers": {
"phylax": {
"url": "https://mcp.phyi.dev",
"headers": {
"Authorization": "Bearer ${PHYLAX_API_TOKEN}"
}
}
}
}

Issue the token from API tokens. Read endpoints are public, so the token only matters once you want your organization’s policies applied to the verdicts.

How the token is scoped

The token is bound to this server

Your Phylax token carries an audience claim naming the Phylax MCP server, and the server rejects anything issued for a different service even when it is correctly signed and unexpired. It is also never forwarded to a downstream API. Both behaviours are requirements of the MCP authorization specification, not choices: a server that accepts foreign tokens or passes them through is the confused deputy problem in the making.

The practical consequence for you: a Phylax token is useless to any other MCP server, and a token for some other service is useless here. That is intentional, and it is why you cannot reuse one token across every tool in your setup.

Team and organization scope

A token issued at organization level applies your shared policy to every verdict it returns, so two developers asking the same question get the same answer. A personal token returns the default public verdict. If a verdict differs between two people, the token scope is the first thing to check.

Before you connect any remote MCP server

This applies to every remote server you add, not just this one. A client that follows URLs supplied by a server can be steered somewhere it should not go.

  • Require HTTPS. Accept http:// only on loopback during development.
  • Block private and link-local address ranges when following any URL a server hands you: 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16, 127.0.0.0/8, 169.254.0.0/16, fc00::/7 and fe80::/10. The link-local range is the one that protects cloud instance credentials.
  • Reject non-HTTP schemes in authorization URLs. javascript:, data: and file: have no legitimate use here.

Reputable clients do this for you. It is worth knowing because it is the difference between a malicious server being an annoyance and it being an credential exfiltration path.

Local Phylax MCP for the stdio setup, or MCP Servers for what Phylax checks and why.

Did this page help you?