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)
Usando pip
Uso
Ejecutando el servidor
Integración con Claude Desktop
Agregue la siguiente configuración a su configuración de Claude Desktop:
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
Estibador
También puedes ejecutar el servidor usando Docker:
Licencia
Instituto Tecnológico de Massachusetts (MIT)