FG

frederick-g764/brokers-mcp

API development

このページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。 原文を見る

1 stars 17 forks 品質 50 トレンド 5

A MCP (Model Context Protocol) server that implements popular brokers' APIs and more

概要

A Model Context Protocol server implementing popular broker api's - Currently only TradeStation API is supported (partially) The server implements five tools that are based on TradeStation API: 1. tradestation_get_bars - wraps the output of TradeStation GetBars in a dataframe and returns it's 2. tradestation_place_buy_order - Same as TradeStation PlaceOrder but only for buy orders 3. tradestation_place_sell_order - Same as TradeStation PlaceOrder but only for sell orders 4. tradestation_get_positions - Same as TradeStation GetPositions 5. tradestation_get_balances - Same as TradeStation GetBalances see the exact schemas in the definition file here The server is configured via environment variables: If you are unsure about how to get the values of the environment variables, I have a blog post that explains it here On MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json On Windows: %APPDATA%/Claude/claude_desktop_config.json

README

portfolio_service MCP server

A Model Context Protocol server implementing popular broker api’s

Supported APIs

  • Currently only TradeStation API is supported (partially)

Components

Tools

The server implements five tools that are based on TradeStation API:

  1. tradestation_get_bars - wraps the output of TradeStation GetBars in a dataframe and returns it’s __str__
  2. tradestation_place_buy_order - Same as TradeStation PlaceOrder but only for buy orders
  3. tradestation_place_sell_order - Same as TradeStation PlaceOrder but only for sell orders
  4. tradestation_get_positions - Same as TradeStation GetPositions
  5. tradestation_get_balances - Same as TradeStation GetBalances

see the exact schemas in the definition file here

Configuration

The server is configured via environment variables:

TRADESTATION_API_KEY="your_api_key"
TRADESTATION_API_SECRET="your_api_secret"
TS_REFRESH_TOKEN="your_refresh_token"
TS_ACCOUNT_ID="your_account_id"

If you are unsure about how to get the values of the environment variables, I have a blog post that explains it here

Quickstart

Install

Claude Desktop

On MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json

On Windows: %APPDATA%/Claude/claude_desktop_config.json

"mcpServers": {
  "portfolio_service": {
    "command": "uv",
    "args": [
      "--directory",
      "/portfolio_service",
      "run",
      "portfolio_service"
    ]
  }
}

Development

Building and Publishing

  1. Sync dependencies and update lockfile:
uv sync

Debugging

Since MCP servers run over stdio, debugging can be challenging. For the best debugging experience, we strongly recommend using the MCP Inspector.

You can launch the MCP Inspector via npm with this command:

npx @modelcontextprotocol/inspector uv --directory /portfolio_service run portfolio-service

Upon launching, the Inspector will display a URL that you can access in your browser to begin debugging.

GitHub で README 全文を見る

インストール

npx @modelcontextprotocol/inspector uv --directory <path_to_project>/portfolio_service run portfolio-service
MCP 初心者?mcpskill.org のガイドから始めましょう →