MCP server

The gateway is a remote Model Context Protocol server at https://mvdw-software.com/exact/data-bridge/api/mcp (Streamable HTTP). Each resource becomes tools (e.g. list and get accounts); a client only sees the tools its permissions allow, and every call goes through the same checks as the REST API.

Connect with OAuth (recommended)

Add the server URL to your MCP client. On first use the client opens your browser:

  1. Sign in to the dashboard (two-factor authentication required).
  2. Choose the organization and exactly which data and actions the app may use.
  3. Approve. The client receives short-lived tokens (10 minutes, refreshed automatically).

Administrators see connected apps under API keys → Connected apps and can revoke them at any time; access also ends when the approving administrator loses that role.

Claude (Settings → Connectors → Add custom connector): URL https://mvdw-software.com/exact/data-bridge/api/mcp.

Claude Code:

claude mcp add --transport http exact-data-bridge https://mvdw-software.com/exact/data-bridge/api/mcp

VS Code (.vscode/mcp.json):

{
  "servers": { "exact-data-bridge": { "type": "http", "url": "https://mvdw-software.com/exact/data-bridge/api/mcp" } }
}

Clients must use https redirect URIs or a loopback address (http://127.0.0.1:…); clients with custom URL schemes are not supported yet.

Connect with an API key

For headless agents, send an API key instead:

{
  "servers": {
    "exact-data-bridge": {
      "type": "http",
      "url": "https://mvdw-software.com/exact/data-bridge/api/mcp",
      "headers": { "Authorization": "Bearer exg_live_..." }
    }
  }
}

What the assistant can see

Only what you granted. An assistant with read access to accounts in one administration cannot list other tools, read invoices or touch another administration — the request is denied and appears in your audit log. Exact data is passed through and never logged.