What Vaaya MCP server does
The Vaaya MCP server gives an agent a single MCP connection for paid services across web search, scraping, contact data, public records, research, media generation, browser automation, email, memory, monitoring, and compute. The backend exposes a live tool list, so available capabilities can change without updating the local shim.
Requests draw from one Vaaya balance rather than requiring provider credentials in the agent environment. Billing uses x402 USDC on Base, Stripe MPP, or Tempo, and applies only when a call succeeds. A call can be rejected before reaching its provider when its quoted price exceeds the caller's max_cost_cents limit.
How it works
Start with consult(intent) and describe the desired outcome in ordinary language. It can clarify the request and return the specific call or calls needed. Execute the resulting operation with use, passing the service, action, parameters, and maximum spend in cents.
Long-running operations return an asynchronous job identifier. Poll that identifier with result(job_id) until the operation completes. Code execution uses separate session and close operations for per-second-billed sandbox sessions.
The dedicated stocks tool is separate from consult and use. It can list supported tokenized stock symbols, show a portfolio and buying power, submit an authorized purchase, and retrieve an order's status. Purchase requests include an idempotency key and a maximum total prepaid spend including fees.
Setup and configuration
The Vaaya MCP server can be installed with npx @vaaya/mcp install, which detects and configures Claude Code, Claude Desktop, Cursor, and Codex. The installer is intended to be rerun for updates. On the first call, a browser approval flow handles account connection.
For remote use, configure the streamable HTTP endpoint at https://vaaya.ai/mcp, then complete OAuth in the client. Claude Code can add the endpoint with its HTTP transport command. Clients that only accept stdio can run the @vaaya/mcp npm shim; it stores a refresh token locally with restrictive permissions and proxies the backend's current tool list.
An Agent Skills installation is also available through npx skills add vaaya-ai/vaaya-mcp. The repository documents plugin installation for Claude Code, Codex, and Gemini CLI.
Tools and capabilities
The Vaaya MCP server documents these capability groups:
- Web search and URL research through Exa and Parallel.
- Firecrawl-based scrape, crawl, map, search, and extract operations, with results persisted to files.
- Image, video, text-to-speech, and music generation.
- Product demo recording that turns a raw, silent product capture into a narrated rendered demo.
- Company, product, competitive, UX, and cited deep-research workflows.
- Lead discovery, contact enrichment, buying-signal tracking, segmentation, outbound drafts, and reply handling.
- Scheduled watches for changes in pricing, deals, reviews, jobs, and news.
- Modal code sandboxes, Browserbase browser sessions, AgentMail inboxes, and persistent memory through mem0, Zep, or Letta.
- Tokenized stock discovery, portfolio inspection, purchase submission, and order polling on Base.
Limitations and notes
The Vaaya MCP server requires an account connection and an available prepaid balance or other supported payment path for paid operations. Credit lines and welcome grants cannot purchase shares. Supported stock symbols and account permissions determine whether a stock transaction can proceed.
Only a confirmed stock order indicates a purchase. Stop when an order is failed or needs_review; for an uncertain retry, reuse the original idempotency key instead of submitting a new order. A stock purchase does not by itself authorize an additional card charge. If prepaid funds are insufficient, the documented top-up flow requires user authorization for a supported pack amount and a Stripe Checkout payment; card details and bearer tokens should not be passed in a handoff.
The server does not directly charge a card saved in Instinct. Remote OAuth, the local stdio shim, and the payment flows should be treated as separate connection and authorization steps.