stock-pricesQuery real-time stock prices and market data using the Stock Prices API. Responses are in TOON format—decode with @toon-format/toon. Use when fetching stock...
Install via ClawdBot CLI:
clawdbot install anthonylee1994/stock-pricesThis skill helps you work with the Stock Prices API to fetch real-time market data and stock quotes.
Base URL: https://stock-prices.on99.app
Primary Endpoint: /quotes?symbols={SYMBOLS}
Fetch stock quotes for one or more symbols (responses are in TOON format):
curl "https://stock-prices.on99.app/quotes?symbols=NVDA"
curl "https://stock-prices.on99.app/quotes?symbols=AAPL,GOOGL,MSFT"
Install the TOON decoder for parsing: pnpm add @toon-format/toon
The API returns TOON (Token-Oriented Object Notation) format—a compact, human-readable encoding that uses ~40% fewer tokens than JSON. This makes it ideal for LLM prompts and streaming.
quotes[1]{symbol,currentPrice,change,percentChange,highPrice,lowPrice,openPrice,previousClosePrice,preMarketPrice,preMarketChange,preMarketTime,preMarketChangePercent,...}:
NVDA,188.54,-1.5,-0.789308,192.48,188.12,191.405,190.04,191.8799,3.3399048,2026-02-11T13:49:16.000Z,1.771457,...
Use @toon-format/toon to parse responses back to JavaScript/JSON:
import { decode } from "@toon-format/toon";
const response = await fetch("https://stock-prices.on99.app/quotes?symbols=NVDA");
const toonText = await response.text();
const data = decode(toonText);
// data.quotes is an array of quote objects
const quote = data.quotes[0];
console.log(`${quote.symbol}: ${quote.currentPrice}`);
The decoded structure matches JSON—same objects, arrays, and primitives.
| Field | Type | Description |
| ------------------------ | ----------------- | ------------------------------------- |
| symbol | string | Stock ticker symbol |
| currentPrice | number | Current trading price |
| change | number | Price change from previous close |
| percentChange | number | Percentage change from previous close |
| highPrice | number | Day's high price |
| lowPrice | number | Day's low price |
| openPrice | number | Opening price |
| previousClosePrice | number | Previous day's closing price |
| preMarketPrice | number | Pre-market trading price |
| preMarketChange | number | Pre-market price change |
| preMarketTime | string (ISO 8601) | Pre-market data timestamp |
| preMarketChangePercent | number | Pre-market percentage change |
Query multiple stocks by separating symbols with commas (max 50):
curl "https://stock-prices.on99.app/quotes?symbols=AAPL,GOOGL,MSFT,TSLA,AMZN"
Always check for valid responses. Decode TOON before accessing data:
import { decode } from "@toon-format/toon";
const response = await fetch("https://stock-prices.on99.app/quotes?symbols=NVDA");
const data = decode(await response.text());
if (data.quotes && data.quotes.length > 0) {
const quote = data.quotes[0];
console.log(`${quote.symbol}: ${quote.currentPrice}`);
}
Calculate common metrics:
// Determine if stock is up or down
const isUp = quote.change > 0;
const direction = isUp ? "📈" : "📉";
// Calculate day's range percentage
const rangePct = ((quote.highPrice - quote.lowPrice) / quote.lowPrice) * 100;
// Compare current to open
const vsOpen = quote.currentPrice - quote.openPrice;
import { decode } from "@toon-format/toon";
async function checkPrice(symbol: string) {
const res = await fetch(`https://stock-prices.on99.app/quotes?symbols=${symbol}`);
const data = decode(await res.text());
const quote = data.quotes[0];
return {
price: quote.currentPrice,
change: quote.change,
changePercent: quote.percentChange,
};
}
import { decode } from "@toon-format/toon";
async function getPortfolio(symbols: string[]) {
const symbolString = symbols.join(",");
const res = await fetch(`https://stock-prices.on99.app/quotes?symbols=${symbolString}`);
const data = decode(await res.text());
return data.quotes.map(q => ({
symbol: q.symbol,
value: q.currentPrice,
dailyChange: q.percentChange,
}));
}
import { decode } from "@toon-format/toon";
async function marketSummary(symbols: string[]) {
const res = await fetch(`https://stock-prices.on99.app/quotes?symbols=${symbols.join(",")}`);
const data = decode(await res.text());
const gainers = data.quotes.filter(q => q.change > 0);
const losers = data.quotes.filter(q => q.change < 0);
return {
totalStocks: data.quotes.length,
gainers: gainers.length,
losers: losers.length,
avgChange: data.quotes.reduce((sum, q) => sum + q.percentChange, 0) / data.quotes.length,
};
}
AAPL - AppleGOOGL - Alphabet (Google)META - Meta (Facebook)AMZN - AmazonNFLX - NetflixMSFT - MicrosoftNVDA - NVIDIATSLA - TeslaAMD - Advanced Micro DevicesINTC - IntelORCL - Oracle^GSPC - S&P 500^DJI - Dow Jones^IXIC - NASDAQdecode() from @toon-format/toon to parse.Generated Mar 1, 2026
Financial advisors and individual investors can use this skill to build dashboards that display real-time stock prices and daily changes for a portfolio of up to 50 symbols. It enables quick monitoring of asset performance, helping users make informed buy/sell decisions based on current market data.
Data analysts in fintech companies can leverage this skill to fetch stock data for multiple symbols and analyze market trends, such as identifying gainers vs. losers. This supports sentiment reporting and algorithmic trading strategies by providing up-to-date price metrics.
Trading platforms can integrate this skill to set up automated alerts based on price thresholds, such as when a stock's current price crosses above its day's high or below its open. This helps traders react quickly to market movements without manual monitoring.
Educational institutions and training programs can use this skill to power stock market simulators, allowing students to practice trading with real-time data. It provides hands-on experience with actual price fluctuations and market indicators like pre-market changes.
Media outlets and financial news websites can embed this skill to display live stock quotes alongside articles, enhancing reader engagement with interactive data. It allows journalists to provide context on market movements in real-time.
Offer tiered subscription plans for developers and businesses to access the Stock Prices API, with higher tiers providing more frequent updates or additional data fields. Revenue is generated through monthly or annual fees, targeting fintech startups and financial services.
Provide free basic access to stock quotes with limited symbols, while charging for advanced features like historical data, bulk downloads, or custom analytics dashboards. This model attracts individual users and upsells to enterprises needing deeper insights.
License the API and skill to brokerage firms and trading apps as a white-label solution, allowing them to integrate real-time stock data into their platforms without building from scratch. Revenue comes from one-time setup fees and ongoing maintenance contracts.
💬 Integration Tip
Always decode TOON responses using @toon-format/toon before processing data, and handle errors by checking if quotes array exists to ensure reliable integration.
Analyze stocks and cryptocurrencies using Yahoo Finance data. Supports portfolio management, watchlists with alerts, dividend analysis, 8-dimension stock scoring, viral trend detection (Hot Scanner), and rumor/early signal detection. Use for stock analysis, portfolio tracking, earnings reactions, crypto monitoring, trending stocks, or finding rumors before they hit mainstream.
Get stock prices, quotes, fundamentals, earnings, options, dividends, and analyst ratings using Yahoo Finance. Uses yfinance library - no API key required.
Yahoo Finance (yfinance) powered stock analysis skill: quotes, fundamentals, ASCII trends, high-resolution charts (RSI/MACD/BB/VWAP/ATR), plus optional web a...
Become an autonomous prediction market trader on Polymarket with AI-powered analysis and a performance-backed token on Base. Trade real markets, build a track record, and let the buyback flywheel run.
Get cryptocurrency token price and generate candlestick charts via CoinGecko API or Hyperliquid API. Use when user asks for token price, crypto price, price chart, or cryptocurrency market data.
Trade and monitor Hyperliquid perpetual futures. Check balances, view positions with P&L, place/cancel orders, execute market trades. Use when the user asks about Hyperliquid trading, portfolio status, crypto positions, or wants to execute trades on Hyperliquid.