mcpField
A
AKShare MCP Server

AKShare MCP Server

本地服务
github.com/ttjslbz001金融数据5386 周前更新

关于 AKShare MCP Server

AKShare MCP Server 是基于 AKShare 库的 MCP 服务,提供金融数据查询与分析能力。它面向需要中国及全球金融市场数据的用户,可通过 Claude Desktop 调用。

主要功能

  1. 01访问中国及全球金融市场数据
  2. 02通过 MCP 协议接入 Claude Desktop
  3. 03支持多类金融数据查询
  4. 04提供 Docker 运行方式

适用场景

  1. 01查询股票、基金与债券数据
  2. 02获取期货与外汇行情
  3. 03查询宏观经济数据

MCP 相关

该项目是一个 MCP 服务,向 MCP 客户端(如 Claude Desktop)暴露股票、基金、债券、期货、外汇和宏观经济等数据查询工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

AKShare MCP 服务

一个使用 AKShare 库提供金融数据分析功能的模型上下文协议(MCP)服务。

功能

  • 通过 AKShare 获取中国及全球金融市场数据
  • 通过 MCP 协议与 Claude Desktop 集成
  • 支持多种金融数据查询与分析

安装

使用 uv(推荐)
# Clone the repository
git clone https://github.com/yourusername/akshare_mcp_server.git
cd akshare_mcp_server

# Create and activate a virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install dependencies with uv
uv pip install -e .
使用 pip
# Clone the repository
git clone https://github.com/yourusername/akshare_mcp_server.git
cd akshare_mcp_server

# Create and activate a virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install dependencies
pip install -e .

使用方法

运行服务
# Activate the virtual environment
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Run the server
python run_server.py
与 Claude Desktop 集成
  1. 将以下配置添加到 Claude Desktop 的配置文件中:
"mcpServers": {
    "akshare-mcp": {
        "command": "uv",
        "args": [
            "--directory",
            "/path/to/akshare_mcp_server",
            "run",
            "akshare-mcp"
        ],
        "env": {
            "AKSHARE_API_KEY": "<your_api_key_if_needed>"
        }
    }
}
  1. 重启 Claude Desktop
  2. 从可用工具中选择 AKShare MCP 服务

可用工具

AKShare MCP 服务提供以下工具:

  • 股票数据查询
  • 基金数据查询
  • 债券数据查询
  • 期货数据查询
  • 外汇数据查询
  • 宏观经济数据查询
  • 等等……

添加新工具

要向 MCP 服务添加新工具,请按以下步骤操作:

  1. 在 src/mcp_server_akshare/api.py 中添加新的 API 函数:

    async def fetch_new_data_function(param1: str, param2: str = "default") -> List[Dict[str, Any]]:
        """
        Fetch new data type.
        
        Args:
            param1: Description of param1
            param2: Description of param2
        """
        try:
            df = ak.akshare_function_name(param1=param1, param2=param2)
            return dataframe_to_dict(df)
        except Exception as e:
            logger.error(f"Error fetching new data: {e}")
            raise
    
  2. 在 src/mcp_server_akshare/server.py 的枚举中添加新工具:

    class AKShareTools(str, Enum):
        # Existing tools...
        NEW_TOOL_NAME = "new_tool_name"
    
  3. 在 src/mcp_server_akshare/server.py 中导入新函数:

    from .api import (
        # Existing imports...
        fetch_new_data_function,
    )
    
  4. 将工具定义添加到 handle_list_tools() 函数中:

    types.Tool(
        name=AKShareTools.NEW_TOOL_NAME.value,
        description="Description of the new tool",
        inputSchema={
            "type": "object",
            "properties": {
                "param1": {"type": "string", "description": "Description of param1"},
                "param2": {"type": "string", "description": "Description of param2"},
            },
            "required": ["param1"],  # List required parameters
        },
    ),
    
  5. 在 handle_call_tool() 函数中添加工具处理程序:

    case AKShareTools.NEW_TOOL_NAME.value:
        param1 = arguments.get("param1")
        if not param1:
            raise ValueError("Missing required argument: param1")
        
        param2 = arguments.get("param2", "default")
        
        result = await fetch_new_data_function(
            param1=param1,
            param2=param2,
        )
    
  6. 测试新工具:运行服务并向新工具发送请求。

开发

# Install development dependencies
uv pip install -e ".[dev]"

# Run tests
pytest

Docker

你也可以使用 Docker 运行服务:

# Build the Docker image
docker build -t akshare-mcp-server .

# Run the Docker container
docker run -p 8000:8000 akshare-mcp-server

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。