{"serverId":"mcp-registry/com.koalcheck/koalcheck","tools":[{"name":"analyst_views","fixed":{"name":"analyst_views","description":"★ CORE. Fetch the recent views of specific X analysts/KOLs by handle.\n\nThe user names the analysts they follow (e.g. [\"DeItaone\", \"unusual_whales\"]).\nOptionally focus on one `ticker`. Returns, per analyst: overall stance, which\ntickers they're talking about, and their recent points.\n\nPresent this to the user as a SUMMARY in your own words (\"最近 @X 看好…\") —\ndo NOT reproduce the original tweets verbatim. Attribute each view to its handle.","inputSchema":{"type":"object","required":["handles"],"properties":{"ticker":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"handles":{"type":"array","items":{"type":"string"}},"limit_per_analyst":{"type":"integer","default":25}},"additionalProperties":false},"annotations":{"readOnlyHint":true},"title":"Analyst Views"},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":213,"tokensAfter":213},{"name":"search_x","fixed":{"name":"search_x","description":"Search X with full operators (e.g. '$AAPL lang:en -is:retweet', 'from:handle').\n\nGeneral-purpose X search with sentiment scoring; use `analyst_views` when the\nuser cares about specific accounts. Summarize results; don't echo tweets verbatim.","inputSchema":{"type":"object","required":["query"],"properties":{"limit":{"type":"integer","default":20},"query":{"type":"string"},"latest":{"type":"boolean","default":true}},"additionalProperties":false},"annotations":{"readOnlyHint":true},"title":"Search X"},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":135,"tokensAfter":135},{"name":"tweet_store_stats","fixed":{"name":"tweet_store_stats","description":"Stats on the persisted tweet database (the durable, queryable record).\n\nEvery analyst tweet fetched is stored with timestamp, tickers, sentiment, and\nmedia (image/video URLs). This is the backing data for provenance and for the\nanalyst track-record features.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"annotations":{"readOnlyHint":true},"title":"Tweet Store Stats"},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":107,"tokensAfter":107}],"toolsChanged":3,"tokensSaved":0,"todo":[{"tool":"analyst_debate","params":["ticker","handles","limit_per_analyst"]},{"tool":"analyst_profile","params":["handle"]},{"tool":"analyst_recent_calls","params":["limit","handle"]},{"tool":"analyst_track_record","params":["handle","refresh"]},{"tool":"analyst_views","params":["ticker","handles","limit_per_analyst"]},{"tool":"fundamentals","params":["as_of","ticker"]},{"tool":"insider_activity","params":["ticker","since_days"]},{"tool":"leaderboard","params":["view","limit","horizon"]},{"tool":"material_events","params":["ticker","since_days"]},{"tool":"quote","params":["ticker"]},{"tool":"reddit_attention","params":["ticker"]},{"tool":"score_ticker","params":["as_of","ticker","audience"]},{"tool":"screen_stocks","params":["mode","limit","source","audience","universe","min_coverage"]},{"tool":"search_x","params":["limit","query","latest"]},{"tool":"short_volume","params":["days","ticker"]},{"tool":"stocktwits_symbol","params":["limit","ticker"]},{"tool":"ticker_call_history","params":["ticker","horizon_days"]},{"tool":"ticker_social_sentiment","params":["limit","ticker","sources"]},{"tool":"trending_tickers","params":["limit"]},{"tool":"wsb_trending","params":["limit"]}],"note":"Deterministic fixes. Changes marked verify need a human look before shipping (renames, inferred annotations, inferred types, removed text). Parameter descriptions in `todo` need to be written by someone who knows the API."}