SEC EDGAR MCP Server

Proporciona a los asistentes de IA acceso a la base de datos SEC EDGAR a través de su API.

Documentación

Servidor MCP SEC EDGAR

License: MIT

Este es un servidor MCP (Model Context Protocol) basado en .NET que permite a los asistentes de IA acceder a la base de datos SEC EDGAR a través de su API. El servidor proporciona una interfaz estandarizada para que los asistentes de IA recuperen información de empresas, presentaciones SEC y datos de estados financieros.

Nota: Este servidor utiliza stdio (entrada/salida estándar) para la comunicación, lo que facilita la integración con asistentes de IA que generan procesos secundarios.

Aviso legal

Este software se proporciona "tal cual", sin garantía de ningún tipo, expresa o implícita, incluyendo pero no limitado a las garantías de comerciabilidad, idoneidad para un propósito particular y no infracción. En ningún caso los autores o titulares de derechos de autor serán responsables de cualquier reclamo, daño u otra responsabilidad, ya sea en una acción de contrato, agravio o de otro tipo, que surja, esté relacionada o se derive del software o del uso u otros tratos con el software.

Este proyecto no está afiliado, respaldado ni patrocinado por la Comisión de Bolsa y Valores de los Estados Unidos (SEC). Todos los datos recuperados a través de esta herramienta están sujetos a los términos de servicio y políticas de uso de la SEC.

Características

  • Buscar empresas por símbolo de cotización o nombre
  • Obtener información detallada de la empresa por número CIK
  • Recuperar presentaciones SEC recientes de una empresa
  • Acceder a datos de estados financieros de informes de empresas
  • Generar análisis financieros y comparaciones

Requisitos previos

  • SDK de .NET 8.0 o posterior
  • Conexión a internet para acceder a la API SEC EDGAR

Configuración

La aplicación utiliza appsettings.json para la configuración. La configuración más importante es el UserAgent para las solicitudes de la API SEC EDGAR, que debe incluir su información de contacto según las pautas de la SEC:

{
  "EdgarApi": {
    "UserAgent": "EdgarMcpServer/1.0.0 (Your Name; your-email@example.com)"
  }
}

Compilación y ejecución

Compilar el proyecto

dotnet build -c Release

Ejecutar el servidor

dotnet run --project EdgarMcpServer/EdgarMcpServer.csproj

El servidor leerá comandos MCP desde stdin y escribirá respuestas en stdout. Los mensajes de error se escriben en stderr.

Comunicación del protocolo MCP

El servidor implementa el Protocolo de Contexto de Modelo utilizando comunicación stdio. Envíe solicitudes JSON a stdin y reciba respuestas JSON desde stdout.

Listar recursos disponibles

Envíe el siguiente JSON a stdin:

{
  "method": "list_resources"
}

Devuelve una lista de funciones disponibles que se pueden invocar.

Invocar una función

Envíe el siguiente JSON a stdin:

{
  "method": "invoke",
  "params": {
    "name": "function-name",
    "parameters": {
      "param1": "value1",
      "param2": "value2"
    }
  }
}

Funciones disponibles

search-company

Buscar una empresa por símbolo de cotización o nombre.

Parámetros:

  • query: El término de búsqueda (símbolo de cotización o nombre de la empresa)

get-company-info

Obtener información detallada sobre una empresa por su número CIK.

Parámetros:

  • cik: El número de Clave de Índice Central (CIK) de la empresa

get-company-filings

Obtener presentaciones SEC recientes de una empresa por número CIK.

Parámetros:

  • cik: El número de Clave de Índice Central (CIK) de la empresa
  • form (opcional): Filtrar por tipo de formulario (por ejemplo, "10-K", "10-Q")
  • limit (opcional): Número máximo de presentaciones a devolver (predeterminado: 10)

get-financial-statement

Obtener datos de estados financieros de una empresa.

Parámetros:

  • cik: El número de Clave de Índice Central (CIK) de la empresa
  • concept: El concepto/métrica financiera a recuperar (por ejemplo, "Revenue", "NetIncome")
  • fiscalPeriod: El período fiscal (por ejemplo, "Q1", "FY")
  • fiscalYear: El año fiscal (por ejemplo, 2023)

Ejemplos de indicaciones para investigación de empresas

Aquí hay algunos ejemplos de indicaciones que puede usar con asistentes de IA que tengan acceso al servidor MCP Edgar:

Información básica de la empresa

What is Apple's CIK number?
Get me basic information about Microsoft Corporation.
Find the ticker symbol for Alphabet Inc.

Análisis de estados financieros

What was Apple's net income for fiscal year 2023?
Compare the revenue growth of Microsoft and Apple over the last 3 years.
Calculate the profit margin for Tesla in their most recent 10-K filing.
What is Amazon's debt-to-equity ratio based on their latest financial statements?

Investigación de presentaciones SEC

Get the most recent 10-K filing for Apple Inc.
Find all 8-K filings for Tesla from the past year.
Summarize the risk factors mentioned in Microsoft's latest annual report.
What acquisitions did Meta Platforms report in their recent SEC filings?

Métricas y ratios financieros

Create a spreadsheet with key financial metrics for Apple Inc.
Calculate the return on assets (ROA) for Microsoft based on their latest 10-K.
Generate a consolidated statement of operations for Amazon for the past 3 years.
What is the current ratio for Google based on their latest quarterly report?

Comparaciones de la industria

Compare the profit margins of Apple, Microsoft, and Google.
Which tech company has the highest revenue growth over the past 2 years?
Create a spreadsheet comparing the R&D expenses of major pharmaceutical companies.
How does Tesla's debt-to-equity ratio compare to other automotive manufacturers?

Integración con asistentes de IA

Para integrar este servidor MCP con un asistente de IA, agregue el servidor a su archivo de configuración MCP. La configuración varía ligeramente según el asistente de IA que esté utilizando.

Configuración MCP genérica

{
  "servers": [
    {
      "name": "edgar",
      "command": "/path/to/EdgarMcpServer"
    }
  ]
}

Configuración de Windsurf (Cascade)

Para el asistente de IA Cascade de Windsurf, puede configurar el servidor MCP Edgar en su archivo .cascade/config.json:

{
  "mcpServers": {
    "edgar": {
      "command": "/path/to/EdgarMcpServer/bin/Release/net8.0/EdgarMcpServer",
      "env": {
        "EDGAR_API_USER_AGENT": "EdgarMcpServer/1.0.0 (AI Assistant; you@example.com)"
      }
    }
  }
}

Configuración de Claude

Para el asistente de IA Claude, puede configurar el servidor MCP Edgar en la configuración de Claude:

{
  "mcpServers": {
    "edgar": {
      "command": "/path/to/EdgarMcpServer/bin/Release/net8.0/EdgarMcpServer",
      "env": {
        "EDGAR_API_USER_AGENT": "EdgarMcpServer/1.0.0 (AI Assistant; you@example.com)"
      }
    }
  }
}

El asistente de IA generará el servidor como un proceso secundario y se comunicará con él a través de stdio.

Información de la API SEC EDGAR

Este proyecto utiliza la API SEC EDGAR v1.0 (a partir de mayo de 2025). La API SEC EDGAR proporciona acceso a presentaciones de empresas y datos financieros a través de varios endpoints:

  • API de hechos de empresas: https://data.sec.gov/api/xbrl/companyfacts/CIK{cik}.json
  • API de conceptos de empresas: https://data.sec.gov/api/xbrl/companyconcept/CIK{cik}/us-gaap/{concept}.json
  • API de presentaciones: https://data.sec.gov/submissions/CIK{cik}.json

Para obtener información detallada sobre la API SEC EDGAR, consulte la documentación oficial:

Al solucionar problemas de API, verifique lo siguiente:

  1. Asegúrese de que su encabezado User-Agent esté configurado correctamente con su información de contacto
  2. Verifique que no esté excediendo los límites de velocidad de la SEC (10 solicitudes por segundo)
  3. Confirme que el número CIK esté formateado correctamente con ceros a la izquierda (10 dígitos en total)
  4. Consulte el Estado del sistema EDGAR de la SEC para ver si hay interrupciones

Notas importantes

  • La API SEC EDGAR tiene límites de velocidad y pautas de uso. Revise la documentación de la API de la SEC para obtener detalles.
  • Este servidor no implementa autenticación. Si se implementa en producción, considere agregar medidas de seguridad apropiadas.
  • Los datos financieros deben verificarse con fuentes oficiales para la toma de decisiones críticas.

Lanzamientos

El Servidor MCP SEC EDGAR se compila y lanza automáticamente usando GitHub Actions. Los lanzamientos están disponibles para:

  • Windows (x64)
  • macOS (Apple Silicon/ARM64)

Cada lanzamiento incluye ejecutables autónomos que no requieren que .NET esté instalado en la máquina de destino.

Crear un lanzamiento

Los lanzamientos se pueden activar de dos maneras:

  1. Lanzamiento basado en etiquetas: Envíe una etiqueta con el formato v* (por ejemplo, v1.0.0) al repositorio

    git tag v1.0.0
    git push origin v1.0.0
    
  2. Lanzamiento manual: Active el flujo de trabajo "Build and Release" manualmente desde la pestaña GitHub Actions y especifique un número de versión

El flujo de trabajo de GitHub Actions compilará la aplicación para todas las plataformas compatibles, creará archivos y los publicará como activos de lanzamiento.

Contribuciones

¡Las contribuciones para mejorar el Servidor MCP SEC EDGAR son bienvenidas! Así es como puede contribuir:

  1. Haga un fork del repositorio: Haga clic en el botón Fork en la parte superior derecha de la página del repositorio
  2. Clone su fork: git clone https://github.com/YOUR_USERNAME/edgar-mcp.git
  3. Cree una rama: git checkout -b feature/your-feature-name
  4. Haga sus cambios: Implemente su característica o corrección de errores
  5. Pruebe sus cambios: Asegúrese de que sus cambios no rompan la funcionalidad existente
  6. Confirme sus cambios: git commit -m "Add your commit message here"
  7. Envíe a su fork: git push origin feature/your-feature-name
  8. Envíe una solicitud de extracción: Vaya al repositorio original y haga clic en "New Pull Request"

Asegúrese de que su código siga el estilo existente e incluya pruebas apropiadas. Todas las solicitudes de extracción deben hacerse contra la rama main.

Pautas para solicitudes de extracción

  • Proporcione una descripción clara de los cambios en su PR
  • Incluya los números de problema relevantes en la descripción del PR
  • Actualice la documentación según sea necesario
  • Agregue o actualice pruebas según corresponda
  • Asegúrese de que todas las pruebas pasen antes de enviar

Licencia

Licencia MIT

Copyright (c) 2025 Leopold O'Donnell

Por la presente se otorga permiso, de forma gratuita, a cualquier persona que obtenga una copia de este software y los archivos de documentación asociados (el "Software"), para tratar el Software sin restricción, incluidos, entre otros, los derechos de usar, copiar, modificar, fusionar, publicar, distribuir, sublicenciar y/o vender copias del Software, y para permitir a las personas a quienes se les proporcione el Software hacer lo mismo, sujeto a las siguientes condiciones:

El aviso de copyright anterior y este aviso de permiso se incluirán en todas las copias o partes sustanciales del Software.

EL SOFTWARE SE PROPORCIONA "TAL CUAL", SIN GARANTÍA DE NINGÚN TIPO, EXPRESA O IMPLÍCITA, INCLUIDAS PERO NO LIMITADAS A LAS GARANTÍAS DE COMERCIABILIDAD, IDONEIDAD PARA UN PROPÓSITO PARTICULAR Y NO INFRACCIÓN. EN NINGÚN CASO LOS AUTORES O TITULARES DE DERECHOS DE AUTOR SERÁN RESPONSABLES DE CUALQUIER RECLAMO, DAÑO U OTRA RESPONSABILIDAD, YA SEA EN UNA ACCIÓN DE CONTRATO, AGRAVIO O DE OTRO MODO, QUE SURJA DE, O EN CONEXIÓN CON EL SOFTWARE O EL USO U OTROS TRATOS EN EL SOFTWARE.