DEV Community

Daniel Oliveira
Daniel Oliveira

Posted on

How to screen stocks in plain English with an AI agent, then check what it found

All outputs are real tool calls to the Equibles MCP server from 21 October 2026, trimmed.

A stock screener is a form full of minimum and maximum boxes. With an AI agent you describe the screen in a sentence and it fills in the boxes. The part that still needs you is checking what comes back.

Here are two screens run on the S&P 500, and how I checked one match all the way down to the filings.

Connect it first

In Claude, open Customize → Connectors → Discover, search for Equibles, click Connect to Claude and Authorize, then switch it on in a chat from + → Connectors. In ChatGPT: Plugins, search Equibles, Install plugin. In Claude Code, claude mcp add --transport http equibles https://mcp.equibles.com/mcp and then /mcp to sign in. The free plan covers 100 requests a day; other clients are in the setup docs.

1. Screen one: insider buying

The prompt: "Using Equibles, which S&P 500 stocks had more than $1M of net insider buying in the last 90 days?" The agent calls ScreenStocks with index=sp-500, minNetInsiderBuy=1000000 and sortBy=insiderbuy. Twelve matches:

Ticker Company Market cap Net insider buy, 90 days Insider sentiment
PEP PepsiCo $182.0B $23,281,715 81
UBER Uber Technologies $142.0B $13,305,343 84
INTC Intel $464.2B $9,999,985 83
BSX Boston Scientific $66.0B $9,486,038 92
APTV Aptiv $9.4B $8,254,508 95
AON Aon $62.6B $5,831,938 84
PFE Pfizer $167.8B $2,876,849 86
WELL Welltower $168.3B $2,407,650 82
CSGP CoStar Group $13.4B $2,236,727 75
COO Cooper Companies $11.2B $1,880,109 90
TSN Tyson Foods $19.2B $1,001,617 82
IR Ingersoll Rand $30.2B $1,000,091 81

The screen's definition matters more than its ranking: net insider buying here is open-market purchases minus open-market sales by officers and directors. Insider sentiment is a 0 to 100 score ranked against peers.

2. Check one match against the filings

A screen is a summary. "Show Boston Scientific's insider transactions since 20 July." GetInsiderTransactions returns every Form 4 row. The purchases:

Date Insider Role Type Shares Price Value
2026-08-25 Morano Susan E Director Buy 2,040 $49.22 $100,408
2026-08-05 Habiger David C Director Buy 2,100 $47.59 $99,937
2026-08-04 Habiger David C Director Buy 140 $48.59 $6,802
2026-08-03 Mahoney Michael F Director Buy 186,240 $48.33 $9,001,408
2026-08-03 Habiger David C Director Buy 1,042 $48.07 $50,084
2026-07-31 LUDWIG EDWARD J Director Buy 5,000 $45.48 $227,400

Those six rows add up to the screener's $9,486,038, give or take a rounded dollar. The same window also has four rows typed Discretionary, worth $4.7M together, from the CFO, an EVP, the chief accounting officer and an indirect holding of Mahoney's. Discretionary is the Form 4 code for a transaction inside an employee benefit plan, not an open-market purchase, and the screen leaves them out. An agent asked to "add up insider buys" from the raw rows would count them unless you say otherwise.

The prices add context: BSX insiders bought at $45.48 to $49.22, and the stock was at $45.58 in the screen.

3. Screen two: growth at a reasonable price

"S&P 500 stocks with revenue growth over 15%, a P/E under 25, positive net income, and active 13F holders adding shares last quarter, sorted by revenue growth." ScreenStocks with minRevenueGrowth=15, maxPe=25, minNetIncome=0 and minActiveHolderChange=0. 30 matches; the first ten:

Ticker Company P/E (TTM) Revenue growth Active holders' share change
MU Micron Technology 12.06 379.3% +0.6%
SMCI Super Micro Computer 9.96 93.2% +45.8%
DVN Devon Energy 11.97 73.1% +91.8%
OXY Occidental Petroleum 9.74 53.4% +2.4%
PSX Phillips 66 16.61 53.1% +3.7%
APP AppLovin 20.94 52.8% +4.1%
OKE Oneok 16.01 52.8% +0.9%
BX Blackstone 24.74 35.9% +1.2%
CINF Cincinnati Financial 8.12 31.6% +4.5%
ORCL Oracle 20.55 29.6% +6.1%

Before reading the ranking, read the column definitions the tool returns with it:

  • Revenue growth is the latest quarter against the same quarter a year earlier. One quarter, so a cyclical rebound or an acquisition can top the list.
  • Active holders' share change is the like-for-like change in shares held by actively managed 13F filers, for the quarter ended 30 June.
  • P/E is trailing twelve months, and a stock missing any bounded metric is excluded rather than guessed.

Each match is then one question away from its own check: GetFinancialStatement for the quarter behind the growth figure, or GetTopHolders for who was adding.

The prompt I reuse

Using Equibles, screen the S&P 500 for <CONDITIONS>, sorted by <METRIC>.
Then, for the top 3 matches:
1. Show the raw rows behind the metric that put them on the list
   (Form 4 rows, the quarter's financials, or the 13F holders).
2. Recompute the screener's figure from those rows and say whether it matches.
3. Give each dataset's as-of date.
Enter fullscreen mode Exit fullscreen mode

What a screen can't tell you

  • One date. Each column has its own vintage: 13F holder data is for the quarter ended 30 June 2026, short interest for the 30 September settlement, insider figures trail 90 days, prices are the latest snapshot, and fundamentals come from the latest filings.
  • Why. A match says the numbers fit the boxes, not why they do.
  • What's missing. A stock without data on a bounded metric drops out silently, which can matter more than any row that's there.

The same filters, with more columns, are on the Equibles screener, and each stock's filings have their own page, like BSX insider trading.

Nothing here is investment advice.

Top comments (0)