Skip to content
Go To Dashboard

Core Tools

Reference documentation for the 20 core tools available through Sapiom’s MCP server. For setup instructions and the full 77-tool catalog, see Setup.

Most service tools accept an optional agentName parameter for spend attribution and rule scoping. See agentName Pattern below.


Discover the best Sapiom tools for your objective. Provide a goal and receive ranked tool recommendations with usage examples.

objective string required

What you want to accomplish (e.g. “convert text to audio and search the web”)

constraints string[]

Optional constraints or requirements (e.g. ["must be fast", "audio output"])

context string

Optional additional context about your use case


Search the web using Linkup and receive an AI-synthesised answer with source citations. Use depth: "deep" for comprehensive research on complex topics.

query string required

The search query

depth enum default: standard

Search depth: standard (faster) or deep (more thorough)

Search the web using You.com and get formatted web and news results. Uses a different provider and index than sapiom_search (Linkup) — use both for broader coverage.

query string required

The search query


Fetch and extract content from a webpage as markdown. Returns the page content with title header.

url string required

URL of the webpage to fetch

Capture a screenshot of a webpage. Returns a URL to the screenshot PNG (expires after 1 hour).

url string required

URL of the webpage to screenshot

width number default: 1280

Viewport width in pixels

height number default: 720

Viewport height in pixels


Convert text to speech using ElevenLabs. Returns a URL to the generated audio (mp3). Best for text under ~400 words — split longer scripts into chunks.

text string required

The text to convert to speech (max 5000 characters — split longer text into chunks)

voice_id string default: 21m00Tcm4TlvDq8ikWAM

ElevenLabs voice ID. Use sapiom_list_voices to find available voices and IDs.

model_id string default: eleven_multilingual_v2

ElevenLabs model ID

Generate sound effects from a text description using ElevenLabs. Returns a URL to the generated audio (mp3).

text string required

Description of the sound effect to generate (e.g. “thunderstorm with rain”)

duration_seconds number

Duration in seconds (0.5–22). Auto-selected if not specified.

List all available ElevenLabs voices with their IDs. Free endpoint — no payment required. This tool takes no required parameters.


Send a prompt to an LLM via OpenRouter and receive a text response.

prompt string required

The user message to send to the language model

model string default: openai/gpt-4o-mini

Model ID (e.g. openai/gpt-4o, anthropic/claude-3.5-sonnet)

system_prompt string

Optional system prompt to set context or behavior

max_tokens number default: 4096

Maximum tokens in the response

List available LLM models from OpenRouter, optionally filtered by category. Free endpoint — no payment required.

category string

Optional category filter (e.g. “chat”, “completion”, “embedding”)


Generate images from a text prompt using Fal.ai models (default: FLUX Schnell).

prompt string required

Text description of the image to generate

model_id string default: fal-ai/flux/schnell

Fal.ai model ID (e.g. fal-ai/flux/dev, fal-ai/flux-pro)

image_size enum

Image size/aspect ratio: square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9

num_images number default: 1

Number of images to generate (1–4)


Send a verification code to a US phone number via SMS.

phoneNumber string required

US phone number in E.164 format (e.g. +15551234567). Must match +1XXXXXXXXXX.

Returns: A verification ID needed to check the code later.

Check a 6-digit verification code that was sent via sapiom_verify_send.

verificationId string required

The verification ID returned by sapiom_verify_send

code string required

The 6-digit verification code the user received via SMS


Create a new agent within the authenticated tenant. Agents are used to tag and track transactions.

label string required

Human-readable display name for the agent

name string

Optional programmatic identifier for find-or-create behavior (e.g. “marketing-bot-01”)

description string

Optional description of the agent purpose or functionality

List agents for the authenticated tenant.

status enum

Filter agents by status: active or paused

limit number default: 20

Maximum number of agents to return (1–100)

Create a spending or usage rule that enforces limits on agent transactions. Rules can cap total cost, transaction count, or per-transaction amounts within optional time windows.

name string required

Human-readable name for this rule

ruleType enum required

Rule type — currently only usage_limit is supported

limitValue number required

Threshold value that, when exceeded, triggers the rule

measurementType enum required

What is being measured: count_transactions, sum_payment_amount (cumulative USD), this_payment_amount (single payment USD), sum_transaction_costs (cumulative cost USD), this_transaction_cost (single transaction cost USD)

agentIds string[]

Optional list of agent UUIDs to scope this rule to specific agents

intervalValue number

Time window size (e.g. 24 for 24 hours). Omit for single-transaction comparisons.

intervalUnit enum

Unit for intervalValue: seconds, minutes, hours, days

isRolling boolean default: true

Whether the time window is rolling (true) or calendar-aligned (false)

List spending and usage rules for the authenticated tenant.

status enum

Filter rules by status: active or paused

agentId string

Filter rules scoped to a specific agent UUID

limit number default: 20

Maximum number of rules to return (1–100)

Create a new transaction API key for the authenticated tenant. The plain key is shown only once — store it securely immediately.

name string required

Name for the API key (1–255 characters)

description string

Optional description of what this key is used for


Check authentication and tenancy context for this remote MCP session. Free endpoint — no payment required. This tool takes no parameters.

Returns authentication options for connecting to Sapiom. Provides both browser-based (localhost redirect) and device code (universal) auth flows. Use this when helping users set up new team members or generate additional API keys. This tool takes no parameters.


Most service tools accept an optional agentName parameter. When provided, the tool call is attributed to the named agent for spend tracking and rule enforcement.

{ "query": "quantum computing", "agentName": "research-bot-01" }

Use sapiom_create_agent to register agents, then reference them by name on subsequent calls. Spending rules created with sapiom_create_spending_rule can be scoped to specific agents.


Some tools have backward-compatible aliases that can be used interchangeably:

ToolAliases
sapiom_searchweb_search
sapiom_deep_searchsapiom_web_results
sapiom_fetchbrowser_extract
sapiom_screenshotscreenshot
sapiom_text_to_speechtts
sapiom_sound_effectssfx
sapiom_list_voiceslist_voices
tool_discoverdiscover_tools, find_tools
sapiom_authenticateauthenticate, login
sapiom_job_deployjob_deploy, deploy_job
sapiom_job_listjob_list, list_jobs
sapiom_job_getjob_get, get_job
sapiom_job_updatejob_update, redeploy_job
sapiom_job_deletejob_delete, delete_job
sapiom_job_triggerjob_trigger, trigger_job, job_execute
sapiom_job_list_executionsjob_list_executions, list_job_executions
sapiom_job_get_executionjob_get_execution, get_job_execution
sapiom_sandbox_createsandbox_create, create_sandbox
sapiom_sandbox_listsandbox_list, list_sandboxes
sapiom_sandbox_getsandbox_get, get_sandbox
sapiom_sandbox_deletesandbox_delete, delete_sandbox
sapiom_sandbox_extendsandbox_extend, extend_sandbox
sapiom_sandbox_execsandbox_exec, exec_sandbox
sapiom_sandbox_process_logssandbox_logs
sapiom_sandbox_list_filessandbox_ls, sandbox_tree
sapiom_sandbox_read_filesandbox_read_file, read_sandbox_file
sapiom_sandbox_write_filesandbox_write_file, write_sandbox_file
sapiom_sandbox_deploysandbox_deploy, deploy_sandbox
sapiom_redis_createredis_create, create_redis
sapiom_redis_listredis_list, list_redis
sapiom_redis_deleteredis_delete, delete_redis
sapiom_redis_updateredis_update, redis_extend
sapiom_redis_commandredis_exec, redis_run
sapiom_vector_createvector_create, create_vector_index
sapiom_vector_listvector_list, list_vector_indexes
sapiom_vector_deletevector_delete, delete_vector_index
sapiom_vector_updatevector_update, vector_extend
sapiom_vector_upsertvector_upsert
sapiom_vector_queryvector_search, vector_similarity
sapiom_searchindex_createsearch_create, create_search_index
sapiom_searchindex_listsearch_list, list_search_indexes
sapiom_searchindex_deletesearch_delete, delete_search_index
sapiom_searchindex_updatesearch_update, searchindex_update, search_extend
sapiom_searchindex_upsertsearch_upsert, search_index_documents
sapiom_searchindex_querysearch_query, search_documents
sapiom_message_publishmessage_publish, publish_message, qstash_publish
sapiom_message_enqueuemessage_enqueue, qstash_enqueue
sapiom_message_batchmessage_batch, qstash_batch
sapiom_message_getmessage_get, qstash_message_status
sapiom_message_cancelmessage_cancel, qstash_cancel
sapiom_schedule_createschedule_create, qstash_schedule
sapiom_schedule_listschedule_list, list_schedules
sapiom_schedule_getschedule_get, qstash_schedule_status
sapiom_schedule_deleteschedule_delete, delete_schedule
sapiom_schedule_pauseschedule_pause, pause_schedule
sapiom_schedule_resumeschedule_resume, resume_schedule
sapiom_queue_listqueue_list, list_queues
sapiom_queue_getqueue_get, qstash_queue_status
sapiom_queue_deletequeue_delete, delete_queue
sapiom_queue_pausequeue_pause, pause_queue
sapiom_queue_resumequeue_resume, resume_queue