Displays code coverage statistics for the project through a badge, showing test coverage percentage for the codebase.
Manages environment variables for storing Tradovate API credentials and configuration.
Used for package management, dependency installation, and running scripts for building, testing, and starting the MCP server.
Displays license information through a badge in the README.
The project is built with TypeScript, providing type definitions for the Tradovate API integration.
Click on "Install 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., "@Tradovate MCP Servershow me my current positions"
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.
Tradovate MCP Server
A Model Context Protocol (MCP) server for interacting with the Tradovate API. This server provides tools for managing contracts, positions, orders, and accounts in Tradovate.
Features
Authentication with Tradovate API
Real-time data fetching with caching
Tools for contract details, position management, order placement, and more
Fallback to simulated data when API is unavailable
Related MCP server: SQLite MCP Server
Installation
Clone the repository
Install dependencies:
npm installCreate a
.envfile with your Tradovate credentials:
TRADOVATE_API_ENVIRONMENT=demo
TRADOVATE_USERNAME=your_username
TRADOVATE_PASSWORD=your_password
TRADOVATE_APP_ID=Sample App
TRADOVATE_APP_VERSION=1.0
TRADOVATE_CID=your_cid
TRADOVATE_SEC=your_secUsage
Start the server:
npm startOr use with the MCP Inspector:
npm run inspectorDevelopment
Project Structure
src/index.ts- Main server entry pointsrc/auth.ts- Authentication functionssrc/data.ts- Data fetching and cachingsrc/tools.ts- Tool handlers for MCPsrc/types.ts- TypeScript type definitionstests/- Test files
Building
npm run buildTesting
Run tests:
npm testRun tests with coverage:
npm run test:coverageGenerate coverage badge:
npm run coverage:badgeAvailable Tools
The server provides the following tools:
get_contract_details- Get details for a specific contract by symbollist_positions- List positions for an accountplace_order- Place a new ordermodify_order- Modify an existing ordercancel_order- Cancel an existing orderliquidate_position- Liquidate a positionget_account_summary- Get account summary informationget_market_data- Get market data (quotes, DOM, charts)
API Endpoints
The server interacts with the following Tradovate API endpoints:
Authentication
/auth/accessTokenRequest- Get access token/auth/renewAccessToken- Renew access token
Contracts
/contract/list- List all contracts/contract/find- Find a specific contract
Positions
/position/list- List all positions
Orders
/order/list- List all orders/order/placeOrder- Place a new order/order/modifyOrder- Modify an existing order/order/cancelOrder- Cancel an existing order/order/liquidatePosition- Liquidate a position
Accounts
/account/list- List all accounts/account/find- Find a specific account/cashBalance/getCashBalanceSnapshot- Get cash balance for an account
Market Data
/md/getQuote- Get quote data/md/getDOM- Get depth of market data/md/getChart- Get chart data
License
MIT License
This project is licensed under the MIT License - see the LICENSE file for details.