io.github.zwldarren/akshare-one-mcp

Official registry Finance and payments

MCP server that provides access to Chinese stock market data using akshare-one

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

PYPI package akshare-one-mcp
Claude Code
claude mcp add akshare-one-mcp -- uvx akshare-one-mcp==0.5.0
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "akshare-one-mcp": {
            "command": "uvx",
            "args": [
                "akshare-one-mcp==0.5.0"
            ]
        }
    }
}

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. AKShare One MCP Server
  2. Overview
  3. Available Tools
  4. Installation & Setup
  5. Technical Indicators Reference

AKShare One MCP Server

English | 中文

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.

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:

DomainOrder tried
Historicaleastmoney → eastmoney_direct → sina → ths
Real-timeeastmoney_direct → eastmoney → xueqiu → ths (the last two are skipped when no symbol is given)
Newseastmoney → ths
Financial statementssina ⇄ 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)

Frequently asked questions

What is io.github.zwldarren/akshare-one-mcp?

MCP server that provides access to Chinese stock market data using akshare-one

How do I install io.github.zwldarren/akshare-one-mcp?

It runs on your machine. In Claude Code: claude mcp add akshare-one-mcp -- uvx akshare-one-mcp==0.5.0. For other clients, paste the JSON configuration from this page into their MCP settings.

Does io.github.zwldarren/akshare-one-mcp need an API key?

Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.

Is io.github.zwldarren/akshare-one-mcp open source?

Yes. Its code is on GitHub under the MIT license.

Who maintains io.github.zwldarren/akshare-one-mcp?

It is published by zwldarren. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.