CLI
The Sharpe CLI brings the full Sharpe Terminal to your command line. It is built for traders who want funding rates before their morning coffee, quants who pipe JSON into notebooks, and developers who automate around market data. One pip install gives you 19 commands covering derivatives, arbitrage, narratives, ecosystems, exchange listings, and discovery -- no browser required.
Installation
The CLI ships inside the sharpe-mcp PyPI package alongside the MCP server. You can run it ephemerally without installing, or install it persistently so the binary stays on your PATH.
uvx --from sharpe-mcp sharpe market
uv tool install sharpe-mcp
sharpe market
pipx install sharpe-mcp
sharpe market
python3 -m venv ~/.venvs/sharpe
pip install sharpe-mcp
sharpe market
Remember to activate the venv with source ~/.venvs/sharpe/bin/activate before the pip install and sharpe commands above.
The --from sharpe-mcp flag is required for uvx because the CLI entry point is sharpe but the PyPI package is named sharpe-mcp. The persistent installers (uv tool install, pipx, pip) put both binaries -- sharpe and sharpe-mcp -- on your PATH, so they don't need the flag.
Requires Python 3.10 or later. uvx always fetches the latest version from PyPI. If installed persistently, the CLI checks for updates once per day and shows a banner when a newer version is available. Upgrade with uv tool upgrade sharpe-mcp, pipx upgrade sharpe-mcp, or pip install -U sharpe-mcp.
Quick start
You can run every command without an API key. Without one, the CLI falls back to the free public endpoints automatically. Add a key later for higher rate limits and authenticated-only data.
Market overview
sharpe market
Returns BTC price, dominance, Fear & Greed Index, top gainers/losers.
Daily briefing
sharpe briefing
Pulls market overview, top narratives, funding rate extremes, and arbitrage opportunities into a single view. Four API calls, one screen.
Funding rates
sharpe funding
sharpe funding --type history --coin BTC --days 7
Commands
Every command supports --json for raw JSON and --csv for CSV output. Most also support --web to open the corresponding Sharpe Terminal page in your browser.
Market
- Name
market- Type
- command
- Description
Market overview with BTC price, dominance, Fear and Greed Index, ETH/BTC ratio, and top gainers/losers.
- Name
briefing- Type
- command
- Description
Daily composite briefing combining market overview, top narratives, funding rate extremes, and arbitrage opportunities in one view. Runs four API calls in sequence.
- Name
watch- Type
- command
- Description
Live auto-refresh mode. Clears the screen and re-fetches data every 30 seconds (configurable with
--interval). Supportsmarket,funding,futures,options, andarbas targets.
sharpe market
sharpe market --json
sharpe briefing
sharpe briefing --json
sharpe watch market
sharpe watch funding --coin BTC --interval 15
Derivatives
- Name
funding- Type
- command
- Description
Funding rates across 13 perpetual exchanges. Use
--typeto selectcurrent(default),accumulated, orhistory.--coinfilters to a single base coin in any mode.--sort FIELDreorders rows (prefix with-for descending; common fields:rate,base_coin,exchange,open_interest,next_funding_time).--limit Nkeeps only the first N rows after filter/sort. History mode also accepts--days.
- Name
futures- Type
- command
- Description
Futures chart data. The first argument is the chart ID:
oi-stacked,liquidations,funding-rate,annualized-basis,volume-history,long-short-ratio, and more. Accepts--coin,--timeframe, and--exchanges.
- Name
options- Type
- command
- Description
Options analytics. Chart IDs include
atm-iv,vol-smile,gex,oi-by-strike,vol-surface,put-call-oi-ratio, and more. Supports BTC and ETH. Accepts--coin,--timeframe, and--exchanges.
sharpe funding
sharpe funding --coin BTC # filter to BTC rows only
sharpe funding --sort -rate --limit 10 # top 10 highest funding rates
sharpe funding --coin ETH --sort -open_interest # ETH exchanges by OI desc
sharpe funding --type history --coin ETH --days 14
sharpe futures oi-stacked --coin BTC --timeframe 3M
sharpe futures liquidations --coin ETH --timeframe 1M --exchanges binance,bybit
sharpe options atm-iv --coin BTC
sharpe options vol-smile --coin ETH --timeframe 1W
Arbitrage
- Name
arb- Type
- command
- Description
Arbitrage opportunities. Pass
spot-perp(default) orcross-exchangeas the first argument. Rows are sorted by highest APR by default; override with--sort FIELD(prefix with-for descending; other useful fields:netApr,cumRate7d,spreadRate). Filter with--exchangeand--direction(all, long, short) and cap with--limit N.
sharpe arb spot-perp # top opportunities by APR (default)
sharpe arb spot-perp --limit 10 # top 10
sharpe arb spot-perp --exchange binance --direction long
sharpe arb cross-exchange --limit 20
sharpe arb spot-perp --sort symbol # override default sort
Categories
- Name
narratives- Type
- command
- Description
Crypto narrative analytics covering L1, DeFi, AI, RWA, Memes, and 17 more sectors. Use
--slugto drill into a single narrative.
- Name
ecosystems- Type
- command
- Description
Blockchain ecosystem analytics for Ethereum, Solana, Base, Arbitrum, and 19 more chains. Use
--slugto drill in and--exclude-nativeto remove the native token from aggregates.
- Name
memecoins- Type
- command
- Description
Memecoin narrative intelligence across 17 curated categories (Dog, Cat, Frog, AI, Political, and more). Use
--slugfor a single narrative and--historicalfor24hor7dsnapshots. Reorder with--sort FIELD(prefix with-for descending; common fields:marketCap,change24h,momentum,coinCount) and cap with--limit N.
- Name
listings- Type
- command
- Description
Exchange listings tagged by narrative across Binance, OKX, Bybit, Gate.io, and MEXC. First argument is the mode:
hub(default, aggregated counts and recent feed) orrecent(flat feed of recent listings). Supports--narrative,--exchange,--days(recent only, 1-365),--limit(recent only, 1-1000), and--sort FIELDfor the recent feed.
- Name
stablecoins- Type
- command
- Description
Stablecoin market cap, peg, mechanism, chain supply, detail, and yield data. Use
--type overview,--type detail --slug usdt, or--type yields.
sharpe narratives
sharpe narratives --slug defi
sharpe ecosystems --slug solana
sharpe ecosystems --slug ethereum --exclude-native
sharpe memecoins
sharpe memecoins --sort -marketCap --limit 5 # top 5 memecoin narratives by market cap
sharpe memecoins --slug dog-coins --historical 7d
sharpe listings
sharpe listings --narrative ai-agents
sharpe listings recent --exchange mexc --days 30
sharpe listings recent --narrative memes --limit 50 --json
sharpe stablecoins --type overview
sharpe stablecoins --type detail --slug usdt
Discovery
- Name
dexscreener- Type
- command
- Description
DEX Screener rows by category, network, or search phrase. Supports
--category,--network,--phrase, and--limit.
- Name
token-scanner- Type
- command
- Description
Read-only token scanner modes:
hot,new-runners,alpha-drops,ai-top, andtop-new.
- Name
rug-check- Type
- command
- Description
Rug Check trending tokens or token security lookup. Use
rug-check trendingorrug-check security --address ... --chain-id ....
- Name
search- Type
- command
- Description
Search coins by name or ticker. The first argument is the query string.
- Name
gems- Type
- command
- Description
Low-cap high-potential token discovery. Use
--limitto control how many tokens to return (default 20). Reorder with--sort FIELD(prefix with-for descending; common fields:volume24h,marketCap,change24h,athDistance).
- Name
predict- Type
- command
- Description
AI price prediction scores. Optionally pass
--coinwith a canonical coin slug (e.g.bitcoin,ethereum).
- Name
news- Type
- command
- Description
Aggregated crypto news feed. Supports
--limit,--coin, and--categoryfilters. Reorder with--sort FIELD(prefix with-for descending; common fields:published,source).
- Name
mindshare- Type
- command
- Description
Narrative mindshare rankings, token rows, rolling windows, and historical snapshots.
- Name
web-traffic- Type
- command
- Description
Attention rankings, search trends, social snapshots, and market-level traffic signals.
- Name
katana- Type
- command
- Description
Katana Network TVL, token, holder, sentiment, pool, mover, and ecosystem analytics.
sharpe dexscreener --category trending --limit 25
sharpe token-scanner --mode alpha-drops --chains solana,base
sharpe rug-check trending --limit 25
sharpe search solana
sharpe gems --limit 10
sharpe predict --coin bitcoin
sharpe news --limit 5 --coin bitcoin
sharpe mindshare --window 7d
sharpe web-traffic --type coin --mode rankings
sharpe katana
System
- Name
doctor- Type
- command
- Description
Self-diagnosis: checks CLI version, Python version, config file, API key status, network connectivity to both free and authenticated endpoints, and terminal environment.
- Name
login- Type
- command
- Description
Interactive authentication flow. Opens the Sharpe API key dashboard in your browser, prompts you to paste your API key, validates it against the API, and saves it to the config file.
- Name
coverage- Type
- command
- Description
Lists all available data products, supported exchanges, chart types, and coin coverage.
- Name
coins- Type
- command
- Description
Lists available futures coins with per-exchange capability flags.
sharpe doctor
sharpe login
sharpe coverage
sharpe coins --json
Output formats
By default, the CLI renders colored, box-drawn tables when writing to a terminal. When output is piped (non-TTY), it automatically switches to clean TSV with no decorations, so downstream tools get parseable data without extra work.
Rate and APR columns (rate, fundingRate, apr, netApr, basisRate, spreadRate, cumRate7d, etc.) are stored as decimal ratios in the API -- e.g. apr = 2.74 means 274% annualized. The terminal renderer formats these as percentages for clarity (+274%, -6.69%); --json and piped TSV preserve the raw decimals for scripting.
JSON
Pass --json to any command for raw JSON output:
sharpe market --json
Pipe into jq for field selection:
sharpe market --json | jq '.bitcoin.price'
# 84231.40
CSV
Pass --csv for comma-separated output:
sharpe funding --csv > funding_rates.csv
Piping and scripting
Because non-TTY output is clean TSV, you can use standard Unix tools directly:
sharpe funding | sort -t$'\t' -k3 -rn | head -10
sharpe arb spot-perp --json > arb_snapshot_$(date +%Y%m%d).json
Configuration
The CLI reads settings from ~/.config/sharpe/config.yaml. Create it manually or run sharpe login to generate it.
api_key: sk_live_your_key_here
default_coin: BTC
default_timeframe: 3M
output_format: table
- Name
api_key- Type
- string
- Description
Your Sharpe API key from the API key dashboard. Overridden by the
SHARPE_API_KEYenvironment variable.
- Name
default_coin- Type
- string
- Description
Default coin for commands that accept
--coin. Defaults toBTC. Overridden by theSHARPE_DEFAULT_COINenvironment variable.
- Name
default_timeframe- Type
- string
- Description
Default timeframe for futures and options commands. Defaults to
3M. Valid values:1W,2W,1M,3M,6M,1Y,3Y,ALL. Overridden by theSHARPE_DEFAULT_TIMEFRAMEenvironment variable.
- Name
output_format- Type
- string
- Description
Default output format. Accepts
table(default),json, orcsv.
Environment variables
Environment variables take precedence over the config file:
export SHARPE_API_KEY="sk_live_your_key_here"
export SHARPE_DEFAULT_COIN="ETH"
export SHARPE_DEFAULT_TIMEFRAME="1M"
The priority order is: environment variable > CLI flag > config file > built-in default.
Watch mode
Watch mode clears the screen and re-fetches data at a fixed interval. It is useful for keeping a terminal pane open during a trading session.
sharpe watch market
sharpe watch funding --coin ETH --interval 15
sharpe watch futures --chart oi-stacked --coin BTC
Supported watch targets: market, funding, futures, options, arb.
Press Ctrl+C to exit. The header shows the current UTC time and refresh interval.
Watch mode requires a TTY. It will not work when piped to another process.
Shell completion
Install tab completion for your shell:
sharpe --install-completion
This registers completions for Bash, Zsh, Fish, or PowerShell depending on your environment. Restart your shell or source the completion file for it to take effect.
Works without an API key
Every command works without authentication. When no API key is configured, the CLI routes requests through the free public endpoints at www.sharpe.ai/api/ instead of the authenticated v1 API at www.sharpe.ai/api/v1/. This means you can install and start using the CLI immediately.
Free endpoints have lower rate limits and may not include all data fields. Run sharpe login to authenticate and unlock full access.
To check your current authentication status and connectivity:
sharpe doctor