schwab-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@schwab-mcpWhat's my account balance?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
schwab-mcp
A local MCP server exposing the Charles Schwab Individual Trader API (accounts, quotes, orders, transactions) as MCP tools, built on schwabdev.
See CLAUDE.md for architecture/conventions.
Setup
python3 -m venv .venv
source .venv/bin/activate
pip install -e .
cp .env.example .env
# fill in SCHWAB_CLIENT_ID, SCHWAB_CLIENT_SECRET, SCHWAB_REDIRECT_URI
python scripts/authorize.py # one-time interactive browser loginRe-run scripts/authorize.py whenever the refresh token expires (every 7
days, per Schwab's policy).
Related MCP server: Schwab MCP Server
Connecting to Claude Desktop
Claude Desktop launches MCP servers as a separate process without your
shell's environment, so pass credentials explicitly via env rather than
relying on .env discovery. Edit (or create)
~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"schwab": {
"command": "/Users/edhac/Workspace/schwab-mcp/.venv/bin/python",
"args": ["-m", "schwab_mcp.server"],
"env": {
"SCHWAB_CLIENT_ID": "your-client-id",
"SCHWAB_CLIENT_SECRET": "your-client-secret",
"SCHWAB_REDIRECT_URI": "https://127.0.0.1",
"SCHWAB_TOKEN_PATH": "~/.schwab-mcp/tokens.db"
}
}
}
}Then fully quit and reopen Claude Desktop. Run scripts/authorize.py
manually first (Claude Desktop can't complete the interactive browser login
itself) — the server will raise a clear error on startup if the token db is
missing or the refresh token has expired, telling you to do this.
This server cannot be deployed
Maintenance
Related MCP Connectors
Multi-tenant FastMCP server for Charles Schwab brokerage data, monetized via DPYC Tollbooth
MCP server for OpenMM — exposes market data, account, trading, and strategy tools to AI agents
An MCP server that provides an API to LLMs to manage their JumpCloud resources.
MCP server exposing the Backtest360 engine API as tools for AI agents.
Related MCP Servers
- FlicenseNot gradedqualityFmaintenanceA Model Context Protocol server that enables AI assistants like Claude to securely interact with Charles Schwab accounts and market data through the official Schwab API.75-
- AlicenseAqualityDmaintenanceA read-only MCP server that provides access to Charles Schwab account data and market information, including portfolio positions, real-time quotes, options chains, price history, and account balances through AI assistants.9MIT
- FlicenseAqualityDmaintenanceMCP server for the tastytrade brokerage API, providing tools for account management, market data, and order execution.18-
- AlicenseAqualityCmaintenanceRead-only MCP server for Interactive Brokers that exposes market data, positions, and account info as MCP tools.8MIT