tickertape-mcp

tickertape-mcp

An MCP server that screens and analyzes US stocks and ETFs using Tickertape's screener data. It allows users to filter by 70+ metrics, search stocks, get details, and list available filters.

Category
Visit Server

README

tickertape-mcp

An MCP server for screening and analyzing US stocks and ETFs using Tickertape's screener data, usable from any MCP client. Ask in plain language — "profitable US semiconductor stocks under 20× P/E with ROE above 20%" — and get a ranked, filterable table back.

Disclaimer. This is an unofficial project. It is not affiliated with, endorsed by, or supported by Tickertape or Smallcase. It calls an undocumented public API that may change or break at any time. Data is provided "as is", may be delayed or wrong, and is not investment advice. Only the US market is supported. Use at your own risk and review Tickertape's terms of service before use.

Features

  • screen_stocks — filter US stocks by any of 70+ metrics (valuation, growth, profitability, dividends, technicals, ownership, analyst ratings), plus sector / industry, with sorting and pagination.
  • screen_etfs — screen ETFs by AUM, expense ratio, returns, yield, and fund category.
  • list_filters — discover the available metrics, their units, value ranges, and the allowed sector/industry values.
  • search_stocks — look up a ticker or company name.
  • get_stock_details — a full metric snapshot for one stock or ETF, grouped by category, with a link to its Tickertape page.

It validates every metric name and value against the live filter catalog, so a typo gets a helpful "did you mean" instead of silently wrong results (see docs/api-notes.md for why that matters).

Install

Requires Node.js ≥ 18.

Claude Code (CLI)

claude mcp add tickertape -- npx -y tickertape-mcp

Claude Desktop / Cursor

Add to your MCP config (claude_desktop_config.json, or Cursor's mcp.json):

{
  "mcpServers": {
    "tickertape": {
      "command": "npx",
      "args": ["-y", "tickertape-mcp"]
    }
  }
}

Then restart the client. No API keys or account are needed.

Example prompts

  • "Screen US stocks: market cap over $10B, P/E under 25, ROE above 15%, in Technology. Sort by dividend yield."
  • "Find low-cost S&P 500 ETFs — expense ratio under 0.05%, sorted by AUM."
  • "What are NVDA's valuation and profitability metrics?"
  • "Which large-cap healthcare stocks are trading more than 30% below their 52-week high?"

Tools reference

Tool Key parameters
list_filters category?, search?
screen_stocks filters: [{metric, min?, max?}], sectors?, industries?, sort_by, sort_order, columns?, limit, offset
screen_etfs filters, categories?, sort_by, sort_order, columns?, limit, offset
search_stocks query, asset_type (stock|etf), limit
get_stock_details ticker, asset_type, metrics?

Metric names accept either a friendly alias (peRatioTtm, marketCap, returnOnEquity, dividendYield, debtToEquity, expenseRatio, aum) or the raw Tickertape label. Call list_filters to see them all. Premium metrics (e.g. forward P/E, analyst estimates) can be shown as columns but not used to filter or sort — that requires a Tickertape subscription.

How it works

  • On first use it fetches Tickertape's filter catalog (cached in memory) to build the metric list and aliases.
  • search_stocks / get_stock_details build a local index of the full universe the first time they run (a few seconds), cached on disk under ~/.cache/tickertape-mcp/ (override with TICKERTAPE_MCP_CACHE_DIR) for 24 hours.
  • All output is compact markdown to keep token usage low.

See docs/api-notes.md for the reverse-engineered API contract.

Development

npm install
npm run typecheck     # tsc --noEmit
npm test              # vitest, uses fixtures (no network)
npm run build         # bundle to dist/ with tsup
npm run smoke         # live end-to-end checks against the real API (not in CI)

Inspect the server interactively:

npm run build
npx @modelcontextprotocol/inspector node dist/index.js

Project layout

src/
  index.ts     entry — starts the stdio MCP server
  server.ts    tool registration and wiring
  api.ts       HTTP client for the Tickertape API
  catalog.ts   filter catalog: fetch, aliases, name/value resolution
  match.ts     builds a query body from tool input (the silent-failure guard)
  universe.ts  local ticker/name index with disk cache
  format.ts    markdown renderers

Publishing checklist

  1. npm run typecheck && npm test && npm run build
  2. npm pack --dry-run — confirm the tarball contains only dist/, README.md, LICENSE.
  3. Test the bin: npx ./tickertape-mcp-<version>.tgz.
  4. npm publish --access public (optionally --provenance from CI).

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured