Servidor MCP de AKShare
Un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona capacidades de análisis de datos financieros utilizando la biblioteca AKShare.
Características
Acceso a datos del mercado financiero chino y mundial a través de AKShare
Integración con Claude Desktop mediante el protocolo MCP
Soporte para diversas consultas y análisis de datos financieros
Related MCP server: MCP-BOS
Instalación
Uso de uv (recomendado)
# 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 .Usando 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 .Uso
Ejecutando el servidor
# Activate the virtual environment
source venv/bin/activate # On Windows: venv\Scripts\activate
# Run the server
python run_server.pyIntegración con Claude Desktop
Agregue la siguiente configuración a su configuración de 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>"
}
}
}Reiniciar Claude Desktop
Seleccione el servidor AKShare MCP de las herramientas disponibles
Herramientas disponibles
El servidor AKShare MCP proporciona las siguientes herramientas:
Consultas de datos bursátiles
Consultas de datos de fondos
Consultas de datos de bonos
Consultas de datos de futuros
Consultas de datos de Forex
Consultas de datos macroeconómicos
Y más...
Agregar una nueva herramienta
Para agregar una nueva herramienta al servidor MCP, siga estos pasos:
Agregue una nueva función API en :
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}") raiseAgregue la nueva herramienta a la enumeración en :
class AKShareTools(str, Enum): # Existing tools... NEW_TOOL_NAME = "new_tool_name"Importe la nueva función en :
from .api import ( # Existing imports... fetch_new_data_function, )Agregue la definición de la herramienta a la función :
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 }, ),Agregue el controlador de herramientas en la función :
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, )Pruebe la nueva herramienta ejecutando el servidor y realizando una solicitud a la nueva herramienta.
Desarrollo
# Install development dependencies
uv pip install -e ".[dev]"
# Run tests
pytestEstibador
También puedes ejecutar el servidor usando Docker:
# Build the Docker image
docker build -t akshare-mcp-server .
# Run the Docker container
docker run -p 8000:8000 akshare-mcp-serverLicencia
Instituto Tecnológico de Massachusetts (MIT)
This server cannot be installed
Resources
Looking for Admin?
Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access the admin panel.