Skip to main content

AKShare One MCP Server

smithery badge

PyPI version PyPI downloads Python versions License: MIT

Overview

An MCP server based on akshare-one, providing comprehensive interfaces for China stock market data. It offers a set of powerful tools for retrieving financial information including historical stock data, real-time data, news data, and financial statements.

akshare-one-mcp MCP server

Available Tools

Automatic source fallback

Except for get_inner_trade_data, whose upstream exposes a single source, every data tool takes a source parameter for the preferred data source and a fallback parameter (on by default) that decides whether the other sources of the same domain are tried when that source raises or returns an empty frame:

Domain Order tried
Historical eastmoney → eastmoney_direct → sina → ths
Real-time eastmoney_direct → eastmoney → xueqiu → ths (the last two are skipped when no symbol is given)
News eastmoney → ths
Financial statements sina ⇄ eastmoney_direct

The requested source is always tried first; the order only governs the fallback. Because akshare-one projects every source onto its domain's declared columns, falling back cannot change the field names or their order. When every source fails, the error lists each one and why it failed; when every source succeeds but has no data, an empty result is returned. Set fallback to false to pin a single source — a failure then surfaces directly, which is useful when you need to know exactly where the numbers came from.

The source that actually served a call is logged under the akshare_one_mcp.providers logger.

Market Data Tools

get_hist_data

Get historical stock market data with support for multiple time periods and adjustment methods.

Parameters
  • symbol (string, required): Stock code (e.g. '000001')
  • interval (string, optional): Time interval ('minute','hour','day','week','month','year') (default: 'day')
  • interval_multiplier (number, optional): Interval multiplier (default: 1)
  • start_date (string, optional): Start date in YYYY-MM-DD format (default: '1970-01-01')
  • end_date (string, optional): End date in YYYY-MM-DD format (default: '2030-12-31')
  • adjust (string, optional): Adjustment type ('none', 'qfq', 'hfq') (default: 'none')
  • source (string, optional): Data source ('eastmoney', 'eastmoney_direct', 'sina', 'ths') (default: 'eastmoney')
  • fallback (boolean, optional): Try 'eastmoney', 'eastmoney_direct', 'sina' and 'ths' in order when the chosen source fails or has no data (default: true)
  • indicators_list (list, optional): Technical indicators to add
  • recent_n (number, optional): Number of most recent records to return (default: 100)

get_realtime_data

Get real-time stock market data.

Parameters
  • symbol (string, optional): Stock code
  • source (string, optional): Data source ('eastmoney_direct', 'eastmoney', 'xueqiu', 'ths') (default: 'eastmoney_direct')
  • fallback (boolean, optional): Try 'eastmoney_direct', 'eastmoney', 'xueqiu' and 'ths' in order when the chosen source fails or has no data (default: true; 'xueqiu' and 'ths' are skipped when no symbol is given, as they quote one symbol at a time)

News & Information Tools

get_news_data

Get stock-related news data.

Parameters
  • symbol (string, required): Stock code
  • source (string, optional): Data source ('eastmoney', 'ths') (default: 'eastmoney')
  • fallback (boolean, optional): Try 'eastmoney' and 'ths' in order when the chosen source fails or has no data (default: true)
  • recent_n (number, optional): Number of most recent records to return, newest first (default: 10)

Financial Statement Tools

get_balance_sheet

Get company balance sheet data.

Parameters
  • symbol (string, required): Stock code
  • source (string, optional): Data source ('sina', 'eastmoney_direct') (default: 'sina')
  • fallback (boolean, optional): Try the other source when the chosen one fails or has no data (default: true)
  • recent_n (number, optional): Number of most recent records to return (default: 10)

get_income_statement

Get company income statement data.

Parameters
  • symbol (string, required): Stock code
  • source (string, optional): Data source ('sina', 'eastmoney_direct') (default: 'sina')
  • fallback (boolean, optional): Try the other source when the chosen one fails or has no data (default: true)
  • recent_n (number, optional): Number of most recent records to return (default: 10)

get_cash_flow

Get company cash flow statement data.

Parameters
  • symbol (string, required): Stock code
  • source (string, optional): Data source ('sina', 'eastmoney_direct') (default: 'sina')
  • fallback (boolean, optional): Try the other source when the chosen one fails or has no data (default: true)
  • recent_n (number, optional): Number of most recent records to return (default: 10)

Analysis & Metrics Tools

get_inner_trade_data

Get company insider trading data.

Parameters
  • symbol (string, required): Stock code

get_financial_metrics

Get key financial metrics from the three major financial statements.

Parameters
  • symbol (string, required): Stock code
  • source (string, optional): Data source ('sina', 'eastmoney_direct') (default: 'eastmoney_direct')
  • fallback (boolean, optional): Try the other source when the chosen one fails or has no data (default: true)
  • recent_n (number, optional): Number of most recent records to return (default: 10)

get_time_info

Get current time with ISO format, timestamp, and the last trading day.

Installation & Setup

Running Modes

The server supports two modes: stdio and streamable-http

Command Line Arguments:

  • --streamable-http: Enable HTTP mode (default: stdio mode)
  • --host: Host to bind to in HTTP mode (default: 0.0.0.0)
  • --port: Port to listen on in HTTP mode (default: 8081)

Note: When using streamable-http mode, the MCP server will be available at http://{host}:{port}/mcp. For the default configuration, this would be http://0.0.0.0:8081/mcp.

Installation Options

Option 1: Via Smithery

To install akshare-one-mcp for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @zwldarren/akshare-one-mcp --client claude

Option 2: Via uv

Install uv if you haven't already.

uvx installs the package from PyPI and runs it on Python 3.12 or newer.

Add the following configuration to your MCP Client settings:

{
  "mcpServers": {
    "akshare-one-mcp": {
      "command": "uvx",
      "args": ["akshare-one-mcp"]
    }
  }
}

Option 3: Local Development Setup

  1. Clone this repository:

    git clone https://github.com/zwldarren/akshare-one-mcp.git
    cd akshare-one-mcp
    
  2. Install dependencies:

    uv sync
    
  3. Add the following configuration to your MCP Client settings:

    {
      "mcpServers": {
        "akshare-one-mcp": {
          "command": "uv",
          "args": [
            "--directory",
            "/path/to/akshare-one-mcp",
            "run",
            "akshare-one-mcp"
          ]
        }
      }
    }
    

Technical Indicators Reference

The get_hist_data tool supports the following technical indicators:

Trend Indicators

  • Moving Averages: SMA (Simple Moving Average), EMA (Exponential Moving Average)
  • Trend Tracking: MACD (Moving Average Convergence Divergence), APO (Absolute Price Oscillator), PPO (Percentage Price Oscillator)
  • Rate of Change: ROC (Rate of Change), ROCP (Rate of Change Percentage), ROCR (Rate of Change Ratio), ROCR100
  • Other: TRIX (Triple Exponential Moving Average), ULTOSC (Ultimate Oscillator)

Momentum Indicators

  • Relative Strength: RSI (Relative Strength Index), CCI (Commodity Channel Index)
  • Trend Strength: ADX (Average Directional Index), DX (Directional Index)
  • Money Flow: MFI (Money Flow Index), MOM (Momentum), CMO (Chande Momentum Oscillator), WILLR (Williams %R)

Volatility Indicators

  • Bollinger Bands: BOLL (Bollinger Bands)
  • Average True Range: ATR (Average True Range)
  • Parabolic SAR: SAR (Parabolic Stop and Reverse)

Volume Indicators

  • Volume: OBV (On-Balance Volume), AD (Accumulation/Distribution Line), ADOSC (Accumulation/Distribution Oscillator)

Other Indicators

  • Stochastic: STOCH (Stochastic Oscillator)
  • Aroon: AROON (Aroon Indicator), AROONOSC (Aroon Oscillator)
  • Balance of Power: BOP (Balance of Power)
  • Directional Indicators: MINUS_DI, MINUS_DM, PLUS_DI, PLUS_DM
  • Time Series Forecast: TSF (Time Series Forecast)

Metadata

Release files for akshare-one-mcp 0.5.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for akshare-one-mcp 0.5.0
File Size Uploaded Provenance
akshare_one_mcp-0.5.0.tar.gz 10.5 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for akshare-one-mcp 0.5.0
File Interpreter ABI Platform
akshare_one_mcp-0.5.0-py3-none-any.whl Python 3 none any Details

Total release size: 22.3 kB

Release files / akshare_one_mcp-0.5.0.tar.gz

Download URL akshare_one_mcp-0.5.0.tar.gz
Size 10.5 kB
Tags Source
SHA-256 checksum
How to use checksums
af46197f40934cc5aa55614e78c504802b7888590550c137d340bd45744ab402
BLAKE2b-256 checksum
How to use checksums
73b6f18a3cd98b5cfff0d4a64afb54d6977ff691d6f001dbcfe5b8533e7ce416
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 23, 2026.

Transparency log

Release files / akshare_one_mcp-0.5.0-py3-none-any.whl

Download URL akshare_one_mcp-0.5.0-py3-none-any.whl
Size 11.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
542f9f8fa474740f9b66b3d5121d947200cd8c6a58097d4a76b600b06ff3abbe
BLAKE2b-256 checksum
How to use checksums
e3e244ae6aa9370fc0423ab79d5e138143f11e323501058a92d8e7f6570cb500
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 23, 2026.

Transparency log

Security for akshare-one-mcp 0.5.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for akshare_one_mcp-0.5.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 23, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page