AKShare

io.github.hangeaiagent由 GitHub 账号 hangeaiagent 发布v0.1.1更新于 Oct 24, 2026

Let a model explore AKShare's 1000+ China market data functions on its own — search, inspect, call

已验证STDIO仅桌面金融数据与分析

概览

AI 生成的概览

本地运行的 MCP 服务器,让助手按需搜索、查看并调用 AKShare 的 1000 多个中国市场数据函数。

可以做什么
按关键词搜索 AKShare 函数库,找出能获取某类数据的函数,例如龙虎榜、北向资金持股明细。查看指定函数的签名,了解它需要哪些参数。用参数调用选定的函数并取得返回数据,列名保持原始中文。返回行数受可配置上限约束,被截断时会在结果中明确说明。
适用场景
需要从 AKShare 获取中国市场、宏观、期货、基金或公司治理数据,又不想事先枚举所有接口时适用。最好部署在中国大陆境内的机器上,因为多数上游接口位于境内。
运行要求
以本地进程运行,可用 uvx 从 PyPI 包安装,也可构建并运行 Docker 镜像(约 1.5G,构建需数分钟)。可选环境变量 AKSHARE_MCP_HOST、AKSHARE_MCP_PORT 和 AKSHARE_MAX_ROWS(默认 200)。需要能访问上游数据站点的网络,最好在境内或配置代理。无需鉴权或 API 密钥。
安装前请注意
该服务没有鉴权,且会向第三方站点发起请求,因此不要暴露到公网;请绑定内网,或在前方加一层带鉴权的反向代理。调用工具仅限 akshare 模块中公开的可调用属性,但仍会发出真实的外部请求。AKSHARE_MAX_ROWS 不宜设得过大,以免大量结果挤占有用的上下文。

安装

在 SourceWeft 中

  1. 打开 控制台中的 AKShare,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

AKShare MCP

把 AKShare 变成一个你自己跑的能力,接进 Hunter。


为什么不是「数据源」

数据源的模型是一条记录 = 一个 (市场, 数据类型, 接口地址)。

AKShare 有一千多个函数 —— 龙虎榜、十大股东、券商研报、公司治理、 南向资金、宏观、期货、基金……按数据源建模就得枚举一千多条,做不到。

Hunter 原来只从里面挑了 6 条进目录,而那 6 条是我们用得上的,不是你 用得上的。你想查「北向资金持股明细」而我们没挑,你就没辙。

改成能力之后,模型拿到三个工具,自己去找、自己去调:

akshare_search("龙虎榜")                    → 有哪些函数能查这个?akshare_signature("stock_lhb_detail_em")   → 它要什么参数?akshare_call("stock_lhb_detail_em", {...}) → 调它

不需要我们提前枚举。

为什么要你自己跑

AKShare 是 Python 库不是 HTTP 服务,没法在表单里填一个 URL。而且它多数 接口的上游在国内,从境外容器直连经常打不通。


跑起来

bash
cd tools/akshare-mcpdocker build -t akshare-mcp .docker run -d -p 8931:8931 --name akshare-mcp akshare-mcp

镜像大约 1.5G(AKShare 自己拖着 pandas/lxml/beautifulsoup4 一大串), 首次构建要几分钟。

验证:

bash
curl -N http://localhost:8931/sse# 有 SSE 流出来就是起来了(它不会自己结束,Ctrl-C 退出)

接进 Hunter

能力 → 接入一个工具 → 填:

字段值
传输方式sse
地址http://你的地址:8931/sse
需要 key不勾

Hunter 跑在 Docker 里的话,localhost 指的是 Hunter 自己的容器 —— 要填宿主机地址(Linux 上是 172.17.0.1,Docker Desktop 上是 host.docker.internal),或者把两个服务放进同一个 compose 网络。

⚠️ **不要填 Hunter 官方的任何地址。**这个服务存在的意义就是让你不依赖我们。


环境变量

变量默认说明
AKSHARE_MCP_HOST0.0.0.0监听地址
AKSHARE_MCP_PORT8931端口
AKSHARE_MAX_ROWS200单次返回最大行数

AKSHARE_MAX_ROWS 不要调太大:AKShare 有些接口一次几万行,原样塞进模型 上下文会把真正有用的东西挤掉。被截断时返回里会明确说,不会假装那就是全部。


安全

akshare_call 只能调 akshare 模块里公开的、可调用的属性:

  • 名字带 _ 前缀的拒绝
  • 带 . 的(想访问子模块)拒绝
  • 不存在或不可调用的拒绝
  • 不做 eval / exec / 动态 import

它不是通用代码执行入口。

**但仍然不要暴露到公网。**这个服务没有鉴权,而 AKShare 会向第三方站点发 请求 —— 公网上任何人都能借你的机器发请求。绑内网,或者加一层带鉴权的反代。


常见问题

调用超时 / 连接被拒 多数 AKShare 接口的上游在国内。如果这台机器在境外,大部分接口都会失败 —— 把它跑在国内的机器上,或者给容器配代理。

函数名找不到 AKShare 的命名多是英文缩写,硬猜会一直失败:龙虎榜是 stock_lhb_detail_em 不是 stock_dragon_tiger。先 akshare_search 再 akshare_call。

返回的列名是中文 AKShare 的原样返回,我们不改列名 —— 改了之后你对着它的文档会对不上。

来源:tools/akshare-mcp/README.md,提交 4af6d96

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.1.1最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分