Connect your AI to Purser
Your AI reads your books in Purser over MCP: invoices, payments, cash, VAT, what waits for approval and the CFO's policy.
Read only. No AI can approve, pay, change a limit or write to the books. Every payment needs the CFO's Face ID in Purser Cloud.
https://purser-try.max-31b.workers.dev/mcppurser-demo-read-only reads the demo company: made-up data, no real money.Claude
claude.ai, the Claude desktop and mobile apps, and Claude Code.
- claude.ai or the Claude app: Customize (or Settings), Connectors, Add custom connector.
- Name it Purser and paste https://purser-try.max-31b.workers.dev/mcp. Leave the sign-in on automatic.
- Claude opens Purser's sign-in page: paste your connector token, or choose Use the demo company.
Claude Code, with a token
claude mcp add --transport http purser https://purser-try.max-31b.workers.dev/mcp --header "Authorization: Bearer purser-demo-read-only"Claude Code, signing in through Purser's page
claude mcp add --transport http purser https://purser-try.max-31b.workers.dev/mcp
On a Team or Enterprise plan an owner adds custom connectors for the organisation.
ChatGPT
ChatGPT on the web: custom MCP servers as connectors (apps).
- In ChatGPT, open Apps (or Plugins), +, Add custom MCP server.
- Name Purser, connection URL https://purser-try.max-31b.workers.dev/mcp.
- Authentication: OAuth. ChatGPT finds Purser's sign-in by itself; on Purser's page paste your connector token or choose Use the demo company.
- Accept the warning and create it. Purser's tools are read only.
ChatGPT signs in by OAuth only; it cannot send a fixed token, so the demo token does not apply here (choose Use the demo company instead). OpenAI lists custom MCP servers for Business, Enterprise and Edu workspaces, and read/fetch connectors for Pro.
Cursor
Cursor's agent, in ~/.cursor/mcp.json (all projects) or .cursor/mcp.json (one project).
- Click Add to Cursor, or paste the config below.
- Without a header, Cursor opens Purser's sign-in page.
~/.cursor/mcp.json
{
"mcpServers": {
"purser": {
"url": "https://purser-try.max-31b.workers.dev/mcp",
"headers": {
"Authorization": "Bearer ${env:PURSER_CONNECTOR_TOKEN}"
}
}
}
}
Set PURSER_CONNECTOR_TOKEN to your connector token (or purser-demo-read-only).
VS Code
GitHub Copilot's agent mode in VS Code.
Add to VS CodeAdd to VS Code Insiders
- Click Add to VS Code, or Command Palette, MCP: Add Server, HTTP, and paste the address.
- VS Code opens Purser's sign-in page, or sends the header from the config below.
.mcp.json at the workspace root (or ~/.copilot/mcp-config.json)
{
"mcpServers": {
"purser": {
"type": "http",
"url": "https://purser-try.max-31b.workers.dev/mcp",
"headers": {
"Authorization": "Bearer ${PURSER_CONNECTOR_TOKEN}"
}
}
}
}.vscode/mcp.json (the older format, asks for the token once)
{
"inputs": [
{
"type": "promptString",
"id": "purser-token",
"description": "Purser connector token",
"password": true
}
],
"servers": {
"purser": {
"type": "http",
"url": "https://purser-try.max-31b.workers.dev/mcp",
"headers": {
"Authorization": "Bearer ${input:purser-token}"
}
}
}
}
Gemini CLI
Google's Gemini CLI, in ~/.gemini/settings.json (or .gemini/settings.json in a project).
- Run the command, or add the config. httpUrl (not url) is Streamable HTTP.
Command
gemini mcp add --transport http --scope user --header "Authorization: Bearer purser-demo-read-only" purser https://purser-try.max-31b.workers.dev/mcp~/.gemini/settings.json
{
"mcpServers": {
"purser": {
"httpUrl": "https://purser-try.max-31b.workers.dev/mcp",
"headers": {
"Authorization": "Bearer purser-demo-read-only"
}
}
}
}
Without a header, Gemini CLI finds Purser's sign-in on the first 401.
Windsurf
Windsurf, now Devin Desktop: its MCP config file.
- Open the MCP config (~/.config/devin/mcp_config.json; older Windsurf: ~/.codeium/windsurf/mcp_config.json) and add Purser.
mcp_config.json
{
"mcpServers": {
"purser": {
"serverUrl": "https://purser-try.max-31b.workers.dev/mcp",
"headers": {
"Authorization": "Bearer ${env:PURSER_CONNECTOR_TOKEN}"
}
}
}
}Devin CLI
devin mcp add purser https://purser-try.max-31b.workers.dev/mcp
Windsurf's MCP documentation now lives in Devin's docs.
Other
Any MCP client that speaks Streamable HTTP, and the MCP Inspector.
- The server: https://purser-try.max-31b.workers.dev/mcp (Streamable HTTP). Sign-in: OAuth 2.1 with PKCE (client metadata documents or dynamic registration), or a bearer header.
MCP Inspector
npx @modelcontextprotocol/inspector --cli https://purser-try.max-31b.workers.dev/mcp --transport http --method tools/list --header "Authorization: Bearer purser-demo-read-only"