{"slug": "i-let-claude-analyze-500-stocks-here-s-what-it-picked", "title": "I Let Claude Analyze 500 Stocks—Here's What It Picked", "summary": "A developer used Anthropic's Claude with the EODHD MCP stock screener to analyze 500 US-listed stocks, filtering by market cap above $10 billion and average 200-day volume above 1 million shares, then sorting by 5-day return. The approach avoids hallucinated tickers by connecting Claude directly to live market data via the MCP protocol, enabling reproducible stock screening without scraping or stale data.", "body_md": "\"AI picked these stocks\" is one of the most repeated claims on FinTwit right now.\n\nAlmost none of it is reproducible.\n\nScreenshot of a ChatGPT chat. No data source. No filters. No way to check if the tickers even exist. If you're:\n\nthis one's different. Every number below came from a live screen. There's code for developers and a copy-paste prompt for everyone else.\n\nMost \"AI stock picking\" content fails for one boring reason: the model never touches real data.\n\nYou ask an LLM to \"analyze the market,\" and it answers from training data that's months or years stale. It might invent a ticker. It might quote a P/E ratio from memory that hasn't been true since 2023.\n\nDevelopers discover this too late — usually after publishing a \"top 10 AI stock picks\" post and getting called out in the comments for a ticker that delisted last year.\n\nThe reasoning isn't the problem.\n\nThe data pipeline is.\n\nClaude can reason extremely well over structured data — rank by valuation, weigh momentum against volatility, spot a sector cluster.\n\nWhat it can't do on its own is see the market.\n\nGive it that, and the \"AI stock picker\" stops being a parlor trick and starts being an actual screening assistant.\n\nEODHD exposes a stock screener as an MCP tool. Instead of scraping pages or hardcoding a REST client, Claude connects directly to it and calls it like any other tool.\n\nThrough the MCP connection, Claude gets:\n\nNo scraping. No stale CSV exports. No hallucinated tickers — every result is a real, currently-listed instrument.\n\nIf you're already using EODHD for other projects, this is the same dataset — just exposed as a tool Claude can call directly instead of a REST endpoint you wrap yourself.\n\n👉 [Explore the EODHD MCP integration](https://eodhd.com/?via=kmg&ref1=Meneses&utm_source=medium&utm_medium=post&utm_campaign=ai-stock-screener-claude-mcp&utm_content=Meneses)\n\nYou don't need an API key or a Python environment to test this. If you have Claude with the EODHD connector enabled, paste this prompt directly into the chat:\n\n```\nConnect to the EODHD MCP stock screener and run this exact query:\n\n- US-listed stocks only\n- Market capitalization above $10 billion\n- Average 200-day volume above 1 million shares\n- Sort by 5-day return, descending\n- Return the top 10 results\n\nFor each result, show: ticker, company name, sector, 5-day return %,\nand market cap. Then add one sentence identifying any sector pattern\nacross the list — don't force a narrative if there isn't one.\n```\n\nThat's it. Claude calls the tool, gets back real rows, and reasons over them the same way it would for the code version below.\n\nA few ways to push it further once you've run the base prompt:\n\n```\nNow filter that same list down to only the Technology sector\nand explain what's driving the move in plain English.\nRe-run the screen but swap 5-day return for market cap above $50B\nand dividend yield above 2%. I want value, not momentum.\n```\n\nThe MCP config is what makes this work for anyone building it into an app instead of chatting it manually.\n\n**MCP server config** (Claude Desktop or API):\n\n```\n{\n  \"mcpServers\": {\n    \"eodhd\": {\n      \"url\": \"https://mcpv2.eodhd.dev/v2/mcp\",\n      \"type\": \"url\"\n    }\n  }\n}\n```\n\n**Calling it via the API**:\n\n``` python\nimport anthropic\n\nclient = anthropic.Anthropic()\n\nresponse = client.beta.messages.create(\n    model=\"claude-sonnet-4-6\",\n    max_tokens=2000,\n    mcp_servers=[\n        {\n            \"type\": \"url\",\n            \"url\": \"https://mcpv2.eodhd.dev/v2/mcp\",\n            \"name\": \"eodhd-mcp\"\n        }\n    ],\n    messages=[{\n        \"role\": \"user\",\n        \"content\": (\n            \"Screen US stocks with market cap above $10B and average \"\n            \"200-day volume above 1M shares. Sort by 5-day return descending. \"\n            \"Return the top 10 with sector and a one-line reason for momentum.\"\n        )\n    }],\n    extra_headers={\"anthropic-beta\": \"mcp-client-2025-04-04\"}\n)\n\nprint(response.content)\n```\n\nBehind the scenes, Claude translates the plain-language request into a structured call to the screener tool — filtering by `market_capitalization`\n\n, `avgvol_200d`\n\n, and sorting by `refund_5d_p`\n\n— and gets back real rows, not a guess.\n\nFrom here you can build:\n\nFilters: US-listed, market cap above $10B, average 200-day volume above 1M shares, sorted by 5-day return.\n\nThis wasn't curated. It's the raw output, ranked by Claude after the screener returned the candidates.\n\n| Ticker | Company | Sector | 5d Return | Mkt Cap |\n|---|---|---|---|---|\n| WDC | Western Digital | Technology | +40.99% | $257B |\n| BE | Bloom Energy | Industrials | +32.16% | $93.6B |\n| NBIS | Nebius Group | Communication Services | +29.00% | $72.8B |\n| CIFR | Cipher Mining | Technology | +28.94% | $11.9B |\n| MRNA | Moderna | Healthcare | +28.85% | $25.4B |\n| ARM | Arm Holdings | Technology | +28.41% | $469B |\n| ENTG | Entegris | Technology | +23.36% | $27.2B |\n| STX | Seagate Technology | Technology | +23.29% | $242B |\n| CRWV | CoreWeave | Technology | +23.20% | $64.4B |\n| ALGM | Allegro Microsystems | Technology | +23.02% | $11B |\n\nClaude's read on the cluster: seven of the ten sit in storage, semiconductors, or AI infrastructure — Western Digital and Seagate riding a hard-drive demand spike, Arm and Entegris tied to the chip cycle, CoreWeave and Nebius both pure AI-compute plays.\n\nThat's not Claude being clever. That's the screen surfacing a real sector rotation, and Claude naming the pattern instead of leaving you to spot it in a spreadsheet.\n\nModerna is the outlier — a biotech name riding its own news cycle, disconnected from the hardware story.\n\nRunning one screen is easy. Getting useful output every time takes a bit more discipline.\n\n**1. Always specify liquidity, not just size.**\n\nMarket cap alone lets illiquid OTC tickers sneak in — names that move 200% on 200 shares traded. Add a volume filter (`avgvol_200d > 1,000,000`\n\n) or you'll get noise dressed up as momentum.\n\n**2. Separate the screen from the narrative.**\n\nAsk Claude to return raw data first. Then, in a second message, ask it to interpret the pattern. Mixing both in one prompt makes it more likely Claude reaches for a story before checking if one's actually there.\n\n**3. Re-run before you publish.**\n\nMarket data is a snapshot. A screen run on Monday is stale by Friday. If you're writing this up for a newsletter or post, re-run it the morning you publish.\n\n**4. Pin your filters in the prompt, not in your head.**\n\n\"Large, liquid, momentum stocks\" means nothing to a screener. \"Market cap > $10B, avgvol_200d > 1M, sorted by refund_5d_p descending\" means everything. Specificity is the whole game.\n\n**5. Use sector clustering as a sanity check, not a conclusion.**\n\nIf 7 of 10 picks share a sector, that's a real signal worth investigating — not proof you've found alpha. Treat it as a research starting point.\n\n**6. Cross-check anything you'd act on.**\n\nA screener tells you what moved. It doesn't tell you why a specific company moved, or whether the move is sustainable. Pull the news, check the earnings calendar, read the filing — before any of this touches real money.\n\n❓ **Can I run this without writing any code?**\n\n✅ Yes. If you have the EODHD MCP connector enabled in Claude, just paste the prompt in the \"Try It Yourself\" section above. Claude calls the screener tool directly — no API key setup or Python environment needed.\n\n❓ **Is the EODHD MCP server free to use?**\n\n✅ It depends on your EODHD API plan — the screener tool consumes API calls against your existing subscription tier. Check EODHD's pricing page for current limits on screener calls per day.\n\n❓ **Does Claude ever hallucinate tickers when using MCP?**\n\n✅ No, not when the data comes through the tool call. Every ticker in the results above came directly from the screener response — Claude is reasoning over real rows, not generating them from memory.\n\n❓ **Can I use this for sectors other than tech?**\n\n✅ Yes. Swap the filters in the prompt — set `sector = \"Healthcare\"`\n\nor `sector = \"Energy\"`\n\nand re-run. The screener supports filtering by sector, industry, country, and several other fields.\n\n❓ **Is this financial advice?**\n\n✅ No. This is a demonstration of a reproducible screening workflow. The output is a filtered list based on price momentum and market cap, not a recommendation to buy or sell anything.\n\n❓ **What's the difference between this and just asking ChatGPT to pick stocks?**\n\n✅ Without a connected data tool, an LLM answers from training data that can be stale by months. With MCP, Claude is calling a live screener and reasoning over real, current numbers — the difference between guessing and looking.\n\nIf you're a software or API company looking to explain your product through high-quality educational content (not marketing fluff), feel free to connect with me on LinkedIn.\n\n👉 [Get started with EODHD's API and MCP server](https://eodhd.com/?via=kmg&ref1=Meneses&utm_source=medium&utm_medium=post&utm_campaign=ai-stock-screener-claude-mcp&utm_content=Meneses)\n\n*Looking for technical content for your company? I can help — LinkedIn · kevinmenesesgonzalez@gmail.com*", "url": "https://wpnews.pro/news/i-let-claude-analyze-500-stocks-here-s-what-it-picked", "canonical_source": "https://dev.to/kevin_menesesgonzlez/i-let-claude-analyze-500-stocks-heres-what-it-picked-5cpk", "published_at": "2026-06-21 14:43:02+00:00", "updated_at": "2026-06-21 15:03:51.376991+00:00", "lang": "en", "topics": ["large-language-models", "ai-tools", "ai-agents", "developer-tools"], "entities": ["Anthropic", "Claude", "EODHD", "MCP"], "alternates": {"html": "https://wpnews.pro/news/i-let-claude-analyze-500-stocks-here-s-what-it-picked", "markdown": "https://wpnews.pro/news/i-let-claude-analyze-500-stocks-here-s-what-it-picked.md", "text": "https://wpnews.pro/news/i-let-claude-analyze-500-stocks-here-s-what-it-picked.txt", "jsonld": "https://wpnews.pro/news/i-let-claude-analyze-500-stocks-here-s-what-it-picked.jsonld"}}