CCM
/MCP
SkillsMCPMarketplacesDigestToolsAdvertise

This week in Claude

Every Monday: Claude Code, Agent SDK, MCP, and the Anthropic platform moves worth your time.

Skills by Category
Frontend DevelopmentBackend & APIsTesting & QASecurityDevOps & CI/CDGit & Pull RequestsDocumentationCode Review & QualityAI & Agent BuildingSkill Development
MCP Servers by Category
Sales & MarketingWeb & Browser AutomationDatabasesAI & LLM ToolsCloud & InfrastructureCommunication & MessagingDeveloper ToolsDesign & CreativeDocuments & KnowledgeSearch & Web Crawling
Marketplaces by Category
AI Agents & OrchestrationLLM IntegrationDevelopment ToolsFrontend & UIBackend & APIsDatabasesTesting & Code QualityDevOps & CloudSecurity & ComplianceGit & Version Control

Claude Code Marketplaces

Discover Claude Code plugins, extensions, and tools. Automatically updated directory of Anthropic Claude AI marketplaces with development tools, productivity plugins, and integrations.

Resources

  • Browse Skills
  • Browse MCP Servers
  • Browse Marketplaces
  • Skill index
  • MCP index
  • Marketplace index
  • Plugins Reference

Community

  • About
  • Tools
  • Feedback
  • Privacy Policy
  • Advertise

Built for the Claude Code community with Claude Code by mertbuilds.com

Independent project, not affiliated with Anthropic
atlasdevhq avatar

Atlas

atlasdevhq/atlas
180 toolsauthSTDIOregistry active
Summary

Bridges your YAML semantic layer to Claude Desktop, Cursor, and Continue so agents can generate validated SQL against your analytics schema. Exposes entities, dimensions, measures, joins, and glossary terms defined in version-controlled files. Instead of guessing table names or column semantics, the agent reads your documented data contracts complete with sample values, ambiguous term flags, and canonical query patterns. Returns read-only SQL with validation built in. One-line install with bunx detects your client and writes the config. Self-host it alongside your warehouse or point it at a hosted workspace. Best when you already maintain a semantic layer and want LLMs to query it correctly without inventing joins or misinterpreting revenue definitions.

CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
inference shell
inference shell
create and run specialised agents in minutes
build now →
MCP-ready Email SendingMCP-ready Email Sending
MCP-ready Email Sending
Plug Mailtrap into your AI workflow and let it handle the email.
Connect Mailtrap MCP →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Capacitor - Shared memory for your team’s coding agents.
Capacitor - Shared memory for your team’s coding agents.
Make coding agent sessions - Searchable, Shareable, Vendor-neutral & Scored.
Try For Free →
CodeScene MCP ServerCodeScene MCP Server
CodeScene MCP Server
Your agent targets a perfect 10 Code Health score. Deterministic. Every commit.
Try For Free →
Give your AI the whole web as clean markdownGive your AI the whole web as clean markdown
Give your AI the whole web as clean markdown
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
inference shell
inference shell
create and run specialised agents in minutes
build now →
MCP-ready Email SendingMCP-ready Email Sending
MCP-ready Email Sending
Plug Mailtrap into your AI workflow and let it handle the email.
Connect Mailtrap MCP →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Capacitor - Shared memory for your team’s coding agents.
Capacitor - Shared memory for your team’s coding agents.
Make coding agent sessions - Searchable, Shareable, Vendor-neutral & Scored.
Try For Free →
CodeScene MCP ServerCodeScene MCP Server
CodeScene MCP Server
Your agent targets a perfect 10 Code Health score. Deterministic. Every commit.
Try For Free →
Give your AI the whole web as clean markdownGive your AI the whole web as clean markdown
Give your AI the whole web as clean markdown
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →

Tools

Public tool metadata for what this MCP can expose to an agent.

80 tools
Stock-QuoteGet a real-time stock quote including current price, dollar and percent change, previous close, open, high, low, and volume. Args: symbol: Ticker symbol (e.g. NVDA, SPY, AAPL) Types / example: symbol: string ticker — e.g. "SPY", "NVDA".1 params

Get a real-time stock quote including current price, dollar and percent change, previous close, open, high, low, and volume. Args: symbol: Ticker symbol (e.g. NVDA, SPY, AAPL) Types / example: symbol: string ticker — e.g. "SPY", "NVDA".

Parameters* required
symbolstring
Option-Expiration-DatesList available option expiration dates for a symbol. Args: symbol: Ticker symbol (e.g. NVDA, SPY) filter: 'all' for every expiration (no 60-day cap), 'next_10' for the nearest 10 within 60 days, 'near_term' for within 60 days, 'monthly' for monthly only (still capped at 60 day...2 params

List available option expiration dates for a symbol. Args: symbol: Ticker symbol (e.g. NVDA, SPY) filter: 'all' for every expiration (no 60-day cap), 'next_10' for the nearest 10 within 60 days, 'near_term' for within 60 days, 'monthly' for monthly only (still capped at 60 day...

Parameters* required
filterstring
default: next_10
symbolstring
Analyze-Greek-ExposuresCalculate Gamma, Delta, Vanna, and Theta NET exposures for a symbol across multiple expiration dates. Returns per-strike data grouped by expiration plus portfolio totals and key strike levels. Use this for raw numerical exposure data (not charts). Args: symbol: Ticker symbol (...6 params

Calculate Gamma, Delta, Vanna, and Theta NET exposures for a symbol across multiple expiration dates. Returns per-strike data grouped by expiration plus portfolio totals and key strike levels. Use this for raw numerical exposure data (not charts). Args: symbol: Ticker symbol (...

Parameters* required
expirationvalue
expiration_rangevalue
from_expirationvalue
num_expirationsinteger
default: 5
symbolstring
to_expirationvalue
Top-Volume-and-OI-ContractsGet the highest-volume or highest-open-interest option contracts for a symbol. Returns strike, side, volume, OI, bid/ask, delta, IV, and DTE for each contract. Useful for spotting unusual activity. Args: symbol: Ticker symbol (e.g. NVDA, SPY) expiration: Specific expiration (Y...7 params

Get the highest-volume or highest-open-interest option contracts for a symbol. Returns strike, side, volume, OI, bid/ask, delta, IV, and DTE for each contract. Useful for spotting unusual activity. Args: symbol: Ticker symbol (e.g. NVDA, SPY) expiration: Specific expiration (Y...

Parameters* required
expirationvalue
expiration_rangevalue
from_expirationvalue
limitinteger
default: 20
sort_bystring
default: volume
symbolstring
to_expirationvalue
Ticker-Symbol-LookupResolve a company name or partial name to its ticker symbol. Examples: 'Apple' -> AAPL, 'Google' -> GOOGL, 'Tesla' -> TSLA Args: company_name: Company name or partial match (e.g. 'Apple', 'Micro') Types / example: company_name: string — e.g. "Apple", "Microsoft".1 params

Resolve a company name or partial name to its ticker symbol. Examples: 'Apple' -> AAPL, 'Google' -> GOOGL, 'Tesla' -> TSLA Args: company_name: Company name or partial match (e.g. 'Apple', 'Micro') Types / example: company_name: string — e.g. "Apple", "Microsoft".

Parameters* required
company_namestring
Options-ChainGet options chain data for one expiration or for a range of expirations. Single expiration: pass expiration=YYYY-MM-DD (LEAPS and any listed expiry supported). Range: omit expiration and pass from_expiration and/or to_expiration (inclusive ISO dates). Range mode returns up to...6 params

Get options chain data for one expiration or for a range of expirations. Single expiration: pass expiration=YYYY-MM-DD (LEAPS and any listed expiry supported). Range: omit expiration and pass from_expiration and/or to_expiration (inclusive ISO dates). Range mode returns up to...

Parameters* required
expirationvalue
expiration_rangevalue
from_expirationvalue
max_expirationsinteger
default: 12
symbolstring
to_expirationvalue
Historical-Options-ChainGet the options chain for a symbol and expiration as of a specific past date (historical snapshot). Returns every contract with strike, side, bid, ask, mid, volume, open interest, and DTE as of that date. Use this to compare past options data or analyze how positioning changed...3 params

Get the options chain for a symbol and expiration as of a specific past date (historical snapshot). Returns every contract with strike, side, bid, ask, mid, volume, open interest, and DTE as of that date. Use this to compare past options data or analyze how positioning changed...

Parameters* required
datestring
expirationstring
symbolstring
Historical-Strike-QuotesGet historical quotes for a single strike: from_date to to_date (interval) or single date. Takes from_date and optional to_date. If to_date omitted or same as from_date: single date. Expiration is optional — when omitted, picks nearest expiration to the date(s). Returns one qu...6 params

Get historical quotes for a single strike: from_date to to_date (interval) or single date. Takes from_date and optional to_date. If to_date omitted or same as from_date: single date. Expiration is optional — when omitted, picks nearest expiration to the date(s). Returns one qu...

Parameters* required
expirationvalue
from_datestring
sidestring
strikenumber
symbolstring
to_datevalue
Strike-Price-DetailsGet detailed contract data for a specific strike price. Returns call and put contracts at that strike with full Greeks, pricing, IV, volume, and open interest. If expiration is provided, returns data for that single date. If omitted, searches across all near-term expirations (...3 params

Get detailed contract data for a specific strike price. Returns call and put contracts at that strike with full Greeks, pricing, IV, volume, and open interest. If expiration is provided, returns data for that single date. If omitted, searches across all near-term expirations (...

Parameters* required
expirationvalue
strikenumber
symbolstring
Gamma-Exposure-HeatmapGenerate a single Gamma Exposure (GEX) heatmap. NOTE: If the user wants more than one chart, use Multi-Chart-View instead. Args: symbol: Ticker symbol (e.g. NVDA, SPY) strike_range: Optional strike filter like '520-600' to zoom in image_format: 'png' or 'jpeg' (only used when...9 params

Generate a single Gamma Exposure (GEX) heatmap. NOTE: If the user wants more than one chart, use Multi-Chart-View instead. Args: symbol: Ticker symbol (e.g. NVDA, SPY) strike_range: Optional strike filter like '520-600' to zoom in image_format: 'png' or 'jpeg' (only used when...

Parameters* required
expirationvalue
expiration_rangevalue
from_expirationvalue
image_formatstring
default: png
markingsvalue
platformstring
default: other
strike_rangevalue
symbolstring
to_expirationvalue
Delta-Exposure-HeatmapGenerate a single Delta Exposure (DEX) heatmap. NOTE: If the user wants more than one chart, use Multi-Chart-View instead. Args: symbol: Ticker symbol (e.g. NVDA, SPY) strike_range: Optional strike filter like '520-600' to zoom in image_format: 'png' or 'jpeg' (only used when...9 params

Generate a single Delta Exposure (DEX) heatmap. NOTE: If the user wants more than one chart, use Multi-Chart-View instead. Args: symbol: Ticker symbol (e.g. NVDA, SPY) strike_range: Optional strike filter like '520-600' to zoom in image_format: 'png' or 'jpeg' (only used when...

Parameters* required
expirationvalue
expiration_rangevalue
from_expirationvalue
image_formatstring
default: png
markingsvalue
platformstring
default: other
strike_rangevalue
symbolstring
to_expirationvalue
Vanna-Exposure-HeatmapGenerate a single Vanna Exposure (VEX) heatmap. NOTE: If the user wants more than one chart, use Multi-Chart-View instead. Args: symbol: Ticker symbol (e.g. NVDA, SPY) strike_range: Optional strike filter like '520-600' to zoom in image_format: 'png' or 'jpeg' (only used when...9 params

Generate a single Vanna Exposure (VEX) heatmap. NOTE: If the user wants more than one chart, use Multi-Chart-View instead. Args: symbol: Ticker symbol (e.g. NVDA, SPY) strike_range: Optional strike filter like '520-600' to zoom in image_format: 'png' or 'jpeg' (only used when...

Parameters* required
expirationvalue
expiration_rangevalue
from_expirationvalue
image_formatstring
default: png
markingsvalue
platformstring
default: other
strike_rangevalue
symbolstring
to_expirationvalue
Theta-Exposure-HeatmapGenerate a single Theta Exposure (TEX) heatmap. NOTE: If the user wants more than one chart, use Multi-Chart-View instead. Args: symbol: Ticker symbol (e.g. NVDA, SPY) strike_range: Optional strike filter like '520-600' to zoom in image_format: 'png' or 'jpeg' (only used when...9 params

Generate a single Theta Exposure (TEX) heatmap. NOTE: If the user wants more than one chart, use Multi-Chart-View instead. Args: symbol: Ticker symbol (e.g. NVDA, SPY) strike_range: Optional strike filter like '520-600' to zoom in image_format: 'png' or 'jpeg' (only used when...

Parameters* required
expirationvalue
expiration_rangevalue
from_expirationvalue
image_formatstring
default: png
markingsvalue
platformstring
default: other
strike_rangevalue
symbolstring
to_expirationvalue
Net-Gamma-Exposure-ChartGenerate a single Net Gamma Exposure (NET GEX) bar chart. NOTE: If the user wants more than one chart, use Multi-Chart-View instead. Args: symbol: Ticker symbol (e.g. NVDA, SPY) strike_range: Optional strike filter like '520-600' to zoom in image_format: 'png' or 'jpeg' (only...9 params

Generate a single Net Gamma Exposure (NET GEX) bar chart. NOTE: If the user wants more than one chart, use Multi-Chart-View instead. Args: symbol: Ticker symbol (e.g. NVDA, SPY) strike_range: Optional strike filter like '520-600' to zoom in image_format: 'png' or 'jpeg' (only...

Parameters* required
expirationvalue
expiration_rangevalue
from_expirationvalue
image_formatstring
default: png
markingsvalue
platformstring
default: other
strike_rangevalue
symbolstring
to_expirationvalue
Net-Delta-Exposure-ChartGenerate a single Net Delta Exposure (NET DEX) bar chart. NOTE: If the user wants more than one chart, use Multi-Chart-View instead. Args: symbol: Ticker symbol (e.g. NVDA, SPY) strike_range: Optional strike filter like '520-600' to zoom in image_format: 'png' or 'jpeg' (only...9 params

Generate a single Net Delta Exposure (NET DEX) bar chart. NOTE: If the user wants more than one chart, use Multi-Chart-View instead. Args: symbol: Ticker symbol (e.g. NVDA, SPY) strike_range: Optional strike filter like '520-600' to zoom in image_format: 'png' or 'jpeg' (only...

Parameters* required
expirationvalue
expiration_rangevalue
from_expirationvalue
image_formatstring
default: png
markingsvalue
platformstring
default: other
strike_rangevalue
symbolstring
to_expirationvalue
Net-Vanna-Exposure-ChartGenerate a single Net Vanna Exposure (NET VEX) bar chart. NOTE: If the user wants more than one chart, use Multi-Chart-View instead. Args: symbol: Ticker symbol (e.g. NVDA, SPY) strike_range: Optional strike filter like '520-600' to zoom in image_format: 'png' or 'jpeg' (only...9 params

Generate a single Net Vanna Exposure (NET VEX) bar chart. NOTE: If the user wants more than one chart, use Multi-Chart-View instead. Args: symbol: Ticker symbol (e.g. NVDA, SPY) strike_range: Optional strike filter like '520-600' to zoom in image_format: 'png' or 'jpeg' (only...

Parameters* required
expirationvalue
expiration_rangevalue
from_expirationvalue
image_formatstring
default: png
markingsvalue
platformstring
default: other
strike_rangevalue
symbolstring
to_expirationvalue
Net-Theta-Exposure-ChartGenerate a single Net Theta Exposure (NET TEX) bar chart. NOTE: If the user wants more than one chart, use Multi-Chart-View instead. Args: symbol: Ticker symbol (e.g. NVDA, SPY) strike_range: Optional strike filter like '520-600' to zoom in image_format: 'png' or 'jpeg' (only...9 params

Generate a single Net Theta Exposure (NET TEX) bar chart. NOTE: If the user wants more than one chart, use Multi-Chart-View instead. Args: symbol: Ticker symbol (e.g. NVDA, SPY) strike_range: Optional strike filter like '520-600' to zoom in image_format: 'png' or 'jpeg' (only...

Parameters* required
expirationvalue
expiration_rangevalue
from_expirationvalue
image_formatstring
default: png
markingsvalue
platformstring
default: other
strike_rangevalue
symbolstring
to_expirationvalue
Top-Volume-Contracts-ChartGenerate a single highest-volume option contracts bar chart. NOTE: If the user wants more than one chart, use Multi-Chart-View instead. Args: symbol: Ticker symbol (e.g. NVDA, SPY) image_format: 'png' or 'jpeg' (only used when platform='other') platform: 'openai' | 'claude' |...7 params

Generate a single highest-volume option contracts bar chart. NOTE: If the user wants more than one chart, use Multi-Chart-View instead. Args: symbol: Ticker symbol (e.g. NVDA, SPY) image_format: 'png' or 'jpeg' (only used when platform='other') platform: 'openai' | 'claude' |...

Parameters* required
expirationvalue
expiration_rangevalue
from_expirationvalue
image_formatstring
default: png
platformstring
default: other
symbolstring
to_expirationvalue
Top-Open-Interest-ChartGenerate a single highest-open-interest option contracts bar chart. NOTE: If the user wants more than one chart, use Multi-Chart-View instead. Args: symbol: Ticker symbol (e.g. NVDA, SPY) image_format: 'png' or 'jpeg' (only used when platform='other') platform: 'openai' | 'cla...7 params

Generate a single highest-open-interest option contracts bar chart. NOTE: If the user wants more than one chart, use Multi-Chart-View instead. Args: symbol: Ticker symbol (e.g. NVDA, SPY) image_format: 'png' or 'jpeg' (only used when platform='other') platform: 'openai' | 'cla...

Parameters* required
expirationvalue
expiration_rangevalue
from_expirationvalue
image_formatstring
default: png
platformstring
default: other
symbolstring
to_expirationvalue
All-Greek-HeatmapsGenerate all four Greek exposure heatmaps in one call: GEX (Gamma), DEX (Delta), VEX (Vanna), TEX (Theta). TIP: To mix these with other chart types or symbols, use Multi-Chart-View. Args: symbol: Ticker symbol (e.g. NVDA, SPY) strike_range: Optional strike filter like '520-600...9 params

Generate all four Greek exposure heatmaps in one call: GEX (Gamma), DEX (Delta), VEX (Vanna), TEX (Theta). TIP: To mix these with other chart types or symbols, use Multi-Chart-View. Args: symbol: Ticker symbol (e.g. NVDA, SPY) strike_range: Optional strike filter like '520-600...

Parameters* required
expirationvalue
expiration_rangevalue
from_expirationvalue
image_formatstring
default: png
markingsvalue
platformstring
default: other
strike_rangevalue
symbolstring
to_expirationvalue
All-Net-Exposure-ChartsGenerate all four NET exposure bar charts in one call: NET GEX, NET DEX, NET VEX, NET TEX. TIP: To mix these with other chart types or symbols, use Multi-Chart-View. Args: symbol: Ticker symbol (e.g. NVDA, SPY) strike_range: Optional strike filter like '520-600' to zoom in ima...9 params

Generate all four NET exposure bar charts in one call: NET GEX, NET DEX, NET VEX, NET TEX. TIP: To mix these with other chart types or symbols, use Multi-Chart-View. Args: symbol: Ticker symbol (e.g. NVDA, SPY) strike_range: Optional strike filter like '520-600' to zoom in ima...

Parameters* required
expirationvalue
expiration_rangevalue
from_expirationvalue
image_formatstring
default: png
markingsvalue
platformstring
default: other
strike_rangevalue
symbolstring
to_expirationvalue
Volume-and-Open-Interest-ChartsGenerate both Volume and Open Interest bar charts in one call. TIP: To mix these with other chart types or symbols, use Multi-Chart-View. Args: symbol: Ticker symbol (e.g. NVDA, SPY) image_format: 'png' or 'jpeg' (only used when platform='other') platform: 'openai' | 'claude'...7 params

Generate both Volume and Open Interest bar charts in one call. TIP: To mix these with other chart types or symbols, use Multi-Chart-View. Args: symbol: Ticker symbol (e.g. NVDA, SPY) image_format: 'png' or 'jpeg' (only used when platform='other') platform: 'openai' | 'claude'...

Parameters* required
expirationvalue
expiration_rangevalue
from_expirationvalue
image_formatstring
default: png
platformstring
default: other
symbolstring
to_expirationvalue
Multi-Chart-ViewCombine multiple chart types and/or symbols into a single response. Pass a JSON array where each element specifies one chart: [ {"type": "gamma", "symbol": "SPY", "strike_range": "520-600"}, {"type": "price", "symbol": "NVDA", "interval": "1h", "period": "5d"}, {"type": "vol",...3 params

Combine multiple chart types and/or symbols into a single response. Pass a JSON array where each element specifies one chart: [ {"type": "gamma", "symbol": "SPY", "strike_range": "520-600"}, {"type": "price", "symbol": "NVDA", "interval": "1h", "period": "5d"}, {"type": "vol",...

Parameters* required
chartsstring
image_formatstring
default: png
platformstring
default: other
Price-ChartGenerate a single candlestick price chart with volume bars and optional visual markings. NOTE: If the user wants more than one chart, use Multi-Chart-View instead. Shows OHLC candles (green up, red down), volume at bottom, and current price line. Intervals: 1m, 2m, 3m, 5m, 10m...14 params

Generate a single candlestick price chart with volume bars and optional visual markings. NOTE: If the user wants more than one chart, use Multi-Chart-View instead. Shows OHLC candles (green up, red down), volume at bottom, and current price line. Intervals: 1m, 2m, 3m, 5m, 10m...

Parameters* required
barsvalue
endvalue
force_refreshboolean
default: false
image_formatstring
default: png
indicator_colorsvalue
indicatorsvalue
intervalstring
default: 1d
markingsvalue
periodstring
default: 3mo
platformstring
default: other
startvalue
symbolstring
themestring
default: dark
trend_linesvalue
Multi-Timeframe-Price-OverviewGenerate three price charts at once: daily (3 months), weekly (1 year), and hourly (5 days). Good for a quick multi-timeframe overview. TIP: To mix price charts with other chart types or symbols, use Multi-Chart-View. Args: symbol: Ticker symbol (e.g. NVDA, SPY, AAPL) theme: '...4 params

Generate three price charts at once: daily (3 months), weekly (1 year), and hourly (5 days). Good for a quick multi-timeframe overview. TIP: To mix price charts with other chart types or symbols, use Multi-Chart-View. Args: symbol: Ticker symbol (e.g. NVDA, SPY, AAPL) theme: '...

Parameters* required
image_formatstring
default: png
platformstring
default: other
symbolstring
themestring
default: dark
Chart-Vision-AnalysisAnswer questions about Atlas charts (Greek heatmaps, net exposure bars, price candles, volume, open interest). Pass the user's question in plain language; the tool selects a suitable chart when needed and returns a written interpretation. After drawing markings or trend lines...1 params

Answer questions about Atlas charts (Greek heatmaps, net exposure bars, price candles, volume, open interest). Pass the user's question in plain language; the tool selects a suitable chart when needed and returns a written interpretation. After drawing markings or trend lines...

Parameters* required
questionstring
Price-Data-OHLCVGet OHLCV price data as JSON — useful for reading exact values at a specific point on a chart, or for building analysis from raw data. If timestamp is given (YYYY-MM-DD or YYYY-MM-DD HH:MM), returns the single bar nearest to that time. Otherwise returns all bars in the range....7 params

Get OHLCV price data as JSON — useful for reading exact values at a specific point on a chart, or for building analysis from raw data. If timestamp is given (YYYY-MM-DD or YYYY-MM-DD HH:MM), returns the single bar nearest to that time. Otherwise returns all bars in the range....

Parameters* required
barsvalue
endvalue
intervalstring
default: 1d
periodstring
default: 3mo
startvalue
symbolstring
timestampvalue
Broker-ConnectionsList all connected brokerage accounts for the authenticated user. Types / example: (no parameters — uses authenticated session).

List all connected brokerage accounts for the authenticated user. Types / example: (no parameters — uses authenticated session).

No parameter schema in public metadata yet.

Account-BalancesCash balance, buying power, and equity for one linked brokerage account. Types / example: account_id: string — copy "id" (or equivalent) from Broker-Connections for that account. Example: account_id="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx".1 params

Cash balance, buying power, and equity for one linked brokerage account. Types / example: account_id: string — copy "id" (or equivalent) from Broker-Connections for that account. Example: account_id="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx".

Parameters* required
account_idstring
Account-HoldingsStock and option positions (holdings) for one linked brokerage account. Types / example: account_id: string — copy "id" (or equivalent) from Broker-Connections for that account. Example: account_id="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx".1 params

Stock and option positions (holdings) for one linked brokerage account. Types / example: account_id: string — copy "id" (or equivalent) from Broker-Connections for that account. Example: account_id="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx".

Parameters* required
account_idstring
All-Account-HoldingsGet positions across ALL connected brokerage accounts. Types / example: (no parameters — uses authenticated session).

Get positions across ALL connected brokerage accounts. Types / example: (no parameters — uses authenticated session).

No parameter schema in public metadata yet.

Transaction-HistoryTransaction history for one linked brokerage account. Optional start_date and end_date in YYYY-MM-DD. Types / example: account_id: string — copy "id" (or equivalent) from Broker-Connections for that account. Example: account_id="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx". start_dat...3 params

Transaction history for one linked brokerage account. Optional start_date and end_date in YYYY-MM-DD. Types / example: account_id: string — copy "id" (or equivalent) from Broker-Connections for that account. Example: account_id="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx". start_dat...

Parameters* required
account_idstring
end_datevalue
start_datevalue
Account-Symbol-LookupResolve how a ticker is represented inside a linked brokerage account (instrument id and related fields). Types / example: account_id: string — copy "id" (or equivalent) from Broker-Connections for that account. Example: account_id="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx". symbo...2 params

Resolve how a ticker is represented inside a linked brokerage account (instrument id and related fields). Types / example: account_id: string — copy "id" (or equivalent) from Broker-Connections for that account. Example: account_id="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx". symbo...

Parameters* required
account_idstring
symbolstring
Preview-OrderStage an order for user review WITHOUT calling the broker. Persists a trading_orders row at status='preview' and returns a preview_id + a UI link the user opens to Accept or Cancel. No trade is submitted until the Accept button on that page hits Place-Order. The caller must pa...4 params

Stage an order for user review WITHOUT calling the broker. Persists a trading_orders row at status='preview' and returns a preview_id + a UI link the user opens to Accept or Cancel. No trade is submitted until the Accept button on that page hits Place-Order. The caller must pa...

Parameters* required
account_idvalue
phasestring
default: enter
ruleobject
symbolvalue
Preview-Multiple-OrdersPreview multiple orders at once — e.g. buy 5 NVDA, 5 MSFT, and 5 ASML in one shot. Pass a list of {rule, symbol, account_id?, phase?} objects. Returns a vertical stack of order preview cards, each with a Place button. Use this instead of calling Preview-Order repeatedly for mu...2 params

Preview multiple orders at once — e.g. buy 5 NVDA, 5 MSFT, and 5 ASML in one shot. Pass a list of {rule, symbol, account_id?, phase?} objects. Returns a vertical stack of order preview cards, each with a Place button. Use this instead of calling Preview-Order repeatedly for mu...

Parameters* required
account_idvalue
ordersarray
Place-OrderSubmit an order to the broker via SnapTrade. Stocks use place_force_order; options use place_mleg_order; bracket orders use place_bracket_order (entry + stop_loss + take_profit as a broker-managed OCO pair). Two modes: * Pass preview_id to place an already-staged preview — the...5 params

Submit an order to the broker via SnapTrade. Stocks use place_force_order; options use place_mleg_order; bracket orders use place_bracket_order (entry + stop_loss + take_profit as a broker-managed OCO pair). Two modes: * Pass preview_id to place an already-staged preview — the...

Parameters* required
account_idvalue
phasestring
default: enter
preview_idvalue
rulevalue
symbolvalue
List-Preview-OrdersList the user's recent staged/placed/failed orders. Defaults to status in ('preview','failed') so the UI can surface orders still pending acceptance. Pass statuses=['placed'] to see executed orders. Types / example: statuses: array<string> — optional filter (e.g. ['preview','f...2 params

List the user's recent staged/placed/failed orders. Defaults to status in ('preview','failed') so the UI can surface orders still pending acceptance. Pass statuses=['placed'] to see executed orders. Types / example: statuses: array<string> — optional filter (e.g. ['preview','f...

Parameters* required
limitinteger
default: 50
statusesvalue
Delete-Preview-OrderCancel/delete one staged or placed order. For status='preview' or 'failed' the local record is deleted (nothing was ever sent to SnapTrade — our preview is a local staging step, not a broker call). For status='placed' SnapTrade's cancel_user_account_order is called and the row...1 params

Cancel/delete one staged or placed order. For status='preview' or 'failed' the local record is deleted (nothing was ever sent to SnapTrade — our preview is a local staging step, not a broker call). For status='placed' SnapTrade's cancel_user_account_order is called and the row...

Parameters* required
preview_idstring
Preview-Trading-TriggerShow a trigger preview card for user review WITHOUT saving anything. ALWAYS call this instead of Create-Trading-Trigger — the user reads the card, then clicks 'Activate trigger' to commit it or 'Cancel' to dismiss. Never call Create-Trading-Trigger directly; it is invoked by t...3 params

Show a trigger preview card for user review WITHOUT saving anything. ALWAYS call this instead of Create-Trading-Trigger — the user reads the card, then clicks 'Activate trigger' to commit it or 'Cancel' to dismiss. Never call Create-Trading-Trigger directly; it is invoked by t...

Parameters* required
account_idvalue
ruleobject
symbolvalue
Create-Trading-TriggerPersist a price-trigger rule. IMPORTANT: Do NOT call this tool directly — call Preview-Trading-Trigger first and let the user confirm by clicking 'Activate trigger' in the preview card. This tool is invoked by the widget on the user's behalf. The background worker monitors liv...3 params

Persist a price-trigger rule. IMPORTANT: Do NOT call this tool directly — call Preview-Trading-Trigger first and let the user confirm by clicking 'Activate trigger' in the preview card. This tool is invoked by the widget on the user's behalf. The background worker monitors liv...

Parameters* required
account_idvalue
ruleobject
symbolvalue
List-Trading-TriggersList the user's trading triggers — both currently watching (is_active=true) and paused (is_active=false). Each row carries its own is_active flag so you can label them. Completed/fired triggers are moved to the archive — use List-Fired-Triggers to see those. Types / example: i...3 params

List the user's trading triggers — both currently watching (is_active=true) and paused (is_active=false). Each row carries its own is_active flag so you can label them. Completed/fired triggers are moved to the archive — use List-Fired-Triggers to see those. Types / example: i...

Parameters* required
is_activevalue
limitinteger
default: 50
symbolvalue
Update-Trading-TriggerEdit one trading trigger in place. PRE-ENTRY (phase='enter'): all fields are editable — rule, symbol, account_id. POST-ENTRY (phase='exit'): the enter leg has already fired and a position is open at the broker. Symbol and account are locked. You CAN still update the EXIT block...5 params

Edit one trading trigger in place. PRE-ENTRY (phase='enter'): all fields are editable — rule, symbol, account_id. POST-ENTRY (phase='exit'): the enter leg has already fired and a position is open at the broker. Symbol and account are locked. You CAN still update the EXIT block...

Parameters* required
account_idvalue
is_activevalue
rulevalue
symbolvalue
trigger_idstring
Delete-Trading-TriggerDelete a trading trigger. Triggers are not broker orders — nothing is cancelled at SnapTrade. If the trigger was the source of a placed order, the order row and broker position are unaffected; use Delete-Preview-Order to cancel a placed order at the broker. Idempotent: deletin...1 params

Delete a trading trigger. Triggers are not broker orders — nothing is cancelled at SnapTrade. If the trigger was the source of a placed order, the order row and broker position are unaffected; use Delete-Preview-Order to cancel a placed order at the broker. Idempotent: deletin...

Parameters* required
trigger_idstring
List-Fired-TriggersList the user's completed (fired) triggers from the archive. These are triggers that ran to completion. Use Reactivate-Trigger to restart one from the beginning. Types / example: symbol: string — optional ticker filter. limit: integer — max rows (default 50, cap 200).2 params

List the user's completed (fired) triggers from the archive. These are triggers that ran to completion. Use Reactivate-Trigger to restart one from the beginning. Types / example: symbol: string — optional ticker filter. limit: integer — max rows (default 50, cap 200).

Parameters* required
limitinteger
default: 50
symbolvalue
Reactivate-TriggerMove a fired trigger from the archive back to the active triggers table, resetting it to phase='enter' so it starts monitoring prices again from scratch. The original rule is preserved; only triggered_at is cleared. Types / example: fired_trigger_id: string — the id from List-...1 params

Move a fired trigger from the archive back to the active triggers table, resetting it to phase='enter' so it starts monitoring prices again from scratch. The original rule is preserved; only triggered_at is cleared. Types / example: fired_trigger_id: string — the id from List-...

Parameters* required
fired_trigger_idstring
Earnings-CalendarGet the earnings calendar for a date range, optionally filtered by a single symbol. Types / examples: from_date, to_date: strings — "YYYY-MM-DD", e.g. "2024-01-01" to "2024-12-31" symbol: optional string | null — ticker filter, e.g. "MSFT" Example: from_date="2026-01-01", to_d...3 params

Get the earnings calendar for a date range, optionally filtered by a single symbol. Types / examples: from_date, to_date: strings — "YYYY-MM-DD", e.g. "2024-01-01" to "2024-12-31" symbol: optional string | null — ticker filter, e.g. "MSFT" Example: from_date="2026-01-01", to_d...

Parameters* required
from_datestring
symbolvalue
to_datestring
Insider-TransactionsGet insider transactions for a given stock symbol. Useful for analyzing insider buying and selling activity. Types / examples: symbol: string — "BA" from_date, to_date: optional strings | null — "YYYY-MM-DD" Example: symbol="BA", from_date=null, to_date=null3 params

Get insider transactions for a given stock symbol. Useful for analyzing insider buying and selling activity. Types / examples: symbol: string — "BA" from_date, to_date: optional strings | null — "YYYY-MM-DD" Example: symbol="BA", from_date=null, to_date=null

Parameters* required
from_datevalue
symbolstring
to_datevalue
SEC-FilingsGet recent SEC filings (10-K, 10-Q, 8-K, etc.) for a given stock symbol. Types / examples: symbol: string — "BA" from_date, to_date: optional strings | null — "YYYY-MM-DD" Example: symbol="BA", from_date=null, to_date=null3 params

Get recent SEC filings (10-K, 10-Q, 8-K, etc.) for a given stock symbol. Types / examples: symbol: string — "BA" from_date, to_date: optional strings | null — "YYYY-MM-DD" Example: symbol="BA", from_date=null, to_date=null

Parameters* required
from_datevalue
symbolstring
to_datevalue
Stock-PeersGet a list of peer tickers for a given stock symbol. Types / example: symbol: string ticker — e.g. "DIS", "F"1 params

Get a list of peer tickers for a given stock symbol. Types / example: symbol: string ticker — e.g. "DIS", "F"

Parameters* required
symbolstring
IPO-CalendarGet the IPO calendar for a date range. Includes upcoming and historical IPOs. Types / examples: from_date, to_date: strings — "YYYY-MM-DD" Example: from_date="2026-01-01", to_date="2026-06-30"2 params

Get the IPO calendar for a date range. Includes upcoming and historical IPOs. Types / examples: from_date, to_date: strings — "YYYY-MM-DD" Example: from_date="2026-01-01", to_date="2026-06-30"

Parameters* required
from_datestring
to_datestring
Senate-Lobbying-DataGet US political lobbying data for a company. This covers lobbying disclosures and related activity. Types / examples: symbol: optional string | null — e.g. "CAT" from_date, to_date: optional strings | null — "YYYY-MM-DD" Example: symbol="CAT", from_date="2023-01-01", to_date=...3 params

Get US political lobbying data for a company. This covers lobbying disclosures and related activity. Types / examples: symbol: optional string | null — e.g. "CAT" from_date, to_date: optional strings | null — "YYYY-MM-DD" Example: symbol="CAT", from_date="2023-01-01", to_date=...

Parameters* required
from_datevalue
symbolvalue
to_datevalue
Financial-MetricsGet basic financial metrics for a stock (P/E, margins, growth, etc.). Types / examples: symbol: string — "XOM" metric: string — "all" (default) or a specific metric key supported by the feed Example: symbol="CVX", metric="all"2 params

Get basic financial metrics for a stock (P/E, margins, growth, etc.). Types / examples: symbol: string — "XOM" metric: string — "all" (default) or a specific metric key supported by the feed Example: symbol="CVX", metric="all"

Parameters* required
metricstring
default: all
symbolstring
USA-Spending-DataGet USA spending data related to a company, including contracts and awards tied to the symbol. Types / examples: symbol: optional string | null — e.g. "CAT" from_date, to_date: optional strings | null — "YYYY-MM-DD" Example: symbol="CAT", from_date="2023-01-01", to_date=null3 params

Get USA spending data related to a company, including contracts and awards tied to the symbol. Types / examples: symbol: optional string | null — e.g. "CAT" from_date, to_date: optional strings | null — "YYYY-MM-DD" Example: symbol="CAT", from_date="2023-01-01", to_date=null

Parameters* required
from_datevalue
symbolvalue
to_datevalue
Income-StatementIncome statement for a symbol. freq is 'yearly' or 'quarterly'. Types / examples: symbol: string — "IBM" freq: string — "yearly" or "quarterly" Example: symbol="GOOGL", freq="quarterly"2 params

Income statement for a symbol. freq is 'yearly' or 'quarterly'. Types / examples: symbol: string — "IBM" freq: string — "yearly" or "quarterly" Example: symbol="GOOGL", freq="quarterly"

Parameters* required
freqstring
default: yearly
symbolstring
Balance-SheetBalance sheet for a symbol. freq is 'yearly' or 'quarterly'. Types / examples: symbol: string — "IBM" freq: string — "yearly" or "quarterly" Example: symbol="GOOGL", freq="quarterly"2 params

Balance sheet for a symbol. freq is 'yearly' or 'quarterly'. Types / examples: symbol: string — "IBM" freq: string — "yearly" or "quarterly" Example: symbol="GOOGL", freq="quarterly"

Parameters* required
freqstring
default: yearly
symbolstring
Cashflow-StatementCash flow statement for a symbol. freq is 'yearly' or 'quarterly'. Types / examples: symbol: string — "IBM" freq: string — "yearly" or "quarterly" Example: symbol="GOOGL", freq="quarterly"2 params

Cash flow statement for a symbol. freq is 'yearly' or 'quarterly'. Types / examples: symbol: string — "IBM" freq: string — "yearly" or "quarterly" Example: symbol="GOOGL", freq="quarterly"

Parameters* required
freqstring
default: yearly
symbolstring
Earnings-DatesEarnings dates for a symbol; limit caps how many rows are returned. Types / examples: symbol: string — "META" limit: integer — default 12 Example: symbol="NFLX", limit=82 params

Earnings dates for a symbol; limit caps how many rows are returned. Types / examples: symbol: string — "META" limit: integer — default 12 Example: symbol="NFLX", limit=8

Parameters* required
limitinteger
default: 12
symbolstring
EPS-EstimatesEPS estimates for upcoming periods. Types / example: symbol: string ticker — e.g. "DIS", "F"1 params

EPS estimates for upcoming periods. Types / example: symbol: string ticker — e.g. "DIS", "F"

Parameters* required
symbolstring
Revenue-EstimatesRevenue estimates for upcoming periods. Types / example: symbol: string ticker — e.g. "DIS", "F"1 params

Revenue estimates for upcoming periods. Types / example: symbol: string ticker — e.g. "DIS", "F"

Parameters* required
symbolstring
EPS-TrendEPS trend for a symbol. Types / example: symbol: string ticker — e.g. "DIS", "F"1 params

EPS trend for a symbol. Types / example: symbol: string ticker — e.g. "DIS", "F"

Parameters* required
symbolstring
EPS-RevisionsEPS revision stats (up/down changes) for a symbol. Types / example: symbol: string ticker — e.g. "DIS", "F"1 params

EPS revision stats (up/down changes) for a symbol. Types / example: symbol: string ticker — e.g. "DIS", "F"

Parameters* required
symbolstring
Analyst-Price-TargetsAnalyst price target summary (low, high, mean, median) for a symbol. Types / example: symbol: string ticker — e.g. "DIS", "F"1 params

Analyst price target summary (low, high, mean, median) for a symbol. Types / example: symbol: string ticker — e.g. "DIS", "F"

Parameters* required
symbolstring
Analyst-Upgrades-and-DowngradesRecent analyst upgrades and downgrades for a symbol. Types / example: symbol: string ticker — e.g. "DIS", "F"1 params

Recent analyst upgrades and downgrades for a symbol. Types / example: symbol: string ticker — e.g. "DIS", "F"

Parameters* required
symbolstring
Dividends-and-SplitsHistorical dividends and splits. period defaults to 'max'. Types / examples: symbol: string — "KO" period: string — "max" (default), "1y", "5y", etc. Example: symbol="AAPL", period="5y"2 params

Historical dividends and splits. period defaults to 'max'. Types / examples: symbol: string — "KO" period: string — "max" (default), "1y", "5y", etc. Example: symbol="AAPL", period="5y"

Parameters* required
periodstring
default: max
symbolstring
Institutional-HoldersInstitutional holders for a symbol. Types / example: symbol: string ticker — e.g. "DIS", "F"1 params

Institutional holders for a symbol. Types / example: symbol: string ticker — e.g. "DIS", "F"

Parameters* required
symbolstring
Growth-EstimatesAnalyst growth estimates across horizons for a symbol. Types / example: symbol: string ticker — e.g. "DIS", "F"1 params

Analyst growth estimates across horizons for a symbol. Types / example: symbol: string ticker — e.g. "DIS", "F"

Parameters* required
symbolstring
SearchDiscovery placeholder; returns no rows. Use the Atlas market and strategy tools. Types / example: query: string — ignored; e.g. ""1 params

Discovery placeholder; returns no rows. Use the Atlas market and strategy tools. Types / example: query: string — ignored; e.g. ""

Parameters* required
querystring
Fetch-URLCompatibility hook; does not load arbitrary URLs. Use Atlas data tools instead. Types / example: url: string — ignored; e.g. "https://example.com"1 params

Compatibility hook; does not load arbitrary URLs. Use Atlas data tools instead. Types / example: url: string — ignored; e.g. "https://example.com"

Parameters* required
urlstring
Subscription-StatusGet the authenticated user's subscription tier, monthly usage, remaining requests, and limits. Returns a dashboard_url the user can visit to manage their account, upgrade their plan, connect a broker, or see available tools. Always share the dashboard link when the user asks a...

Get the authenticated user's subscription tier, monthly usage, remaining requests, and limits. Returns a dashboard_url the user can visit to manage their account, upgrade their plan, connect a broker, or see available tools. Always share the dashboard link when the user asks a...

No parameter schema in public metadata yet.

Get-InstructionsRead the signed-in user's saved instructions (read-only). Optional platform='discord' with parameters for Discord context. Types / examples: platform: string — "other" (default) or "discord" parameters: optional array of objects | null — host-specific context for Discord Examp...2 params

Read the signed-in user's saved instructions (read-only). Optional platform='discord' with parameters for Discord context. Types / examples: platform: string — "other" (default) or "discord" parameters: optional array of objects | null — host-specific context for Discord Examp...

Parameters* required
parametersvalue
platformstring
default: other
Autofetch-StrategyGiven a question in natural language, return the best-matching strategies for this user (up to 10), including titles, content, and related material. Optional platform='discord' with parameters for Discord. Types / examples: question: string — e.g. "How do I size trades for ear...3 params

Given a question in natural language, return the best-matching strategies for this user (up to 10), including titles, content, and related material. Optional platform='discord' with parameters for Discord. Types / examples: question: string — e.g. "How do I size trades for ear...

Parameters* required
parametersvalue
platformstring
default: other
questionstring
List-StrategyList this user's strategies (id, title, visibility, dates) without full body text. Use Fetch-Strategy when you need the complete document. Types / examples: platform: string — "other" or "discord" parameters: optional array of objects | null2 params

List this user's strategies (id, title, visibility, dates) without full body text. Use Fetch-Strategy when you need the complete document. Types / examples: platform: string — "other" or "discord" parameters: optional array of objects | null

Parameters* required
parametersvalue
platformstring
default: other
Fetch-StrategyLoad one strategy by id with full content and related material. Optional question narrows what is retrieved. Types / examples: strategy_id: string — UUID from List-Strategy or Strategy-Open question: optional string | null — narrows retrieved excerpts platform: string — "other...4 params

Load one strategy by id with full content and related material. Optional question narrows what is retrieved. Types / examples: strategy_id: string — UUID from List-Strategy or Strategy-Open question: optional string | null — narrows retrieved excerpts platform: string — "other...

Parameters* required
parametersvalue
platformstring
default: other
questionvalue
strategy_idstring
Strategy-OpenOpen the strategy experience for the signed-in user (view mode). - strategy_id: optional; defaults to their primary strategy. - platform: optional host hint — openai, claude, or other. Response includes strategy id, title, content, journal when applicable, a short discovery li...2 params

Open the strategy experience for the signed-in user (view mode). - strategy_id: optional; defaults to their primary strategy. - platform: optional host hint — openai, claude, or other. Response includes strategy id, title, content, journal when applicable, a short discovery li...

Parameters* required
platformstring
default: other
strategy_idvalue
Strategy-PreviewSame as Strategy-Open but can include proposed edits for the UI to review. - proposed_title: new document title (optional). - proposed_content: optional JSON string; same accepted shapes as Strategy-Create `content`. - proposed_journal_entry: optional single journal line. - st...5 params

Same as Strategy-Open but can include proposed edits for the UI to review. - proposed_title: new document title (optional). - proposed_content: optional JSON string; same accepted shapes as Strategy-Create `content`. - proposed_journal_entry: optional single journal line. - st...

Parameters* required
platformstring
default: other
proposed_contentvalue
proposed_journal_entryvalue
proposed_titlevalue
strategy_idvalue
Strategy-UpdateSave changes to an existing strategy. - strategy_id: which strategy to update (required). - title, content, visibility, update_note: optional new values. - journal: optional full journal list to replace the current one. - journal_entry: optional line to append to the journal....11 params

Save changes to an existing strategy. - strategy_id: which strategy to update (required). - title, content, visibility, update_note: optional new values. - journal: optional full journal list to replace the current one. - journal_entry: optional line to append to the journal....

Parameters* required
analysisvalue
contentvalue
instructionsvalue
journalvalue
journal_entryvalue
searchvalue
strategy_idstring
titlevalue
toolsvalue
update_notevalue
visibilityvalue
Strategy-CreateCreate a new strategy. - title: name (required). - content: optional JSON string; leave empty for a blank strategy. - visibility: private, invite-only, unlisted, Atlas-public, web-public (default private). Accepted JSON for section bodies (pass the whole value as one string, e...3 params

Create a new strategy. - title: name (required). - content: optional JSON string; leave empty for a blank strategy. - visibility: private, invite-only, unlisted, Atlas-public, web-public (default private). Accepted JSON for section bodies (pass the whole value as one string, e...

Parameters* required
contentstring
default:
titlestring
visibilitystring
default: private
Strategy-Save-InstructionsSave the user's strategy-selection notes. - instructions: text to store; leave empty to clear. These notes steer how strategies are chosen for their questions. Types / examples: instructions: optional string | null — free text; empty clears saved notes Example: instructions="P...1 params

Save the user's strategy-selection notes. - instructions: text to store; leave empty to clear. These notes steer how strategies are chosen for their questions. Types / examples: instructions: optional string | null — free text; empty clears saved notes Example: instructions="P...

Parameters* required
instructionsvalue
Strategy-ImportCopy a catalog or shared strategy into this user's account as a new private strategy (content and attachments). - strategy_id: id of the strategy to copy (required). Requires an active signed-in session. You cannot import a strategy you already own. Types / examples: strategy_...2 params

Copy a catalog or shared strategy into this user's account as a new private strategy (content and attachments). - strategy_id: id of the strategy to copy (required). Requires an active signed-in session. You cannot import a strategy you already own. Types / examples: strategy_...

Parameters* required
platformstring
default: other
strategy_idstring
Trigger-Workflow-SchemaFetch the canonical schema for AI trigger workflows. Returns every legal field the workflow decision AI can fill, its data type, allowed options, and when-conditions, plus worked examples. Use this when an external client (ChatGPT, Claude) is helping a user author or edit a wo...

Fetch the canonical schema for AI trigger workflows. Returns every legal field the workflow decision AI can fill, its data type, allowed options, and when-conditions, plus worked examples. Use this when an external client (ChatGPT, Claude) is helping a user author or edit a wo...

No parameter schema in public metadata yet.

Atlas

Atlas is the AI data analyst you can run anywhere. It answers plain-English questions across your SQL warehouses and REST APIs — grounded in a semantic layer you author, a Knowledge Base of your own docs, the query patterns it learns as your team approves them, and a Company Atlas of what your colleagues have said and someone has stood behind.

CI npm License

Documentation · Live Demo · The Semantic Layer · MCP Guide · Issues

Atlas terminal demo — create, init, and query in under 30 seconds


What is Atlas?

Ask two tools what revenue was last quarter and you can get two different numbers. Atlas reads your definitions first.

What grounds an answer

Four context surfaces, each with a different job — and a boundary between them that Atlas enforces rather than trusts:

What it isIts job
Semantic layerYAML on disk — entities, dimensions, measures, joins, glossary terms, pinned metricsThe sole authoritative surface. The table whitelist, pinned metric SQL, and glossary gating are enforced, not suggested
Knowledge BaseYour own docs — mirrored through ten vendor connectors (Notion, Confluence (Cloud + Data Center), GitBook, Zendesk, Salesforce, Intercom, Front, Help Scout, Freshdesk) or uploaded directlyDescriptive only. Runbooks, definitions, policies. Never queried as data, never extends the whitelist, never gates the agent (ADR-0028)
Learned patternsThe query shapes Atlas keeps as your team approves themThe canonical joins for your domain — earned from real use rather than authored up front
Company AtlasClaims drawn from what your company already says — chat, meeting transcripts, mail — each carrying its source, its date, and the person who approved itNothing counts until a person approves it. Facts are ACL-scoped fail-closed, superseded rather than deleted, and readable as of a past date. Contradictions are surfaced with both sources, never arbitrated (ADR-0036)

That descriptive-vs-authoritative split is the point: a runbook can inform an answer, but only the semantic layer can authorize the SQL behind it.

The Company Atlas is the newest of the four and the one you opt into: extraction ships off by default (ATLAS_BRAIN_EXTRACTION_ENABLED), so nothing is drawn from your chat, transcripts, or mail until you turn it on — and once on, a claim still waits for a person before it counts.

Every YAML field exists because an LLM needs it to write correct SQL: sample_values ground the agent in real data, glossary.status: ambiguous forces clarifying questions, metrics.objective picks MAX vs MIN, query_patterns teach the canonical join shapes for your domain.

Where the answer shows up

The same grounded agent, reachable however your team already works:

  • Chat UI — built in, with the SQL on display behind every answer
  • Dashboards — draft-first and publish-gated, so private work stays private until you ship it (ADR-0029)
  • MCP server — Claude Desktop, Cursor, Continue, or any MCP client, over stdio or OAuth 2.1
  • Embeddable widget — script tag or React component, in your own app
  • Chat platforms — six, Slack one-click; Teams, Discord, Telegram, and WhatsApp with your own bot (Google Chat coming soon)
  • REST API + CLI — headless, typed, scriptable

Built with Hono, Vercel AI SDK, and bun. Supports Anthropic, OpenAI, Bedrock, Ollama, any OpenAI-compatible endpoint, and Vercel AI Gateway. Works with PostgreSQL, MySQL, ClickHouse, Snowflake, DuckDB, BigQuery, Elasticsearch, and Salesforce.

Try the demo locally

bun create atlas-agent my-app
cd my-app
# edit .env and set your LLM API key (Anthropic / OpenAI / etc.)
bun run dev
# Open http://localhost:3000

The scaffold seeds the canonical NovaMart e-commerce dataset (52 tables, ~480K rows) by default — twelve generic e-commerce KPIs ship as starter prompts inside the chat UI; the canonical 5 below drive the eval harness (#2025) and the docs/landing copy. The scaffold defaults to SQLite + Anthropic; pass --defaults for non-interactive setup or follow the prompts to pick PostgreSQL / OpenAI / etc.

Ask one of the canonical questions in the chat UI:

  • "What's our GMV this quarter?"
  • "What's our top-performing category by GMV this month?"
  • "Monthly GMV trend over the past 6 months."
  • "Show me revenue last quarter." — Atlas asks which definition you mean (GMV vs. net revenue vs. seller revenue) because revenue is status: ambiguous in the glossary
  • "What are our most common return reasons?"

The agent reads your YAML semantic layer first, picks the right entities, writes SQL, runs it through the validation pipeline, and returns answers with the underlying SQL on display.

The default landing for fresh installs is chat-first — admins can flip to admin in Settings → Profile. See the Default Landing guide for the underlying preference.

Install Atlas as an MCP server

Once you have an Atlas instance (local from the demo above, self-hosted, or a hosted workspace), add it to Claude Desktop, Cursor, or Continue with one command. Auto-detects the client and merges into its config:

bunx @useatlas/mcp init --local            # paste-ready config for a local Atlas instance
bunx @useatlas/mcp init --local --write    # merge into the detected client config (with a .bak)
bunx @useatlas/mcp init --hosted --write   # for an app.useatlas.dev workspace via OAuth 2.1

On WSL2? Bun's bunx shim has resolution issues on some WSL2 setups — substitute bun x (space-separated) for any bunx command above (e.g. bun x @useatlas/mcp init --local). The space-separated form is a bun subcommand and resolves correctly.

Restart Claude Desktop / Cursor and ask the same canonical questions through your AI client. See the MCP guide for the full flow — hosted (mcp.useatlas.dev over OAuth 2.1 + DCR + PKCE) and self-hosted (stdio) live in the same page under tabs.

What's in the YAML?

A 20-line slice of semantic/entities/orders.yml from the bundled NovaMart e-commerce demo (#2021):

name: Orders
type: fact_table
table: orders
grain: one row per order
description: |
  Customer orders — the primary fact table for revenue analysis.
  shipping_cost uses MIXED UNITS (some rows in dollars, some in cents).
dimensions:
  - name: status
    sql: status
    type: string
    sample_values: [pending, processing, shipped, delivered, cancelled]
  - name: order_month
    sql: TO_CHAR(created_at, 'YYYY-MM')
    type: string
    virtual: true
measures:
  - name: total_gmv_cents
    sql: total_cents
    type: sum
joins:
  - target_entity: Customers
    relationship: many_to_one
    join_columns: { from: customer_id, to: id }

That YAML is the contract between your team and the agent — version-controlled, code-reviewed, diffable. Sibling files (glossary.yml, metrics/*.yml, catalog.yml) round it out: glossary terms with status: ambiguous force the agent to clarify, metrics with objective: maximize / minimize make optimization direction explicit, and the catalog routes the agent to the right entity for a given question.

See the full Semantic Layer reference for the complete schema.

Embed in your app

Atlas also ships an embeddable chat widget for any frontend:

<script
  src="https://your-atlas.example.com/widget.js"
  data-api-url="https://your-atlas.example.com"
  data-theme="dark"
></script>

Or use the React component:

import { AtlasChat } from "@useatlas/react";

export default function App() {
  return <AtlasChat apiUrl="https://your-atlas.example.com" />;
}

The widget supports programmatic control (Atlas.open(), Atlas.ask("..."), Atlas.destroy()), event callbacks, and theming. See the widget docs.

Why Atlas?

AtlasTraditional BIOther text-to-SQL
Semantic layerYAML on disk — query_patterns, virtual_dimensions, glossary.status: ambiguous, metrics.objective are all first-classProprietary metadata, GUI-authoredNone or limited
Your docs as contextKnowledge Base pillar — ten vendor connectors, descriptive-only by construction (never extends the SQL whitelist)Separate wiki, unlinkedNone
DashboardsDraft-first, publish-gated — built from chat answers, private until you shipCore product, GUI-authoredRare
Agent-nativeMCP server first — Claude Desktop, Cursor, Continue with bunx @useatlas/mcp initBolted-on AI featureStandalone chat UI
EmbeddableScript tag, React component, headless API, MCP, 6 chat platforms (Slack one-click; Teams/Discord/Telegram/WhatsApp bring-your-own-bot; Google Chat coming soon)Standalone appStandalone app
Deploy anywhereDocker, Railway, Vercel, or your own infraVendor-hostedVendor-hosted
Plugin ecosystem24 plugins across 5 types — extend anythingClosedLimited
Open sourceAGPL-3.0 core, MIT client libsProprietaryVaries
Multi-databasePostgreSQL, MySQL, ClickHouse, Snowflake, DuckDB, BigQuery, Elasticsearch, SalesforceUsually oneUsually one
REST APIs as datasourcesStripe, GitHub, Notion, any OpenAPI spec — read like a datasource, write-gated; generic OpenAPI installs auto-refreshNoneNone

Deploy

Deploy with Vercel Deploy on Railway

Docker:

git clone https://github.com/AtlasDevHQ/atlas-starter-docker.git && cd atlas-starter-docker
cp .env.example .env   # Set your API key + database URL
docker compose up
PlatformStarterGuide
Vercelatlas-starter-vercelNext.js + embedded Hono API + Neon Postgres
Railwayatlas-starter-railwayDocker + sidecar sandbox + Railway Postgres
Dockeratlas-starter-dockerDocker Compose + optional nsjail isolation

How It Works

  1. User (or agent) asks a natural language question — over MCP, the chat widget, the API, or a chat platform (Slack, Teams, Discord, Telegram, or WhatsApp; Google Chat coming soon)
  2. Agent explores the YAML semantic layer — entities, glossary, metrics, query patterns
  3. Agent writes SQL, validated through a 7-layer security pipeline (empty check, regex guard, AST parse, table whitelist, RLS injection, auto-LIMIT, statement timeout)
  4. Results are returned with charts and an interpreted narrative
Question → YAML semantic layer → SQL generation → 7-layer validation → Query execution → Charts + narrative

Generate the semantic layer

bun run atlas -- init                 # Profile DB and generate YAMLs
bun run atlas -- init --enrich        # Profile + LLM enrichment
bun run atlas -- init --demo          # Load NovaMart demo data + profile

Architecture

atlas/
├── packages/
│   ├── api/              # @atlas/api — Hono API server + agent loop + tools + auth
│   ├── web/              # @atlas/web — Next.js frontend + chat UI components
│   ├── cli/              # @atlas/cli — CLI (profiler, schema diff, enrichment)
│   ├── mcp/              # @atlas/mcp — MCP server (Claude Desktop, Cursor, etc.)
│   ├── sandbox-sidecar/  # @atlas/sandbox-sidecar — Isolated explore sidecar
│   ├── sdk/              # @useatlas/sdk — TypeScript SDK
│   ├── react/            # @useatlas/react — Embeddable chat component + hooks
│   ├── types/            # @useatlas/types — Shared wire-format types
│   ├── schemas/          # @useatlas/schemas — Shared Zod schemas
│   ├── plugin-sdk/       # @useatlas/plugin-sdk — Plugin type definitions
│   ├── webhook-publisher/# @useatlas/webhook-publisher — HMAC-signed outbound webhooks
│   ├── oauth-helper/     # @atlas/oauth-helper — OAuth 2.1 + DCR + PKCE primitives (internal)
│   ├── okf-bundle/       # @atlas/okf-bundle — OKF knowledge-bundle builder (internal)
│   └── fumadocs-okf/     # @atlas/fumadocs-okf — Fumadocs → OKF adapter (internal)
├── plugins/              # 24 plugins (datasource, context, interaction, action, sandbox)
├── ee/                   # @atlas/ee — Enterprise features (source-available, commercial license)
├── create-atlas/         # Scaffolding CLI (bun create atlas-agent)
├── apps/
│   ├── www/              # Landing page (useatlas.dev)
│   └── docs/             # Documentation (docs.useatlas.dev)
└── examples/             # Docker + Vercel deploy examples

Security

SQL validation runs through multiple layers. Your database credentials and query results never leave your infrastructure — only questions reach the LLM provider (use Ollama for fully self-hosted).

LayerWhat it does
Read-only enforcementOnly SELECT queries allowed (regex + AST validation)
AST parsingnode-sql-parser verifies single-statement SELECT
Table whitelistOnly tables in your semantic layer are queryable
Auto LIMITEvery query gets a LIMIT (default 1000)
Statement timeoutQueries killed after 30s (configurable)
Sandboxed executionFilesystem access runs in Vercel Sandbox, nsjail, or the sidecar — with e2b, Daytona, and Railway available as bring-your-own-cloud backends
Row-level securityOptional RLS injection per-user

See sandbox architecture for the full threat model.

Environment Variables

VariableDefaultDescription
ATLAS_PROVIDERanthropicLLM provider (anthropic, openai, bedrock, ollama, openai-compatible, gateway)
ATLAS_MODELProvider defaultModel ID override
DATABASE_URL—Atlas internal Postgres for auth, audit, settings
ATLAS_DATASOURCE_URL—Analytics datasource (PostgreSQL, MySQL, etc.)
ATLAS_ROW_LIMIT1000Max rows per query
ATLAS_QUERY_TIMEOUT30000Query timeout in ms

See .env.example for all options.

Documentation

  • The Semantic Layer — Entities, dimensions, measures, joins, glossary, metrics — the YAML format reference
  • Knowledge Base — Mirror your own docs as descriptive context, via connectors or upload
  • Dashboards — Draft-first, publish-gated dashboards built from chat answers
  • MCP Server — Use Atlas from Claude Desktop, Cursor, Continue
  • Quick Start — Local dev from zero to asking questions
  • Demo Dataset — NovaMart e-commerce dataset and canonical questions
  • Deploy Options — Docker, Railway, Vercel, and more
  • Connect Your Data — Connect to an existing database safely
  • Widget Embedding — Script tag and React component
  • Bring Your Own Frontend — Nuxt, SvelteKit, React/Vite, TanStack Start
  • Plugin Authoring — Build custom plugins
  • Security & Sandbox — Threat model, isolation tiers
  • Enterprise Boundary — /ee features, AGPL vs commercial split, requireEnterprise API

Contributing

Quick development setup:

git clone https://github.com/AtlasDevHQ/atlas.git && cd atlas
bun install
bun run db:up         # Start Postgres + sandbox sidecar
cp .env.example .env  # Set ATLAS_PROVIDER + API key
bun run dev           # http://localhost:3000

Acknowledgments

Atlas was inspired by Abhi Sivasailam's work on Vercel's internal data agent d0 and the open-source vercel-labs/oss-data-analyst template. The core insight — invest in a rich semantic layer, trust the model, and keep the tool surface minimal — came from that work.

License

The Atlas server and core packages (@atlas/api, @atlas/cli, @atlas/web, @atlas/mcp, @atlas/sandbox-sidecar) are licensed under AGPL-3.0. If you modify the server and serve it to users, you must share those modifications.

The client libraries (@useatlas/sdk, @useatlas/react, @useatlas/types, @useatlas/plugin-sdk) and all plugins are licensed under MIT. Embed them in proprietary apps with no restrictions.

The ee/ directory (@atlas/ee — SSO, SCIM, custom roles, approval workflows, residency, branding, and the rest of the SaaS surfaces) is source-available under a commercial license. Self-hosted users get the full AGPL core for free; the commercial license adds enterprise governance and the polished hosted experience. See the Enterprise Boundary page for the full feature inventory.

Featured
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
inference shell
inference shell
create and run specialised agents in minutes
build now →
MCP-ready Email SendingMCP-ready Email Sending
MCP-ready Email Sending
Plug Mailtrap into your AI workflow and let it handle the email.
Connect Mailtrap MCP →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Capacitor - Shared memory for your team’s coding agents.
Capacitor - Shared memory for your team’s coding agents.
Make coding agent sessions - Searchable, Shareable, Vendor-neutral & Scored.
Try For Free →
CodeScene MCP ServerCodeScene MCP Server
CodeScene MCP Server
Your agent targets a perfect 10 Code Health score. Deterministic. Every commit.
Try For Free →
Give your AI the whole web as clean markdownGive your AI the whole web as clean markdown
Give your AI the whole web as clean markdown
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →

Configuration

ATLAS_DATASOURCE_URLsecret

Analytics datasource URL (postgres, mysql, clickhouse, snowflake, duckdb, bigquery, salesforce). Optional — falls back to a bundled NovaMart SQLite demo when unset.

ATLAS_PROVIDER

LLM provider: anthropic, openai, bedrock, ollama, openai-compatible, gateway. Optional — the MCP server does not call an LLM directly (the client does); set this only if you also run Atlas's chat or scheduler.

ATLAS_API_URL

URL of a running Atlas API. Optional — defaults to http://localhost:3001. When set, the MCP server inherits the API's connections, semantic layer, and governance.

Categories
Monitoring & Observability
Registryactive
Package@useatlas/mcp
TransportSTDIO
AuthRequired
UpdatedMay 5, 2026
View on GitHub

Related Monitoring & Observability MCP Servers

View all →
base76-research-lab avatar
Cognos Session Memory

base76-research-lab/cognos-session-memory

CognOS trust scoring (C=p·(1-Ue-Ua)) and session trace storage as MCP tools.
1
bch1212 avatar
Queryshield

bch1212/queryshield

Secure SQL proxy for AI agents — NL→SQL, AST safety, per-agent RLS, audit log.
1
cyanheads avatar
Devops Status Mcp Server

cyanheads/devops-status-mcp-server

Vendor status pages, TLS cert inspection, DNS propagation checks, and incident-response playbooks.
1
den-indance avatar
Shopify Mcp Pro

den-indance/shopify-mcp-pro

Shopify MCP server with real analytics (ShopifyQL), auto-refresh auth, and Shopify API 2026-04.
1
drivenrajat avatar
F1 Data Server

drivenrajat/f1

Access Formula 1 race data, telemetry, lap times, standings, and analytics powered by FastF1
1
euleriantechnologies avatar
Eulerian Marketing Platform Mcp

euleriantechnologies/eulerian-marketing-platform-mcp

Provides access to the Eulerian Marketing Platform: analytics, attribution & data activation.
1