Alpaca MCP Server: market data and paper trading for agents
Alpaca's official MCP server gives agents stock, options and crypto data, positions and orders. Paper trading is the default. A tool, not investment advice.
Project and installation docs
View projecthttps://github.com/alpacahq/alpaca-mcp-server
People who write trading strategies bounce between a broker dashboard, a quote site and their code: check a price, look at positions, go back and tweak parameters. Alpaca MCP Server is the US broker Alpaca’s own MCP server. It exposes the Trading and Market Data APIs to an agent and connects to a free paper-trading account by default. Version 2 is a FastMCP rewrite generated from Alpaca’s OpenAPI specs, and the repo had about 1k stars as of 2026-10-06.
What it does
- Market data: quotes, trades, bars and snapshots for stocks, options and crypto, option chains and Greeks, plus news, corporate actions and fixed-income quotes.
- Account and positions:
get_account_infofor balances and buying power,get_portfolio_historyfor the equity curve, and tools to close positions or exercise options. - Orders:
place_stock_orderhandles market, limit, stop, trailing-stop and bracket orders;place_crypto_orderandplace_option_order(single or multi-leg) cover the rest;cancel_all_ordersclears the book. - Toolset filtering:
ALPACA_TOOLSETSloads only what you list. Set it tostock-data,crypto-dataand the agent can read prices but never sees an order tool.
Who it’s for
- Hobbyist quants testing ideas on paper who want to pull quotes and data in plain language.
- Developers building trading apps who want a coding agent to work against the real API and walk through an order flow.
- Researchers who only need prices and news, filtered down to a read-only data source.
Setup
You need Python 3.10+, uv and free paper-trading keys from the Alpaca dashboard. In Claude Code:
claude mcp add alpaca --scope user --transport stdio uvx alpaca-mcp-server \
--env ALPACA_API_KEY=your_alpaca_api_key \
--env ALPACA_SECRET_KEY=your_alpaca_secret_key
ALPACA_PAPER_TRADE defaults to true. Only setting it to false with live keys trades real money.
Our take
Few finance servers are maintained by the broker itself and cover both data and execution, and defaulting to paper trading is the right call. Be clear about what it is, though: letting an agent place orders doesn’t make the agent a good investor. We list it because the tooling is well built, and nothing here is investment advice. Before going live, drop trading from ALPACA_TOOLSETS or at least keep per-call confirmation on in your client. The README also warns against exposing the local server to the internet, since it has no remote auth. V2 tool names don’t match v1, so old configs need redoing. MIT-licensed.