The MCP server.
Every model, on your terms.
A Model Context Protocol server that exposes your map, briefings, skills, and answer tools to any MCP-aware client — Claude Desktop, Cursor, Zed, Continue, and the dozen others shipping monthly. No middleman, no per-token markup, no telemetry on your prompts.
› Desktop launches stdio servers, so the remote endpoint rides the mcp-remote bridge.
{
"mcpServers": {
"pulse": {
"command": "npx",
"args": [
"-y", "mcp-remote",
"https://YOUR_PULSE_HOST/api/mcp",
"--header", "Authorization: Bearer pk_live_..."
]
}
}
}- JSON-RPC 2.0 over HTTP · no npm dep, no proxy
- 15 read · 7 capture · 3 personal-memory · 2 propose — 27 tools via tools/list
- bearer auth · the same pk_live_* token your other API uses
@modelcontextprotocol/sdk dependency — the route at /api/mcp implements initialize, tools/list, and tools/call itself.tools/list so clients can introspect what they can do.Twenty-seven tools, one endpoint. Run your cursor over the surface.
Every call is permission-filtered, audited, and rate-limited via the per-key budget. Capture and personal-memory tools need an MCP token from /app/settings/integrations/mcp-tokens.
Hybrid search across decisions, docs, customers, and skills. Ranked hits with citations.
Tested with
The clients we use day to day. Anything that speaks JSON-RPC 2.0 over HTTP works, with or without the mcp-remote bridge.
Security model
An MCP server is a key into your data, and we treat it that way. Same login, same audit log, same instant kill switch as the Pulse app itself.
- 01 · auth
Bearer auth via existing API keys
Sign in with the same pk_live_* token your other integrations use. Read scope required; revoke in one click.
- 02 · enforcement
Permission check per call
Every call passes the same retrieval permission filter as the in-app surface. The server can't bypass an ACL.
- 03 · audit
Full call log per workspace
Caller, tool name, API-key id, and timestamp are written to the audit log. Pull it via GET /api/v1/audit.
- 04 · isolation
Scoped to your workspace
Keys are scoped to one workspace, matching /api/v1/*. No tool can reach another workspace's data.
- 05 · kill switch
Revoke in one click
Revoking a key takes effect immediately — the very next call is rejected, with no client cache to wait out.
- 06 · privacy
Read by default, act only on request
Capture, personal-memory, and propose tools act only when you invoke them; proposals wait in the human approval inbox.
The server is ready.
Your model is, too.
If you’re already on Pulse, the MCP server takes 90 seconds to set up. MCP access is included on every plan, no upgrade required.