alpaka-mcp
Что это?
alpaka-mcp — это готовый к продакшену MCP-сервер + CLI, который подключает AI-ассистентов (Claude Desktop, Cursor, VS Code Copilot) и ваш терминал напрямую к Alpaca Trading API. Торгуйте акциями, ETF и криптовалютой на естественном языке — или из командной строки.
Построен на alpaca-py и MCP Python SDK.
По умолчанию используется бумажная торговля — реальные рыночные данные, виртуальные средства, ноль реальных денег под риском.
Related MCP server: FinClaw
Быстрый старт
1. Получите ключи Alpaca API (бесплатно)
Зарегистрируйтесь на alpaca.markets → Paper Trading → API Keys
2. Установка
git clone https://github.com/vikrambtech2025-png/alpaka-mcp.git
cd alpaka-mcp
uv sync3. Настройка
cp .env.example .env
# Add your API keys to .env4. Запуск
uv run alpaka-mcp # MCP server (stdio for Claude/Cursor)
uv run alpaka account # CLI — check account
uv run mcp dev src/alpaka_mcp/server.py # MCP InspectorПодключение к AI-ассистентам
Добавьте в %AppData%\Claude\claude_desktop_config.json:
{
"mcpServers": {
"alpaka": {
"command": "uv",
"args": ["--directory", "C:\\path\\to\\alpaka-mcp", "run", "alpaka-mcp"],
"env": {
"ALPACA_API_KEY": "your_key",
"ALPACA_SECRET_KEY": "your_secret",
"ALPACA_PAPER": "true"
}
}
}
}Добавьте в .cursor/mcp.json в корне вашего проекта:
{
"mcpServers": {
"alpaka": {
"command": "uv",
"args": ["--directory", "/path/to/alpaka-mcp", "run", "alpaka-mcp"],
"env": {
"ALPACA_API_KEY": "your_key",
"ALPACA_SECRET_KEY": "your_secret",
"ALPACA_PAPER": "true"
}
}
}
}Добавьте в .vscode/mcp.json:
{
"servers": {
"alpaka": {
"command": "uv",
"args": ["--directory", "/path/to/alpaka-mcp", "run", "alpaka-mcp"],
"env": {
"ALPACA_API_KEY": "your_key",
"ALPACA_SECRET_KEY": "your_secret",
"ALPACA_PAPER": "true"
}
}
}
}MCP-инструменты (16)
Инструмент | Описание |
| Баланс, капитал, покупательная способность, дневные сделки |
| Все открытые позиции с P&L |
Инструмент | Описание |
| Разместить ордер на покупку (рыночный/лимитный/стоп/стоп-лимит) |
| Разместить ордер на продажу (рыночный/лимитный) |
| Список ордеров по статусу и символам |
| Отменить конкретный ордер |
| Отменить все открытые ордера |
Инструмент | Описание |
| Детали одной позиции |
| Ликвидировать (полностью или частично) |
Инструмент | Описание |
| Последняя котировка (бид/аск) |
| Исторические бары OHLCV |
| Полный снимок (сделка, котировка, дневной, 1-минутный) |
Инструмент | Описание |
| Последний бид/аск по криптовалюте |
| Исторические бары OHLCV по криптовалюте |
Инструмент | Описание |
| Поиск акций/ETF/криптовалют по названию или символу |
| Статус открытия/закрытия рынка |
CLI-команды (12)
alpaka account # Account balance & buying power
alpaka portfolio # Open positions with color-coded P&L
alpaka quote AAPL # Bid/ask quote (stocks or crypto)
alpaka buy AAPL --qty 10 # Buy 10 shares
alpaka buy BTC/USD -n 500 # Buy $500 of Bitcoin
alpaka sell AAPL --qty 5 # Sell 5 shares
alpaka orders # List open orders
alpaka orders --status closed # List filled orders
alpaka cancel <order-id> # Cancel specific order
alpaka cancel-all # Cancel everything open
alpaka bars AAPL --tf 1Day # Historical bars
alpaka clock # Is the market open?
alpaka search apple # Find tradeable assetsВсе команды поддерживают --json для машиночитаемого вывода:
$ uv run alpaka account --json
{
"status": "ACTIVE",
"equity": "100000.00",
"buying_power": "200000.00",
"cash": "100000.00",
"portfolio_value": "100000.00",
"daytrade_count": 0,
"pattern_day_trader": false,
"mode": "paper"
}Производственные возможности
Возможность | Как это работает |
Устойчивый клиент | Прозрачный прокси оборачивает каждый вызов API с ограничением скорости и повторными попытками |
Ограничение скорости | 3 независимых корзины токенов (200 запросов/мин каждая) — торговля, данные по акциям, криптовалюта |
Повторные попытки + задержка | 3 попытки с экспоненциальной задержкой 1с/2с/4с при ошибках 429, 500 и ошибках соединения |
Неблокирующая асинхронность | MCP-инструменты используют |
Структурированное логирование | JSON-журнал аудита: |
Проверка входных данных | Символы, количества, цены, типы ордеров проверяются перед вызовами API |
Защита от реальной торговли | Требует |
Проверка конфигурации | Отклоняет заглушки ключей API с понятными инструкциями по настройке |
Потокобезопасность | Инициализация клиента через |
Обработка ошибок CLI | Каждая команда обернута — чистые ошибки, без трассировок |
Архитектура
src/alpaka_mcp/
├── server.py # MCP server entry point (stdio)
├── cli.py # 12 Typer commands + JSON output
├── config.py # pydantic-settings + credential validation
├── clients.py # ResilientClient proxy (rate limit + retry + async)
├── utils.py # Response formatting
├── logging.py # Structured JSON logging
├── rate_limiter.py # Token bucket rate limiters (sync + async)
├── retry.py # Exponential backoff (sync + async)
├── validation.py # Input validation
└── tools/ # 16 MCP tools
├── account.py # get_account, get_portfolio
├── trading.py # buy, sell, get_orders, cancel_order, cancel_all
├── positions.py # get_position, close_position
├── stock_data.py # get_stock_quote, get_stock_bars, get_stock_snapshot
├── crypto_data.py # get_crypto_quote, get_crypto_bars
└── discovery.py # search_assets, get_market_clockDocker
# MCP server
docker compose up alpaka-mcp
# CLI via docker
docker compose run --rm alpaka-cli account
docker compose run --rm alpaka-cli portfolioЛоги сохраняются в Docker-томе по пути /app/logs.
Переменные окружения
Переменная | По умолчанию | Описание |
| (обязательно) | Ваш ключ Alpaca API |
| (обязательно) | Ваш секретный ключ Alpaca |
|
| Режим бумажной торговли |
|
| Должно быть |
|
| Каталог файлов журнала |
|
| Подробность логирования |
Тестирование
# Unit tests (no API keys needed)
uv run pytest tests/ --ignore=tests/test_integration.py -v
# Integration tests (needs real paper API keys)
ALPACA_API_KEY=pk_xxx ALPACA_SECRET_KEY=sk_xxx uv run pytest tests/test_integration.py -vБезопасность
Бумажная торговля по умолчанию — реальные деньги требуют явного согласия
Реальная торговля требует и
ALPACA_PAPER=false, иALPACA_LIVE_CONFIRM=true5-секундный обратный отсчет при запуске реальной торговли
Все ошибки форматируются аккуратно — никаких трассировок, отправляемых LLM
Ограничение скорости предотвращает случайное злоупотребление API
Структурированный журнал аудита для каждой сделки
Лицензия
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseDqualityDmaintenanceMCP server that exposes Alpaca Market Data & Broker API as tools, enabling access to financial data like stock bars, assets, market days, and news through the Message Control Protocol.4542ISC
- AlicenseNot gradedqualityDmaintenanceMCP server that provides AI agents with financial tools including real-time quotes, backtesting, technical analysis, and multi-exchange data via a simple CLI interface.1MIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server implementation for Alpaca's Trading API that enables LLMs to interact with Alpaca's trading infrastructure using natural language, supporting stock, options, and crypto trading, portfolio management, watchlists, and market data.4MIT
- AlicenseAqualityAmaintenanceThis MCP server connects AI assistants to a Public.com brokerage account, enabling natural language trading of stocks, options, and crypto, along with portfolio management, quotes, and orders.3765Apache 2.0
Related MCP Connectors
MCP server for Gainium — manage trading bots, deals, and balances via AI assistants
MCP server exposing the Backtest360 engine API as tools for AI agents.
Alpaca MCP — real-time US stock market data via the Alpaca Market Data API
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/vikrambtech2025-png/alpaka-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server