AKShare MCP 服务器是一个利用 AKShare 库构建的 Model Context Protocol (MCP) 服务器,专注于提供金融市场数据分析功能,助力用户高效获取和分析各类金融数据。
AKShare MCP 服务器能让你轻松访问金融市场数据。以下是快速启动的步骤:
# 克隆仓库
git clone https://github.com/yourusername/akshare_mcp_server.git
cd akshare_mcp_server
# 创建并激活虚拟环境
python -m venv venv
source venv/bin/activate # Windows 系统请使用:venv\Scripts\activate
# 使用 uv 安装依赖
uv pip install -e .
# 克隆仓库
git clone https://github.com/yourusername/akshare_mcp_server.git
cd akshare_mcp_server
# 创建并激活虚拟环境
python -m venv venv
source venv/bin/activate # Windows 系统请使用:venv\Scripts\activate
# 安装依赖
pip install -e .
# 激活虚拟环境
source venv/bin/activate # Windows 系统请使用:venv\Scripts\activate
# 启动服务器
python run_server.py
"mcpServers": {
"akshare-mcp": {
"command": "uv",
"args": [
"--directory",
"/path/to/akshare_mcp_server",
"run",
"akshare-mcp"
],
"env": {
"AKSHARE_API_KEY": ""
}
}
}
在服务器启动后,你可以直接使用服务器提供的工具进行金融数据查询。例如,在集成到 Claude Desktop 后,在可用工具中选择 AKShare MCP 服务器,即可开始查询股票、基金等数据。
若你想集成到 Claude Desktop 中,可按以下步骤操作:
AKShare MCP 服务器提供了丰富的工具,涵盖了金融市场的多个领域:
要在 MCP 服务器中添加新的工具,可按以下步骤操作:
src/mcp_server_akshare/api.py 中添加一个新的 API 函数:async def fetch_new_data_function(param1: str, param2: str = "default") -> List[Dict[str, Any]]:
"""
获取新数据类型。
参数:
param1: 描述参数 1
param2: 描述参数 2(可选)
"""
try:
df = ak.akshare_function_name(param1=param1, param2=param2)
return dataframe_to_dict(df) # 假设 df 是 DataFrame 对象
except Exception as e:
raise ValueError(f"获取数据时发生错误:{str(e)}")
src/mcp_server_akshare/api.py 中注册新函数:from typing import List, Dict, Any
def register_new_function():
from .server import server
from ..commands.base import command
@command()
async def new_command(self):
# 在这里实现你的命令逻辑
pass
server.commands.append(new_command)
src/mcp_server_akshare/__init__.py 中导入新函数:from .api import fetch_new_data_function, register_new_function
# 注册新功能
register_new_function()
src/mcp_server_akshare/: 包含 MCP 服务器的核心实现。src/mcp_server_akshare/api.py: 定义了与 AKShare 的接口和数据处理逻辑。src/mcp_server_akshare/server.py: 实现了 MCP 服务器的主逻辑。src/mcp_server_akshare/commands/: 包含各种命令的实现。# 构建镜像
docker build -t akshare-mcp-server .
# 启动容器
docker run -p 8000:8000 --name akshare-mcp-server akshare-mcp-server
本项目采用 MIT 许可证。