the-balanced-investor-club
https://thebalancedinvestorclub.com
Registry code: 7b77e4d971c47ec5
You're connected to The Balanced Investor Club — your thinking companion for the markets. Market tools (mood, fundamentals, comparisons) work without an account. Tools that read your own data — Stock Tracker, Trading Journal, Trust Score — need you to sign in: authorize the connector to add them. These tools are educational and don't make buy or sell recommendations.
- endpoint
- https://thebalancedinvestorclub.com/api/mcp/mcp
- protocol
- http-sse ·2025-06-18
- authentication
- none observed
- public key
- none — nobody has proven they own this listing · is it yours? claim it
- karma
- 0 · newcomer
- Is the-balanced-investor-club live?
- Yes — it answered the hub's last check (checked 22m ago). It answered 100% of checks over the last 30 days.
- Is the-balanced-investor-club free to use?
- Partly — some of its tools are open, others need a key or payment.
- What tools does the-balanced-investor-club have?
- 57 tools: get_watchlist_by_slug, search_instruments, get_etf_profile, delete_watchlist, get_crypto_price_alignment, get_earnings_estimates, get_cash_flow, get_earnings_transcript, ….
- Is the-balanced-investor-club safe to connect?
- The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
90 days 99.7%· all time 99.7%
last good check
of 57 tools
- degraded → live
- degraded → live
- live → degraded· timeout after 20000ms
- unknown → live
- used for
- get stock fundamentals and earnings transcripts
- compare ticker returns
- manage a stock watchlist
- log trades in a journal
- see market movers
- takes → gives
- text → data, text
- tools
- 21 reads4 changes data
Calls placed through this hub's router, from its own receipts. Every caller and every payer counts the same; the chain total is counted from three payers.
through this hub
successful
what callers paid
Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.
get_today_mood_changes open 7h ago
Mood TRANSITIONS today — instruments whose Market Mood label flipped in the last 24h (e.g. Bullish → Neutral). This is NOT price movers; mood changes only. If today is quiet, an empty result is normal — try `list_market_moods` with `only_with_changes` for the latest cycle of transitions across recent days.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "mood": { "enum": [ "Strong Bullish", "Bullish", "Neutral", "Bearish", "Strong Bearish" ], "type": "string", "description": "Only show changes that landed on this mood" }, "limit": { "type": "number", "maximum": 50, "minimum": 1 }, "asset_type": { "enum": [ "stock", "etf", "crypto", "forex" ], "type": "string" } } }arguments 31 linesdiscover_community_watchlists reads open 22m ago
Browse public watchlists curated by our research team at The Balanced Investor Club. Filter by asset type or sort by what's popular.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "limit": { "type": "number", "maximum": 30, "minimum": 1 }, "sort_by": { "enum": [ "popular", "recent", "mostItems" ], "type": "string", "description": "Default: popular" }, "asset_type": { "enum": [ "stock", "etf", "crypto", "forex" ], "type": "string" } } }arguments 29 linesget_macro_indicators open 38h ago
US economic indicators — rates, jobs, growth, energy, metals, agriculture, and markets. Latest reading per indicator plus the change from the prior period. Context behind the market, not a signal about any one stock.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "history": { "type": "number", "maximum": 60, "minimum": 2, "description": "Readings of history per indicator when include_keys is set. Defaults to 24; if fewer exist, all available readings are returned." }, "include_keys": { "type": "array", "items": { "type": "string" }, "description": "Optional filter — return only these indicator keys (e.g. ['fedfunds', 'treasury10y']). Call without a filter first to see every available key; unknown keys are reported back with the valid list. When a filter is set, each matched indicator also returns its reading history (see `history`)." } } }arguments 19 linesget_market_calendar reads open 32h ago
Upcoming earnings and IPOs across the market, next three months. Filter to specific tickers and/or a date range to reach your coverage. Earnings carry analyst-estimate EPS when reported. IPOs carry exchange and price range when available.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "to": { "type": "string", "description": "Only events on or before this date (YYYY-MM-DD)." }, "from": { "type": "string", "description": "Only events on or after this date (YYYY-MM-DD)." }, "limit": { "type": "number", "maximum": 50, "minimum": 1, "description": "Max events to return per section. Defaults to 25." }, "filter": { "enum": [ "all", "earnings", "ipos" ], "type": "string", "description": "Filter the calendar by event type. Defaults to all." }, "tickers": { "type": "array", "items": { "type": "string" }, "description": "Only events for these symbols (e.g. ['AAPL','MSFT','NVDA']). Without it the whole market is returned — use this to reach a coverage list." } } }arguments 36 linesget_pricing reads open 34d ago
Pricing tiers at The Balanced Investor Club — what each one unlocks. No sales pitch.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": {} }arguments 5 linesstart_here open 35h ago
Start exploring The Balanced Investor Club. A calm orientation — what we are, what the community is watching right now, and what to try next. Recommended as your first call.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": {} }arguments 5 lineslist_market_moods reads open 41h ago
Browse Market Mood across instruments — The Balanced Investor Club's behavioural read on how short and long-term moving averages align. Educational, never predictive. Filter by sector, asset type, or mood label.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "mood": { "enum": [ "Strong Bullish", "Bullish", "Neutral", "Bearish", "Strong Bearish" ], "type": "string" }, "limit": { "type": "number", "maximum": 50, "minimum": 1, "description": "Default 20, max 50 for anonymous tier" }, "sector": { "type": "string", "description": "Filter by sector name (e.g. 'Technology')" }, "industry": { "type": "string", "description": "Filter by industry name" }, "asset_type": { "enum": [ "stock", "etf", "crypto", "forex" ], "type": "string" }, "only_with_changes": { "type": "boolean", "description": "Only items where mood changed recently" } } }arguments 43 linesabout_us reads open 7h ago
Who we are. Philosophy, framework, what we are — and what we are NOT. The thinking companion for the markets.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": {} }arguments 5 linesget_market_pulse open 32h ago
A snapshot of where the market sits right now — random sample of strongly bullish vs strongly bearish names, plus aggregate counts. Great as an opener to ask 'what stands out today?'
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": {} }arguments 5 linesget_my_trust_score reads auth-required 13h ago
Your Trust Score and what built it — discipline, sizing, journaling, drawdown control. A read on your own behaviour, not a verdict.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": {} }arguments 5 lineswhoami auth-required 34d ago
A quick hello — your name, plan, how long you've been with The Balanced Investor Club, and today's date from our servers. Call this before stamping a date on any deliverable: the date here is authoritative, and a date you recall is not.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": {} }arguments 5 lineslist_my_trades auth-required 41h ago
Your trades from the Trading Journal at The Balanced Investor Club. Optionally filter by status or ticker. Set include_notes to read back the thesis and lesson you wrote on each trade. Your data, your patterns — never advice.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "limit": { "type": "number", "maximum": 50, "minimum": 1, "description": "Trades to return; default 20" }, "status": { "enum": [ "Open", "Closed" ], "type": "string", "description": "Filter by trade status" }, "ticker": { "type": "string", "description": "Filter to a specific ticker" }, "include_notes": { "type": "boolean", "description": "Include the thesis, exit reason, lesson and notes written on each trade. Off by default because they are long — turn it on when looking at a handful of trades, not a whole book." }, "include_paper": { "type": "boolean", "description": "Include paper/practice trades, which are excluded from your stats. Off by default, matching the journal on the site." } } }arguments 32 linessearch_my_watchlists reads auth-required 3h ago
Search across your own watchlists, the curated/official ones, and shared community lists by name. Returns up to 5 matches per bucket.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "query" ], "properties": { "query": { "type": "string", "maxLength": 100, "minLength": 2, "description": "Search query (2-100 chars)" } } }arguments 15 linescheck_ticker_in_my_watchlists auth-required 45h ago
Quickly check whether a specific ticker is already in any watchlist you own or follow. Useful before adding it again.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ticker", "asset_type" ], "properties": { "ticker": { "type": "string", "description": "Ticker symbol (e.g. AAPL, BTC-USD)" }, "asset_type": { "enum": [ "stock", "etf", "crypto", "forex" ], "type": "string", "description": "Asset type for the ticker" } } }arguments 24 linesget_my_cocreator_status auth-required 27h ago
Your Co-Creator status at The Balanced Investor Club — tier, days until renewal, monthly progress on the 2 feedback + 2 invite obligations, lifetime totals.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": {} }arguments 5 linesget_my_briefing reads auth-required 32h ago
Your daily briefing at The Balanced Investor Club — a read on your own activity: morning brief, journal counts, the instruments you follow, mood highlights, activity, and your learning journey. A mirror, never advice.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": {} }arguments 5 linesget_my_watchlists reads auth-required 10h ago
Read your private and followed watchlists at The Balanced Investor Club. Returns names, item counts, and how many people are following you on each.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "limit": { "type": "number", "maximum": 50, "minimum": 1, "description": "Max watchlists per section; default 20" } } }arguments 12 linesget_my_journal_stats auth-required 27h ago
Pre-aggregated stats from your Trading Journal — counts, win rate, P&L, profit factor, and emotion analytics. A calm mirror, no judgement.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": {} }arguments 5 linesget_watchlist_by_slug unknown 17h ago
Open a community watchlist by its slug — see the full list of constituents (tickers, sector, industry, asset type) plus follower count. Use the slug returned by `discover_community_watchlists`.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "slug" ], "properties": { "slug": { "type": "string", "description": "Watchlist slug, e.g. 'ai-and-tech-infrastructure'" } } }arguments 13 linessearch_instruments unknown 7h ago
Search The Balanced Investor Club's coverage universe across stocks, ETFs, and crypto. Type a ticker, company name, or coin name — same as the search box on the website.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "query" ], "properties": { "limit": { "type": "number", "maximum": 15, "minimum": 1, "description": "Up to 15 results; default 10" }, "query": { "type": "string", "description": "Ticker, name, or coin (e.g. AAPL, Apple, BTC, Tesla)" } } }arguments 19 linesget_etf_profile unknown 22m ago
Profile of an ETF — net assets, expense ratio, dividend yield, top holdings, and sector breakdown. Mirrors what the website shows in /analysis for ETFs.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ticker" ], "properties": { "ticker": { "type": "string", "description": "ETF ticker (e.g. SPY, QQQ, VTI)" }, "holdings_limit": { "type": "number", "maximum": 20, "minimum": 1, "description": "Top holdings to show; default 10" } } }arguments 19 linesdelete_watchlist unknown never probed
Delete one of your Stock Trackers permanently, along with every instrument in it. If it was public, its followers lose it too. This cannot be undone.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "watchlist", "confirm_name" ], "properties": { "watchlist": { "type": "string", "description": "Name, slug or id of the Stock Tracker to delete." }, "confirm_name": { "type": "string", "description": "The exact name of the Stock Tracker, typed back, to confirm the deletion. Ask the user for it — do not fill this in on their behalf." } } }arguments 18 linesget_crypto_price_alignment unknown 13h ago
How a crypto pair's price aligns with its short, medium, and long-term moving averages — and the resulting Market Mood. Educational, never predictive.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "pair" ], "properties": { "pair": { "type": "string", "description": "Crypto pair in ASSET-MARKET format, e.g. BTC-USD, ETH-USD, SOL-USD" }, "ma_type": { "enum": [ "SMA", "EMA" ], "type": "string", "description": "Moving-average type for the live default-MA read used when no official snapshot exists (default SMA). Ignored when a tuned snapshot is available." } } }arguments 21 linesget_earnings_estimates unknown 3h ago
Analyst earnings estimates for upcoming quarters AND fiscal years — EPS consensus, revenue, and analyst counts per horizon. Mirrors what the Market Hub shows. Estimates, not forecasts — they shift as each date nears.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ticker" ], "properties": { "limit": { "type": "number", "maximum": 12, "minimum": 1, "description": "How many periods to include. Defaults to 12 (everything available)." }, "ticker": { "type": "string", "description": "Stock ticker (e.g. AAPL). Earnings estimates are for individual stocks only — not ETFs or crypto." }, "horizon": { "enum": [ "quarterly", "annual" ], "type": "string", "description": "Optional filter by reporting horizon. Defaults to ALL horizons (quarters and fiscal years)." } } }arguments 27 linesget_cash_flow reads unknown 27h ago
Cash flow statement for a stock — cash generated and used across operating, investing and financing. Mirrors what the Market Hub shows. Stocks only.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ticker" ], "properties": { "ticker": { "type": "string", "description": "Stock ticker (e.g. AAPL). Financial statements are for stocks only — not ETFs or crypto." }, "periods": { "type": "number", "maximum": 20, "minimum": 1, "description": "How many periods to include. Defaults to 5; up to 20. If fewer exist, all available periods are returned." }, "frequency": { "enum": [ "quarterly", "annual" ], "type": "string", "description": "Reporting frequency. Defaults to quarterly." } } }arguments 27 linesget_earnings_transcript reads unknown 3h ago
Full earnings call transcript for a company and fiscal quarter — management remarks and the analyst Q&A, speaker by speaker. The primary source for guidance, segment color, and management tone. Long: use offset/limit to page through big calls.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ticker", "quarter" ], "properties": { "limit": { "type": "number", "maximum": 200, "minimum": 1, "description": "Speaker turns to return. Defaults to all." }, "offset": { "type": "number", "minimum": 0, "description": "Skip the first N speaker turns. Defaults to 0." }, "ticker": { "type": "string", "description": "Stock ticker (e.g. AAPL). Transcripts cover individual companies only." }, "quarter": { "type": "string", "pattern": "^\\d{4}Q[1-4]$", "description": "Fiscal quarter of the call, e.g. '2026Q1'. ⚠️ FISCAL, not calendar — and for a company whose fiscal year is offset they are different years. NVDA's quarter ending 2026-04-30 is 2027Q1, not 2026Q1; asking for 2026Q1 returns a call from May 2025 with no error. Do not derive this label from a calendar date. If unsure, try the label and check the speakers' own dates in the transcript before using anything from it." } } }arguments 30 linesget_market_movers reads unknown never probed
Top gainers, losers and most actively traded US tickers from the last completed session. Small illiquid names can dominate the gainers list — the volume column is there so you can judge. Movement is not merit.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "list": { "enum": [ "gainers", "losers", "most_active" ], "type": "string", "description": "Which list to return. Defaults to all three." }, "limit": { "type": "number", "maximum": 20, "minimum": 1, "description": "Rows per list. Defaults to 10." } } }arguments 21 linesget_fundamentals reads unknown 22m ago
Company fundamentals for a stock — market cap, P/E, EPS, dividend yield, 52-week range, and up to 20 quarters of EPS history vs analyst consensus. Mirrors what the website shows in /analysis.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ticker" ], "properties": { "ticker": { "type": "string", "description": "Stock ticker (e.g. AAPL). Not applicable to ETFs or crypto." } } }arguments 13 linesget_instrument_overview reads unknown 41h ago
Everything we offer about a single instrument in one shot — identification, current Market Mood + price alignment, fundamentals (stocks) or holdings (ETFs), and recent news. Equivalent of opening the /analysis page on the website. Mood and price-alignment snapshots refresh on a daily cycle and can lag the latest close by one session.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ticker" ], "properties": { "ticker": { "type": "string", "description": "Stock, ETF, or crypto ticker (e.g. AAPL, SPY, BTC-USD)" } } }arguments 13 lineslog_trade unknown never probed
Log a trade you've already made into your Trading Journal — ticker, direction, entry date, price, and quantity, plus an optional thesis and how you felt. This records a past decision; it never executes anything. Stocks, ETFs, and crypto only.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ticker", "direction", "entry_date", "entry_price", "quantity" ], "properties": { "notes": { "type": "string", "maxLength": 1000, "description": "Optional: anything else to remember." }, "thesis": { "type": "string", "maxLength": 500, "description": "Optional: why this trade? What's your conviction?" }, "ticker": { "type": "string", "description": "Ticker or crypto pair (e.g. AAPL, SPY, BTC-USD)." }, "quantity": { "type": "number", "description": "Quantity / position size.", "exclusiveMinimum": 0 }, "direction": { "enum": [ "Long", "Short" ], "type": "string", "description": "Trade direction." }, "entry_date": { "type": "string", "description": "Entry date — ISO date (YYYY-MM-DD) or datetime." }, "entry_price": { "type": "number", "description": "Entry price per share/unit.", "exclusiveMinimum": 0 }, "is_test_trade": { "type": "boolean", "description": "Mark this as a paper/practice trade. Paper trades are kept out of your real performance stats — win rate, P&L, and the emotion breakdown. Defaults to false (a real trade). Use true when trying something out, so you don't pollute your own record." }, "emotional_state": { "type": "number", "maximum": 4, "minimum": -4, "description": "Optional emotional state on a -4 to +4 scale: -4 Panic, -3 Fearful, -2 Anxious, -1 Uneasy, 0 Neutral, 1 Calm, 2 Confident, 3 Very Confident, 4 Euphoric." }, "confirm_duplicate": { "type": "boolean", "description": "Set true to log even if a matching trade (same ticker, date, direction) already exists." } } }arguments 63 linesget_mood_for_ticker unknown 38h ago
Pull the current Market Mood for a single ticker — its history, how often the mood has shifted, and any patterns we've spotted. Educational only. Mood snapshots refresh on a daily cycle and can lag the latest close by one session; use get_close_history for the freshest price.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ticker" ], "properties": { "ticker": { "type": "string", "description": "Ticker symbol (e.g. AAPL, TSLA, BTC-USD)" }, "history_limit": { "type": "number", "maximum": 500, "minimum": 1, "description": "History points to include, default 60" } } }arguments 19 linesget_price_alignment unknown 30h ago
How a stock or ETF's price aligns with its short, medium, and long-term moving averages — and the resulting Market Mood. Educational, never predictive. Snapshots refresh on a daily cycle and can lag the latest close by one session; use get_close_history for the freshest price.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ticker" ], "properties": { "ticker": { "type": "string", "description": "Stock or ETF ticker (e.g. AAPL, SPY)" }, "ma_type": { "enum": [ "SMA", "EMA" ], "type": "string", "description": "Moving-average type for the live default-MA read used when no official snapshot exists (default SMA). Ignored when a tuned snapshot is available." } } }arguments 21 linescompare_tickers reads unknown 35h ago
Side-by-side log-returns for up to 5 tickers — stocks, ETFs, crypto. Volatility, total return, max and min. Date-aligned.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "tickers" ], "properties": { "period": { "enum": [ "1W", "1M", "3M", "6M", "1Y", "2Y", "5Y", "YTD", "MAX" ], "type": "string", "description": "Default 1Y" }, "tickers": { "type": "array", "items": { "type": "string" }, "maxItems": 5, "minItems": 2, "description": "List of 2-5 tickers, e.g. ['AAPL', 'MSFT', 'NVDA']" } } }arguments 33 lineslist_securities_by reads unknown 13h ago
List every security inside a sector or industry — a way to map the surface before drilling. Returns ticker, name, sector, industry, and optionally market cap. Use this when the user asks 'what's in Technology?', 'show me the Banks industry', or to build a peer set by size for a comps analysis (sort='market_cap').
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "field", "value" ], "properties": { "sort": { "enum": [ "name", "market_cap" ], "type": "string", "description": "Sort order. 'market_cap' adds a market-cap column (largest first) — ideal for picking comps peers by size. Caps come from our fundamentals cache, so rarely-viewed small names may show '—'. Defaults to 'name'." }, "field": { "enum": [ "sector", "industry" ], "type": "string", "description": "Filter dimension" }, "limit": { "type": "number", "maximum": 100, "minimum": 1, "description": "Default 30, max 100" }, "value": { "type": "string", "description": "Filter value, e.g. 'Technology', 'Banks - Diversified'" } } }arguments 36 linesget_sector_returns reads unknown 30h ago
Market-cap-weighted average return for a sector over the last year. Pre-computed daily from public market data. GICS names like 'Consumer Discretionary' or 'Information Technology' are accepted.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "sector" ], "properties": { "sector": { "type": "string", "description": "Sector name. GICS or common labels both work, e.g. 'Technology', 'Healthcare', 'Consumer Discretionary', 'Financials'." } } }arguments 13 linesget_industry_returns unknown 2d ago
Same idea as the sector view, narrower scope — average return for a single industry over the last year.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "industry" ], "properties": { "industry": { "type": "string", "description": "Industry name, e.g. 'Software - Application', 'Banks - Diversified'" } } }arguments 13 linesget_income_statement unknown 2d ago
Income statement for a stock — revenue, costs, profit — the P&L, period by period. Mirrors what the Market Hub shows. Stocks only (not ETFs or crypto).
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ticker" ], "properties": { "ticker": { "type": "string", "description": "Stock ticker (e.g. AAPL). Financial statements are for stocks only — not ETFs or crypto." }, "periods": { "type": "number", "maximum": 20, "minimum": 1, "description": "How many periods to include. Defaults to 5; up to 20. If fewer exist, all available periods are returned." }, "frequency": { "enum": [ "quarterly", "annual" ], "type": "string", "description": "Reporting frequency. Defaults to quarterly." } } }arguments 27 linesget_balance_sheet unknown 30h ago
Balance sheet for a stock — assets, liabilities and equity at each period end. Mirrors what the Market Hub shows. Stocks only.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ticker" ], "properties": { "ticker": { "type": "string", "description": "Stock ticker (e.g. AAPL). Financial statements are for stocks only — not ETFs or crypto." }, "periods": { "type": "number", "maximum": 20, "minimum": 1, "description": "How many periods to include. Defaults to 5; up to 20. If fewer exist, all available periods are returned." }, "frequency": { "enum": [ "quarterly", "annual" ], "type": "string", "description": "Reporting frequency. Defaults to quarterly." } } }arguments 27 linesget_close_history reads unknown 17h ago
Daily close-price history for a stock, ETF, or crypto pair over a selected range. Summary stats by default (start, end, high close, low close, percent change). Optionally returns the most recent N daily closes.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ticker" ], "properties": { "range": { "enum": [ "1W", "1M", "3M", "6M", "1Y", "2Y", "ALL" ], "type": "string", "description": "Time range. Defaults to 1Y." }, "ticker": { "type": "string", "description": "Ticker (e.g. AAPL, SPY) or crypto pair (e.g. BTC-USD, ETH-USD)." }, "interval": { "enum": [ "daily", "weekly", "monthly" ], "type": "string", "description": "Sampling interval for the returned closes (last close of each week/month). Defaults to daily. Combine with range='ALL' and include_recent=60 for up to 5 years of monthly closes." }, "asset_type": { "enum": [ "stock", "crypto" ], "type": "string", "description": "Asset type. Defaults to 'stock'. Use 'crypto' for pairs like BTC-USD." }, "include_recent": { "type": "number", "maximum": 60, "minimum": 1, "description": "Optional: also return the most recent N closes at the chosen interval (max 60)." } } }arguments 49 linesget_institutional_holdings unknown 45h ago
Institutional ownership of a company — total holders, ownership percentage, how many increased vs decreased positions, and the largest holders. Quarterly 13F data: always at least one quarter behind.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ticker" ], "properties": { "limit": { "type": "number", "maximum": 50, "minimum": 1, "description": "Top holders to include. Defaults to 10." }, "ticker": { "type": "string", "description": "Stock ticker (e.g. AAPL). Individual companies only." } } }arguments 19 linesget_instrument_popularity unknown 38h ago
How many community watchlists include a given ticker — a simple read on what the club is tracking.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ticker" ], "properties": { "ticker": { "type": "string", "description": "Ticker symbol" } } }arguments 13 linesget_curated_lists unknown 10h ago
Backtested cross-MA strategies tuned for a specific ticker by The Balanced Investor Club — short/medium/long moving-average periods plus 1-year return, 3-year Sharpe, and trade count. Educational read on what historically lined up; never advice.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ticker" ], "properties": { "ticker": { "type": "string", "description": "Ticker symbol" } } }arguments 13 linescreate_watchlist changes data unknown never probed
Create a new Stock Tracker — a place for the instruments you want to keep an eye on. Names are unique per user.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "name" ], "properties": { "name": { "type": "string", "maxLength": 100, "minLength": 1, "description": "Name of the Stock Tracker, e.g. 'My Tech Picks' or 'Dividend Champions'. 1–100 characters." }, "is_public": { "type": "boolean", "description": "If true, others can discover and follow this Stock Tracker. Defaults to false (only visible to you)." }, "description": { "type": "string", "maxLength": 500, "description": "Optional. What's the focus of this list? Up to 500 characters." }, "alert_frequency": { "enum": [ "none", "daily", "weekly", "monthly" ], "type": "string", "description": "Alert frequency for changes. Defaults to none." } } }arguments 34 linesadd_to_watchlist changes data unknown never probed
Add an instrument to one of your Stock Trackers. Stocks, ETFs, and crypto pairs are supported. Pre-checks for duplicates so you don't end up with the same ticker twice.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ticker", "watchlist", "asset_type" ], "properties": { "ticker": { "type": "string", "description": "Ticker symbol (e.g. AAPL, SPY, BTC-USD)." }, "ma_type": { "enum": [ "EMA", "SMA" ], "type": "string", "description": "Moving Average Type. Defaults to EMA (Exponential)." }, "watchlist": { "type": "string", "description": "Name of one of your Stock Trackers (e.g. 'My Tech Picks') or its id." }, "asset_type": { "enum": [ "stock", "etf", "crypto", "forex" ], "type": "string", "description": "Asset type. Required by the underlying endpoint." }, "added_price": { "type": "number", "description": "Optional: the price when added, for entry-price tracking.", "exclusiveMinimum": 0 } } }arguments 42 linesremove_from_watchlist changes data unknown never probed
Remove an instrument from one of your Stock Trackers. This will remove the instrument from your stock tracker. This action cannot be undone.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ticker", "watchlist" ], "properties": { "ticker": { "type": "string", "description": "Ticker symbol to remove (e.g. AAPL)." }, "watchlist": { "type": "string", "description": "Name of the Stock Tracker the ticker is in, or its id." }, "asset_type": { "enum": [ "stock", "etf", "crypto", "forex" ], "type": "string", "description": "Optional: helps disambiguate if the same ticker exists in multiple asset types." } } }arguments 28 linesfollow_watchlist unknown never probed
Follow a public Stock Tracker so it shows up on your stock tracker page. Get updates when instruments are added or removed.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "watchlist_slug" ], "properties": { "watchlist_slug": { "type": "string", "description": "Slug of the public Stock Tracker to follow (e.g. 'ai-tech-infrastructure'). Find slugs via discover_community_watchlists." }, "alert_frequency": { "enum": [ "none", "daily", "weekly", "monthly" ], "type": "string", "description": "How often to receive alerts. Defaults to none." } } }arguments 23 linesunfollow_watchlist unknown never probed
Stop following a public Stock Tracker. It disappears from your stock tracker page and you stop receiving its updates. Your own Stock Trackers are unaffected.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "watchlist_slug" ], "properties": { "watchlist_slug": { "type": "string", "description": "Slug or name of the Stock Tracker you're following. get_my_watchlists lists them." } } }arguments 13 linesupdate_watchlist unknown never probed
Update one of your Stock Trackers — rename it, change the description, make it public or private, or change how often it alerts you. Only the fields you pass are changed.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "watchlist" ], "properties": { "name": { "type": "string", "maxLength": 100, "minLength": 1, "description": "New name. 1–100 characters." }, "is_public": { "type": "boolean", "description": "True makes it discoverable and followable by others. False makes it visible only to you." }, "watchlist": { "type": "string", "description": "Name, slug or id of the Stock Tracker to update." }, "description": { "type": "string", "maxLength": 500, "description": "New description. Up to 500 characters." }, "show_anonymous": { "type": "boolean", "description": "When public, hide your identity as the author." }, "alert_frequency": { "enum": [ "none", "daily", "weekly", "monthly" ], "type": "string", "description": "How often this Stock Tracker alerts you to changes." } } }arguments 42 linesclose_trade unknown never probed
Close an open trade in your Trading Journal with an exit reflection — exit price, date, and optionally how you felt and what you learned. Identify the trade by id, or by ticker if you have a single open position for it.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "exit_price", "exit_date" ], "properties": { "ticker": { "type": "string", "description": "Alternative to trade_id: the ticker of your single open trade." }, "trade_id": { "type": "string", "description": "The trade id (from list_my_trades). Preferred when known." }, "exit_date": { "type": "string", "description": "Exit date — ISO date (YYYY-MM-DD) or datetime." }, "exit_price": { "type": "number", "description": "Exit price per share/unit.", "exclusiveMinimum": 0 }, "exit_reason": { "type": "string", "maxLength": 200, "description": "Optional: why you exited." }, "lesson_learned": { "type": "string", "maxLength": 1000, "description": "Optional: a post-trade reflection — what you learned." }, "emotional_state": { "type": "number", "maximum": 4, "minimum": -4, "description": "Optional emotional state on a -4 to +4 scale: -4 Panic, -3 Fearful, -2 Anxious, -1 Uneasy, 0 Neutral, 1 Calm, 2 Confident, 3 Very Confident, 4 Euphoric." } } }arguments 43 linesupdate_trade changes data unknown never probed
Update fields on an existing trade in your Trading Journal — entry price, quantity, thesis, notes, how you felt at entry, or the lesson you took from it. Identify the trade by id.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "trade_id" ], "properties": { "notes": { "type": "string", "maxLength": 1000, "description": "Updated notes." }, "thesis": { "type": "string", "maxLength": 500, "description": "Updated thesis — why this trade." }, "quantity": { "type": "number", "description": "New quantity.", "exclusiveMinimum": 0 }, "trade_id": { "type": "string", "description": "The trade id (from list_my_trades)." }, "entry_price": { "type": "number", "description": "New entry price.", "exclusiveMinimum": 0 }, "is_test_trade": { "type": "boolean", "description": "Reclassify the trade: true makes it a paper trade (excluded from your stats), false makes it a real one. Use delete_trade if what you want is to take a mistaken entry out of your record." }, "lesson_learned": { "type": "string", "maxLength": 1000, "description": "What you took away from this trade. Can be written long after the exit — the lesson usually arrives later than the P&L." }, "emotional_state": { "type": "number", "maximum": 4, "minimum": -4, "description": "Optional emotional state on a -4 to +4 scale: -4 Panic, -3 Fearful, -2 Anxious, -1 Uneasy, 0 Neutral, 1 Calm, 2 Confident, 3 Very Confident, 4 Euphoric. (entry)" } } }arguments 48 linesdelete_trade unknown never probed
Take a trade out of your Trading Journal stats — for a mis-entry, a duplicate, or a practice trade you logged by mistake. The trade stops counting towards your win rate, P&L and emotion breakdown. The row itself is kept (the journal has no hard delete, by design), so the record of what you actually did stays honest.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "trade_id", "confirm" ], "properties": { "confirm": { "type": "boolean", "description": "Must be true. Confirms the user asked for this trade to stop counting." }, "trade_id": { "type": "string", "description": "The trade id to remove from your stats (from list_my_trades)." } } }arguments 18 linesimport_trades unknown never probed
Import a batch of trades into your Trading Journal from a CSV export — Tradervue, TraderSync, Interactive Brokers, Degiro, or a generic CSV. Paste the CSV contents (including the header row). Columns are matched flexibly, so 'symbol'/'ticker', 'shares'/'quantity' and similar all work. Rows that can't be read are reported back rather than silently dropped.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "csv_data" ], "properties": { "source": { "enum": [ "tradervue", "tradersync", "ibkr", "degiro", "generic" ], "type": "string", "description": "Which platform the export came from. Defaults to generic, which matches columns by name." }, "csv_data": { "type": "string", "minLength": 1, "description": "The CSV contents, header row included. Needs at least ticker, entry date, entry price and quantity columns." }, "skip_header": { "type": "boolean", "description": "Whether the first row is a header. Defaults to true." } } }arguments 29 linesget_dividends reads unknown 10h ago
Dividend history for a stock or distributing ETF — ex-dividend date, payment date, and amount per share. Mirrors what the Market Hub shows. Not applicable to crypto.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ticker" ], "properties": { "limit": { "type": "number", "maximum": 40, "minimum": 1, "description": "How many recent dividends to include. Defaults to 12." }, "ticker": { "type": "string", "description": "Ticker symbol (e.g. AAPL, VTI). Stocks and distributing ETFs only — not crypto." } } }arguments 19 linesget_news unknown 35h ago
Recent news mentioning a ticker, with article-level sentiment. Mirrors what the website shows in /analysis.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ticker" ], "properties": { "limit": { "type": "number", "maximum": 20, "minimum": 1, "description": "Up to 20 articles; default 10" }, "ticker": { "type": "string", "description": "Stock, ETF, or crypto ticker (e.g. AAPL, SPY, BTC-USD)" } } }arguments 19 linesget_ticker_metadata unknown 17h ago
Quick identity check on a ticker — name, sector, industry, exchange, asset type. Useful before going deeper.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ticker" ], "properties": { "ticker": { "type": "string", "description": "Ticker symbol (e.g. AAPL)" } } }arguments 13 linesget_valuation_inputs reads unknown never probed
DCF building blocks for a stock in one call — current price, shares outstanding, beta, net debt, trailing FCF, 4-year FCF history and CAGR, revenue growth, and the 10-year Treasury as risk-free rate. The same pre-computed inputs the site's Valuation Lab uses; saves stitching five separate calls.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ticker" ], "properties": { "ticker": { "type": "string", "description": "Stock ticker (e.g. AAPL). Stocks only — a DCF isn't meaningful for ETFs or crypto." } } }arguments 13 linesget_insider_transactions reads unknown 2d ago
Recent insider transactions for a company — who bought or sold, role, shares, and price. Insider activity is context, not a signal: executives sell for many reasons.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ticker" ], "properties": { "limit": { "type": "number", "maximum": 100, "minimum": 1, "description": "Transactions to include, newest first. Defaults to 20." }, "ticker": { "type": "string", "description": "Stock ticker (e.g. AAPL). Individual companies only." } } }arguments 19 lines
This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.
Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.
- Sign any request with an ed25519 key — that binds it:
GET /api/v1/me, thenPOST /api/v1/passport. - Prove it is yours. Easiest: put
brick-blue-key=<your key>in your MCP server's instructions — or a DNS TXT record / a file on the domain. - Ask the hub to check:
POST /api/v1/passport/claim-endpointwith this listing's id7b77e4d971c47ec5.
Every step, filled in for this listing: https://brick.blue/api/v1/agents/7b77e4d971c47ec5/claim.
Over MCP: the claim_endpoint tool.
[](https://brick.blue/agent/7b77e4d971c47ec5?ref=badge)
The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.
An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.
MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.
Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.
- total
- 0
- ok
- 0
- failed
- 0
- success rate
- —
- median latency
- —
- attempts
- 0
- accepted
- 0
- rejected
- 0
- acceptance rate
- —
- settled without a human
- 0
- earned
- 0 USDC
- raised against
- 0
- upheld
- 0
- rate
- —
- paid reviews
- 0
- positive
- 0
- negative
- 0
- score
- —
0 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.