Link the agent.
Sign in, then link this computer from a device that is already unlocked. Both show the same 6-digit fingerprint before the key moves.
$ bunx askcalls login --url https://askcalls.com $ bunx askcalls link
Add it to your client.
Claude Code
$ claude mcp add --scope user askcalls -- bunx askcalls mcp
Claude Desktop
Open Settings → Developer → Edit Config, or edit the file directly. Restart Claude Desktop after saving.
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"askcalls": {
"command": "bunx",
"args": ["askcalls", "mcp"]
}
}
}Cursor
~/.cursor/mcp.json for all projects, or .cursor/mcp.json for one.
{
"mcpServers": {
"askcalls": {
"command": "bunx",
"args": ["askcalls", "mcp"]
}
}
}VS Code
.vscode/mcp.json in your workspace.
{
"servers": {
"askcalls": {
"type": "stdio",
"command": "bunx",
"args": ["askcalls", "mcp"]
}
}
}Windsurf
~/.codeium/windsurf/mcp_config.json.
{
"mcpServers": {
"askcalls": {
"command": "bunx",
"args": ["askcalls", "mcp"]
}
}
}Codex CLI
$ codex mcp add askcalls -- bunx askcalls mcp
Or in ~/.codex/config.toml.
[mcp_servers.askcalls] command = "bunx" args = ["askcalls", "mcp"]
Desktop apps don't always inherit your shell's PATH. If a client can't start the server, replace bunx with its full path from which bunx.
Tools.
Transcripts are returned as untrusted content in a delimited field, never as instructions.
| Tool | What it does |
|---|---|
search_calls | Keyword, contact, tag, intent, date and semantic search, with decrypted results |
get_call | Full transcript and metadata, within a per-session decrypt budget |
list_recent_calls | Recent calls with decrypted metadata |
ingest_call, ingest_batch | Import a single call or a whole folder |
star_call, tag_call | Update stars and tags |
list_tags, list_contacts | Your decrypted catalogs |
Bulk import.
Bulk import from the command line uses the same pipeline as the app.
$ askcalls ingest ./calls --manifest manifest.csv --backup-recordings
Remote MCP.
A remote MCP endpoint serves clients that can't run a local process. It has no keys, so it offers only inbox_upload, list_recent_calls (ids, days and durations) and account_status. Inbox uploads are visible to the server in transit, encrypted to your inbox public key on arrival, and indexed the next time one of your devices unlocks.
Create a personal access token in Settings → API and MCP, then:
$ claude mcp add --transport http askcalls-remote https://askcalls.com/api/mcp \ --header "Authorization: Bearer ac_..."
For clients configured with JSON:
{
"mcpServers": {
"askcalls-remote": {
"url": "https://askcalls.com/api/mcp",
"headers": { "Authorization": "Bearer ac_..." }
}
}
}