We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/invest-composer/composer-trade-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
manifest.json•8.87 kB
{
"dxt_version": "0.1",
"name": "composer",
"display_name": "Composer",
"version": "0.2.0",
"description": "Backtest and automate your trades with LLMs using Composer's AI-powered trading platform",
"long_description": "The Composer MCP Server enables AI systems to create, backtest, and manage automated trading strategies. It provides tools for strategy creation, historical backtesting, portfolio monitoring, and live trading execution. Composer supports both equities and cryptocurrency trading with advanced features like rebalancing, risk management, and performance analytics.",
"author": {
"name": "Composer Technologies Inc.",
"email": "help@composer.trade",
"url": "https://www.composer.trade"
},
"repository": {
"type": "git",
"url": "https://github.com/invest-composer/composer-trade-mcp"
},
"homepage": "https://www.composer.trade",
"documentation": "https://github.com/invest-composer/composer-trade-mcp#readme",
"support": "https://github.com/invest-composer/composer-trade-mcp/issues",
"icon": "icon.png",
"screenshots": [
"assets/screenshots/creating_a_symphony.png"
],
"license": "MIT",
"keywords": [
"trading",
"ai-trading",
"algorithmic-trading",
"backtesting",
"portfolio-management",
"investment-automation",
"fintech",
"mcp",
"llm"
],
"server": {
"type": "node",
"entry_point": "entrypoint.js",
"mcp_config": {
"command": "npx",
"args": ["-y",
"mcp-remote",
"https://mcp.composer.trade/mcp/",
"--header",
"x-api-key-id:${COMPOSER_API_KEY}",
"--header",
"Authorization:${COMPOSER_SECRET_KEY}",
"--header",
"x-composer-mcp-environment:${COMPOSER_MCP_ENV}"
],
"env": {
"COMPOSER_API_KEY": "${user_config.api_key}",
"COMPOSER_SECRET_KEY": "Bearer ${user_config.secret_key}",
"COMPOSER_MCP_ENV": "${user_config.environment}"
}
}
},
"tools": [
{
"name": "create_symphony",
"description": "Create a new trading strategy using Composer's DSL"
},
{
"name": "backtest_symphony",
"description": "Backtest a trading strategy with historical data"
},
{
"name": "search_symphonies",
"description": "Search through a database of existing Composer symphonies"
},
{
"name": "backtest_symphony_by_id",
"description": "Backtest a saved symphony by its ID"
},
{
"name": "list_accounts",
"description": "List all brokerage accounts available to the user"
},
{
"name": "get_account_holdings",
"description": "Get the holdings of a brokerage account"
},
{
"name": "get_aggregate_portfolio_stats",
"description": "Get aggregate portfolio statistics"
},
{
"name": "get_aggregate_symphony_stats",
"description": "Get stats for every symphony in an account"
},
{
"name": "get_symphony_daily_performance",
"description": "Get daily performance for a specific symphony"
},
{
"name": "get_portfolio_daily_performance",
"description": "Get daily performance for a brokerage account"
},
{
"name": "save_symphony",
"description": "Save a symphony to the user's account"
},
{
"name": "copy_symphony",
"description": "Copy an existing symphony to the user's account"
},
{
"name": "update_saved_symphony",
"description": "Update an existing symphony in the user's account"
},
{
"name": "get_saved_symphony",
"description": "Get a saved symphony by ID"
},
{
"name": "get_market_hours",
"description": "Get market hours information for the next week"
},
{
"name": "get_options_chain",
"description": "Get options chain data for a specific underlying asset symbol with filtering and pagination"
},
{
"name": "get_options_contract",
"description": "Get detailed information about a specific options contract including greeks, volume, and pricing"
},
{
"name": "get_options_calendar",
"description": "Get the list of distinct contract expiration dates available for a symbol"
},
{
"name": "invest_in_symphony",
"description": "Invest in a symphony for a specific account"
},
{
"name": "withdraw_from_symphony",
"description": "Withdraw money from a symphony for a specific account"
},
{
"name": "cancel_invest_or_withdraw",
"description": "Cancel an invest or withdraw request that has not been processed yet"
},
{
"name": "skip_automated_rebalance_for_symphony",
"description": "Skip automated rebalance for a symphony in a specific account"
},
{
"name": "go_to_cash_for_symphony",
"description": "Immediately sell all assets in a symphony"
},
{
"name": "rebalance_symphony_now",
"description": "Rebalance a symphony NOW instead of waiting for the next automated rebalance"
},
{
"name": "liquidate_symphony",
"description": "Immediately sell all assets in a symphony (or queue for market open if outside of market hours)"
},
{
"name": "preview_rebalance_for_user",
"description": "Perform a dry run of rebalancing across all accounts to see what trades would be recommended"
},
{
"name": "preview_rebalance_for_symphony",
"description": "Perform a dry run of rebalancing for a specific symphony to see what trades would be recommended"
},
{
"name": "execute_single_trade",
"description": "Execute a single order for a specific symbol like you would in a traditional brokerage account"
},
{
"name": "cancel_single_trade",
"description": "Cancel a request for a single trade that has not executed yet"
}
],
"prompts": [
{
"name": "find_highest_alpha_symphonies",
"description": "Find the Composer symphonies with the highest alpha.",
"arguments": [],
"text": "Find the Composer symphonies with the highest alpha."
},
{
"name": "find_symphonies_with_better_risk_adjusted_return_than_bitcoin",
"description": "Find the Composer symphonies with better risk-adjusted return than Bitcoin.",
"arguments": [],
"text": "Find the Composer symphonies with better risk-adjusted return than Bitcoin while keeping risk under half of Bitcoin's over the same period.\nFilter out symphonies with returns below the S&P 500 over the same time period."
},
{
"name": "compare_live_vs_backtest_performance",
"description": "Compare live performance for each symphony against the backtest over the same time period. Return the results as a table.",
"arguments": [],
"text": "Compare my live performance for each symphony against the backtest over the same time period.\nAlso compare the live performance against SPY over the same time period.\nUse time-weighted returns to compare the performance without the impact of deposits and withdrawals.\nReturn the results as a table with two additional columns:\n- \"Deviation from backtest\" = (live time weighted return - backtest return)\n- \"Deviation from SPY\" = (live time weighted return - SPY time weighted return)\nSort the results by the \"Deviation from SPY\" column in descending order so the best performers are at the top.\n\nNotify me about any symphonies that are severely underperforming their backtest and/or SPY."
},
{
"name": "explain_symphony",
"description": "Explain a symphony's performance and how it works.",
"arguments": ["symphony_id_or_url"],
"text": "Explain this symphony to me: ${arguments.symphony_id_or_url}. Describe its investment thesis and explain its statistics to me."
}
],
"tools_generated": false,
"prompts_generated": false,
"compatibility": {
"claude_desktop": ">=0.11.0",
"platforms": ["darwin", "win32", "linux"],
"runtimes": {
"python": ">=3.10"
}
},
"user_config": {
"api_key": {
"type": "string",
"title": "Composer API Key",
"description": "Your Composer API key for authentication. Get this from your Composer account settings.",
"sensitive": true,
"required": false
},
"secret_key": {
"type": "string",
"title": "Composer Secret Key",
"description": "Your Composer secret key for authentication. Get this from your Composer account settings.",
"sensitive": true,
"required": false
},
"environment": {
"type": "string",
"title": "Composer MCP Environment",
"description": "For advanced users only. Leave empty unless you know what you are doing.",
"sensitive": false,
"required": false,
"default": ""
}
}
}