Schwab MCP Server

Multi-tenant FastMCP server for Charles Schwab brokerage data, monetized via DPYC Tollbooth

Remote serverstreamable-httpPython

What is the Schwab MCP server?

Multi-tenant FastMCP server for Charles Schwab brokerage data, monetized via DPYC Tollbooth. That is what the schwab mcp server brings to an AI assistant: the same capability, reachable through the Model Context Protocol rather than a separate app or dashboard.

The short version

The data in schwab-mcp is nothing you can't get from ThinkOrSwim, OptionAlpha, or Schwab's own web UI. What you can't get from those tools is a personal trading assistant that blends:

  • Your live positions and account balances
  • Real-time option chains with Greeks, IV, and OTM%
  • Your trading strategy rules (credit floors, RWR targets, sector concentration limits)
  • Market context (earnings calendars, VIX levels, sector rotation)
  • All of the above in a single conversational turn

Getting it running

Because this one is hosted, setup is mostly authentication — you point your client at the endpoint and approve access. Nothing runs on your machine, so there is no runtime to keep patched.

The tools it exposes

The server publishes 3 tools. What each one is for:

  • Free — The Free tool exposed by this server
  • Required — This is the only env var required to start. Certified operators bootstrap their Neon database URL from the Authority via encrypted Nostr DM --
  • Prerequisites — The Prerequisites tool exposed by this server

What it needs from you

Configuration is passed through the environment: OAUTH_COLLECTOR_URL, YOUR_API_KEY, YOUR_STORE_ID, YOUR_SCHWAB_APP_KEY, YOUR_SCHWAB_SECRET, NEON_DATABASE_URL. Treat anything key-shaped as a real credential — scope it to the minimum the server needs, and rotate it if it ever lands in a shared config.

  • Python 3.12+ - A Schwab Developer app with API credentials - Oxcart Nostr client for Secure Courier credential delivery

Things to watch

  • Your data travels to the provider's service, so the usual questions apply about what you send and what they retain.
  • Missing credentials fail quietly in some clients — if no tools show up, check the environment block first.
  • Keep per-call confirmation enabled while you learn its behaviour; it is the cheapest safeguard you have.

How it compares

This sits in the database access group, where several servers overlap in what they claim to do but differ sharply once you actually set them up. Schwab's toolset — Free, Required, Prerequisites — is a fair guide to whether it matches your workflow. It is maintained by lonniev; worth a glance at recent repository activity before you build anything load-bearing on it.

We check each listing at SyncDev against the project's documentation before it goes live — if something here drifts out of date, it is a bug worth reporting.

Available tools

ToolWhat it does
FreeThe Free tool exposed by this server.
RequiredThis is the only env var required to start. Certified operators bootstrap their Neon database URL from the Authority via encrypted Nostr DM -- NEON_DATABASE_URL is not read from the environment.
PrerequisitesThe Prerequisites tool exposed by this server.

Configuration

  • Python 3.12+ - A Schwab Developer app with API credentials - Oxcart Nostr client for Secure Courier credential delivery
VariableDescriptionRequired
OAUTH_COLLECTOR_URLEndpoint or connection string the server talks to.Yes
YOUR_API_KEYCredential the server authenticates with.Yes
YOUR_STORE_IDConfiguration value read at startup.Optional
YOUR_SCHWAB_APP_KEYCredential the server authenticates with.Yes
YOUR_SCHWAB_SECRETCredential the server authenticates with.Yes
NEON_DATABASE_URLEndpoint or connection string the server talks to.Yes

Example prompts to try

  • Use Schwab to Free.
  • Use Schwab to Required.
  • Use Schwab to Prerequisites.

Frequently asked questions

It connects Schwab to MCP-compatible AI assistants such as Claude and Cursor, exposing 3 tools (Free, Required, Prerequisites) that the assistant can call on your behalf. Instead of copying data back and forth by hand, the assistant works with Schwab directly.