Pyth Pro MCP Server
online · 100% uptimeio.github.pyth-network/mcp·v0.3.2·255 starsReal-time and historical price feeds for 500+ crypto, equities, FX, and commodities assets.
255 stars
Reviews
Write oneNobody has reviewed Pyth Pro MCP Server yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Pyth Pro MCP Server tools (6)
write = sends, deletes, buys or postsconvert_date_to_timestampFreeConvert a date string to Unix timestamp for use with get_historical_price, get_price_range and get_candlestick_data. Use this tool when you need to compute timestamps — do not calculate Unix timestamps manually. Accepts ISO 8601 dates (e.g. '2026-01-01', '2026-01-01T12:00:00Z'). Returns seconds, microseconds, ISO 8601, and whether the date is within the available data range (April 2025 onward).
get_candlestick_dataFreeFetch OHLC candlestick bars for one symbol, for charting, technical analysis or backtesting. OHLC values are already human-readable (no exponent). Requires the user's own Pyth Pro access token. If the user configured it in their MCP client, omit `access_token`; otherwise pass it as `access_token`, and if the tool reports it missing, ask the user for it. Symbols can be full names from get_symbols (e.g. 'Crypto.BTC/USD', 'Equity.US.AAPL/USD') or bare pairs like 'BTC/USD'. A bare pair resolves to the live spot feed when there is one, otherwise to the only remaining live match; `resolved_symbols` in the response shows what each input resolved to, and an ambiguous input returns an error listing the candidates. `from` and `to` are Unix seconds only. Resolutions: 1/5/15/30/60 minutes, 120/240/360/720 (multi-hour), D (daily), W (weekly), M (monthly). At most 500 candles are returned; `truncated: true` means narrow the range or use a larger resolution. Historical data is available from April 2025 onward; do not request times before that. Price tools: get_latest_price for now, get_historical_price for one past instant, get_price_range for every update within up to 60 seconds, get_candlestick_data for OHLC bars over longer periods. Timestamp reference (Unix seconds): 2025-04-01 (earliest available) = 1743465600 2026-01-01 = 1767225600 2026-06-01 = 1780272000 Always double-check your timestamp math (year-boundary errors are common), or use convert_date_to_timestamp.
get_historical_priceFreeGet the price of one or more feeds at one past instant. Requires the user's own Pyth Pro access token. If the user configured it in their MCP client, omit `access_token`; otherwise pass it as `access_token`, and if the tool reports it missing, ask the user for it. Symbols can be full names from get_symbols (e.g. 'Crypto.BTC/USD', 'Equity.US.AAPL/USD') or bare pairs like 'BTC/USD'. A bare pair resolves to the live spot feed when there is one, otherwise to the only remaining live match; `resolved_symbols` in the response shows what each input resolved to, and an ambiguous input returns an error listing the candidates. If both price_feed_ids and symbols are provided, only price_feed_ids are used. The timestamp accepts Unix seconds, milliseconds or microseconds (auto-detected) and is rounded down to the channel rate (e.g. a multiple of 200 ms for fixed_rate@200ms). Historical data is available from April 2025 onward; do not request times before that. Requested feeds that return no price are listed in `missing_feed_ids` (e.g. beta or coming_soon feeds, or a channel faster than the feed's min_channel). Prices are integers with an exponent field: human-readable price = price * 10^exponent. Pre-computed display_* fields (display_price, display_bid, display_ask, display_confidence, display_ema_price, display_ema_confidence, display_funding_rate) apply the exponent for you. Price tools: get_latest_price for now, get_historical_price for one past instant, get_price_range for every update within up to 60 seconds, get_candlestick_data for OHLC bars over longer periods. Timestamp reference (Unix seconds): 2025-04-01 (earliest available) = 1743465600 2026-01-01 = 1767225600 2026-06-01 = 1780272000 Always double-check your timestamp math (year-boundary errors are common), or use convert_date_to_timestamp.
get_latest_priceFreeGet the most recent real-time price for one or more feeds. Requires the user's own Pyth Pro access token. If the user configured it in their MCP client, omit `access_token`; otherwise pass it as `access_token`, and if the tool reports it missing, ask the user for it. Symbols can be full names from get_symbols (e.g. 'Crypto.BTC/USD', 'Equity.US.AAPL/USD') or bare pairs like 'BTC/USD'. A bare pair resolves to the live spot feed when there is one, otherwise to the only remaining live match; `resolved_symbols` in the response shows what each input resolved to, and an ambiguous input returns an error listing the candidates. If both price_feed_ids and symbols are provided, only price_feed_ids are used. Requested feeds that return no price are listed in `missing_feed_ids` (e.g. beta or coming_soon feeds, or a channel faster than the feed's min_channel). Prices are integers with an exponent field: human-readable price = price * 10^exponent. Pre-computed display_* fields (display_price, display_bid, display_ask, display_confidence, display_ema_price, display_ema_confidence, display_funding_rate) apply the exponent for you. Price tools: get_latest_price for now, get_historical_price for one past instant, get_price_range for every update within up to 60 seconds, get_candlestick_data for OHLC bars over longer periods.
get_price_rangeFreeGet every price update for one or more feeds within a short historical window (at most 60 seconds), e.g. to see exactly how a price moved around an event. Requires the user's own Pyth Pro access token. If the user configured it in their MCP client, omit `access_token`; otherwise pass it as `access_token`, and if the tool reports it missing, ask the user for it. Symbols can be full names from get_symbols (e.g. 'Crypto.BTC/USD', 'Equity.US.AAPL/USD') or bare pairs like 'BTC/USD'. A bare pair resolves to the live spot feed when there is one, otherwise to the only remaining live match; `resolved_symbols` in the response shows what each input resolved to, and an ambiguous input returns an error listing the candidates. If both price_feed_ids and symbols are provided, only price_feed_ids are used. Rows are ordered by time and interleaved across feeds; a fixed_rate@200ms channel yields 5 rows per feed per second. When `has_more` is true, call again with `after` set to `next_cursor` and the same feeds, window and channel. Historical data is available from April 2025 onward; do not request times before that. Prices are integers with an exponent field: human-readable price = price * 10^exponent. Pre-computed display_* fields (display_price, display_bid, display_ask, display_confidence, display_ema_price, display_ema_confidence, display_funding_rate) apply the exponent for you. Price tools: get_latest_price for now, get_historical_price for one past instant, get_price_range for every update within up to 60 seconds, get_candlestick_data for OHLC bars over longer periods.
get_symbolsFreeList available Pyth Pro price feeds. Use this FIRST to discover what feeds exist before calling get_latest_price, get_historical_price, get_price_range or get_candlestick_data (those also accept bare pairs like BTC/USD). Filter by asset_type (e.g. crypto, equity, fx, metal, commodity, interest-rate, funding-rate, kalshi) or search by name/symbol. Narrow further with instrument_type (spot, future, ...) or symbol_chain_id (all contracts of one futures chain, e.g. VX). Retired (inactive) feeds are hidden unless include_inactive is true. Returns compact feed metadata: symbol, name, description, pyth_lazer_id, asset_type, instrument_type, state, exponent, min_channel (fastest channel the feed supports), quote_currency, and where set groups (entitlement groups that gate the feed), expiration_time and symbol_chain_id (futures). Pass verbose: true for every catalog field, e.g. market_sessions (trading-hours schedules) and corporate_actions (e.g. stock splits). With an access token, the list also includes feeds visible only to Pro keys, and each feed has `entitled`: true means this key can query the feed right now. When `entitled` is false, `not_entitled_reason` says why: `not_live (...)` means the feed is in beta, not live yet, or retired, so no key can query it (NOT a plan limitation), `requires one of entitlement groups: ...` means the user's plan lacks that entitlement.
Public scan report
scanner v0.1.10 · 2026-11-07 · same rubric, same numbers if you re-run it
- –Code scanremote-only server, no package to scann/a
- Live reliabilityremote reachable in 1319ms20/20
- Tool poisoning6 tool descriptions checked15/15
- Auth qualityopen endpoint, read-only tools10/15
- Maintenancelast push 2 days ago15/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year9/10
How Pyth Pro MCP Server compares
Against every graded Finance MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 92/100
- higher than 95% of 1,765 Finance servers
- Tools
- 6
- the typical Finance server has 9
- Tools that change things
- 0%
- typical: 0%. Fewer write tools means less an agent can break
- Uptime
- 100%
- of our recent checks; the typical remote Finance server answers 100%
- Response time
- 360 ms
- faster than 40% of 1,144 Finance servers
- GitHub stars
- 255
- more than 95% of 957 Finance servers
What its tools let an agent do: 6 read
Release history: 3 versions in the registry since 2026-07-13, latest 2026-10-23, typically one every 88 days.
Install Pyth Pro MCP Server in Claude Code, Cursor or VS Code
claude mcp add --transport http mcp https://mcp.pyth.network/mcp
What the publisher says
From the Pyth Pro MCP Server repository's README, as published. We do not edit it. Read it on GitHub
Pyth Crosschain
This repository acts as a monorepo for the various components that make up Pyth protocols.
Within this monorepo you will find the following subprojects:
Table of Contents
- Target Chains
- Hermes
- Fortuna
- Pyth Lazer Pusher
- Local Development
- Setup
- Pull requests
- Releases
- Typescript Monorepo
- Setting up
- Common tasks
- Building a new web app, JS / TS library or CLI tool
Target Chains
target_chains
This directory contains on-chain contracts and SDKs for all of the various blockchain runtimes that Pyth supports. Each subdirectory corresponds to a blockchain runtime. Inside each subdirectory, there are subfolders for contracts and SDKs.
Hermes
hermes
Hermes is an off-chain service which constantly observes Pythnet and the Wormhole network watching for price updates emitted from the Pyth contract. It exposes all observed attestations via a public API over HTTPS/WSS which can be consumed by client-side applications that wish to use Pyth pricing data.
The price_service/client directory provides an SDK for interacting with Hermes. However, most users will interact with the price service via a chain-specific SDK
For a guide on utilising this service in your project, see the chain-specific SDK and examples for your blockchain runtime in the target_chains directory.
Fortuna
fortuna
Fortuna is an off-chain service which can be used by Entropy providers.
Pyth Lazer Pusher
pyth-lazer-pusher
Price feed pushers that deliver Pyth Lazer data to external systems. Currently supports pushing to Bulk Trade validators.
Local Development
Setup
Please install the following tools in order to work in this repository:
- NVM to manage your node version, then run nvm use 22 to ensure you are using node version 22.
- Optionally, you can also use mise. If you install mise, you can run all of your commands like the following: mise x -- pnpm , which will ensure you are running your commands while using the correct tool versions for this repository.
- Foundry in order to use forge for Ethereum contract development
- Solana CLI for working with Solana programs.
- After installing, please run solana keygen new to generate a local private key.
- Anchor for developing Solana programs.
- Pre-commit is used to automatically format and lint the repository.
- After installing, please run pre-commit install in the root of the repo to configure the checks to run on each git commit.
- Rust
Pull requests
Use the Conventional Commits format for your commit messages and PR titles. In the PR description, please include a summary of the changes and any relevant context. Also, please make sure to update the package versions following the Semantic Versioning rules.
See also: Standards
Releases
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Pyth Pro MCP Server: common questions
- Is Pyth Pro MCP Server safe?
- Yes, by our scan: it is graded A (92/100). Read the Pyth Pro MCP Server safety report
- How do I install Pyth Pro MCP Server?
- It runs remotely at mcp.pyth.network. Add it to Claude Code, Cursor, VS Code or Claude Desktop with the snippets above, or call it through the mcp.market gateway without installing anything.
- Does Pyth Pro MCP Server need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is Pyth Pro MCP Server maintained?
- The last commit was 10 days ago (2026-11-05). The latest release is v0.3.2.
- Is Pyth Pro MCP Server up?
- 100% of our last 28 checks got an answer. We check remote servers about four times a day.
- What can I use instead of Pyth Pro MCP Server?
- Servers from other publishers that do the same job: TickDB Market Data MCP server, Zwldarren Akshare One MCP server and Moonpay MCP server. Compare all Pyth Pro MCP Server alternatives.
- How does Pyth Pro MCP Server compare with other Finance MCP servers?
- safety score 92/100 (higher than 95% of 1,765 Finance servers); tools 6 (the typical Finance server has 9); tools that change things 0% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.
Alternatives to Pyth Pro MCP Server
Same job from other publishers: the closest match first, then the best rated.
TickDB Market DataReal-time & historical market data: forex, stocks, crypto, indices, metals, K-line, quotesnot reviewedEstablishedB- Zwldarren Akshare OneProvide access to Chinese stock market data including historical prices, real-time data, news, and…not reviewedGrowingA
- MoonpayMCP server for MoonPay — fiat-to-crypto on/off-ramp, 100+ assets; Pix for Brazil onrampnot reviewedGrowingB
ShumiCrypto market intelligence: prices, funding rates, narratives, regime, and delta-neutral research.not reviewedGrowingA
not reviewedGrowingB