Signal8 MCP
Datos de presentaciones SEC para acciones estadounidenses: dilución de pequeña capitalización (warrants, ATMs, registros en estantería, convertibles, liquidez de efectivo) citada a la frase de la presentación, más operaciones de insiders y del Congreso, suspensiones y divisiones inversas.
Servidor MCP alojado
npx add-mcp 'https://mcp.signal8.ai/mcp'Se instala en Claude Code, Codex, Cursor y más
Documentación
@signal8ai/mcp
Servidor MCP (Model Context Protocol) para Signal8 -- datos de inteligencia de presentaciones SEC extraídos con IA.
Brinda a agentes de IA como Claude, Cursor y otras herramientas compatibles con MCP acceso directo a:
- Fundamentos de la empresa (cotizaciones, finanzas, ganancias, flotante, ejecutivos, pares, noticias)
- Análisis de dilución (warrants, convertibles, acciones preferentes, registros de estante, ATMs, líneas de capital y ofertas S-1, cada cifra citada a la presentación SEC de la que se leyó)
- Puntaje de presión de dilución (0-100, siete componentes: capacidad de estante, capacidad ATM/línea de capital, warrants en dinero, proximidad de convertibles, quema de efectivo, dilución histórica, financiamiento tóxico)
- Capacidad de estante reducido (S-3 Instrucción General I.B.6 límite de un tercio del flotante, recalculado a partir del flotante en vivo)
- Pista de efectivo (posición de efectivo, quema mensual, aumentos de capital desde el último balance general)
- Inteligencia (contrapartes, asesores legales, personas con información privilegiada, instituciones, disparadores de ROFR, compras en clúster)
- Inteligencia entre empresas (instituciones con mayor AUM, patrones de asesores legales y personas con información privilegiada entre empresas)
- Monitoreo de cumplimiento (detección de deficiencias de Nasdaq/NYSE, clasificación de cotización)
- Filtrado de empresas (filtros basados en dilución con más de 30 campos)
- Análisis de ETF (tenencias, sectores, países, rendimiento, comparables)
Instalación
npm install -g @signal8ai/mcp
# or use npx (no install needed)
npx @signal8ai/mcp
Configuración
1. Obtén tu clave de API
El acceso a la API y a MCP está incluido con Signal8 Pro ($59/mes, o $588/año). Una cuenta gratuita de Signal8 no puede crear claves de API. Mejora en signal8.ai/pro, luego crea una clave en el portal de desarrolladores en signal8.ai/developer/api-keys.
¿Usas Claude.ai o Claude Desktop? Puedes omitir la clave por completo: agrega el servidor alojado como un conector personalizado e inicia sesión con tu cuenta de Signal8 (consulta Hosted Endpoint).
2. Configura tu cliente MCP
Claude Desktop
Agrega a tu archivo de configuración de Claude Desktop:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"signal8": {
"command": "npx",
"args": ["-y", "@signal8ai/mcp"],
"env": {
"SIGNAL8_API_KEY": "sk_live_your_key_here"
}
}
}
}
Cursor
Agrega a .cursor/mcp.json en la raíz de tu proyecto:
{
"mcpServers": {
"signal8": {
"command": "npx",
"args": ["-y", "@signal8ai/mcp"],
"env": {
"SIGNAL8_API_KEY": "sk_live_your_key_here"
}
}
}
}
Otros clientes MCP
Establece la variable de entorno SIGNAL8_API_KEY y ejecuta:
SIGNAL8_API_KEY=sk_live_your_key_here npx @signal8ai/mcp
Herramientas disponibles (107)
El servidor expone 104 herramientas en vivo en tiempo de ejecución. Las tablas de referencia a continuación son un catálogo representativo agrupado por dominio, no una lista exhaustiva; la sección de Extracciones documenta herramientas que actualmente están deshabilitadas y no registradas en vivo. La lista autoritativa es lo que devuelve tools/list.
Empresas (3 herramientas)
| Herramienta | Descripción |
|---|---|
search_companies | Buscar empresas por nombre o ticker |
get_company_profile | Perfil completo de la empresa (descripción, capitalización de mercado, sector) |
get_company_bundle | Paquete de datos consolidado en una sola llamada |
Datos de la empresa (13 herramientas)
| Herramienta | Descripción |
|---|---|
get_quote | Cotización de acciones en tiempo real (precio, cambio, volumen) |
get_market_metrics | Promedios de volumen, volatilidad, SMAs, dirección de tendencia |
get_short_interest | Datos de interés corto y días para cubrir |
get_float | Composición del flotante, acciones en circulación, % de propiedad |
get_financials | Estado de resultados, balance general, flujo de efectivo |
get_earnings | Historial de ganancias con sorpresas de EPS |
get_executives | Plantilla del equipo ejecutivo y compensación |
get_peers | Empresas pares/comparables |
get_transcripts | Transcripciones de llamadas de ganancias |
get_news | Últimos titulares de noticias de la empresa |
get_analyst_consensus | Calificaciones de analistas y precios objetivo |
get_material_events | Eventos corporativos materiales (presentaciones 8-K) |
get_clinical_trials | Pipeline de ensayos clínicos (biotecnología/farmacéutica) |
Mercado — Multi-ticker (6 herramientas)
| Herramienta | Descripción |
|---|---|
get_quotes_batch | Cotizaciones en tiempo real por lotes para hasta 200 tickers (POST) |
get_quotes_universe | Cotizaciones para un universo de índice completo (sp500/ndx/dji) |
get_index_snapshot | Instantáneas de tickers en masa (precio, cambio diario, % de cambio) |
get_sector_etf_snapshot | Instantánea de los 11 ETF sectoriales SPDR con etiquetas de sector |
get_top_movers | Mayores ganadores / perdedores / más activos por volumen (con ventana opcional session) |
get_market_breadth | Avances/retrocesos, % por encima de SMA50/200, conteos de máximos/mínimos de 52 semanas |
Calendario (5 herramientas)
| Herramienta | Descripción |
|---|---|
get_earnings_calendar | Próximas/recientes publicaciones de ganancias entre dos fechas |
get_economic_calendar | Eventos macroeconómicos/económicos (IPC, FOMC, empleo, PIB) por fecha y país |
get_filing_calendar | Calendario de fechas límite de presentaciones SEC 10-K / 10-Q por universo |
get_lockup_expirations | Próximas expiraciones de bloqueo de IPO/secundarias |
get_recent_material_filings | Presentaciones 8-K materiales recientes por universo de índice y códigos de ítem |
Presentaciones SEC y archivo EDGAR (10 herramientas)
Respaldado por el propio archivo de presentaciones SEC EDGAR de Signal8 — el rango mantenido del archivo (consulta archiveFrom en cada respuesta; actualmente desde finales de 2021, expandiéndose hacia 2016 a medida que se completa el relleno de historial), indexado a texto completo y actualizado durante el día. Las presentaciones anteriores a archiveFrom pueden estar ausentes, por lo que un resultado vacío no es prueba de que una presentación nunca se realizó. Las filas solo de registro (bodyStored: false) contienen metadatos pero sin cuerpo.
| Herramienta | Descripción |
|---|---|
search_sec_filings | Presentaciones por CIK, formulario, fecha, ítems 8-K, formularios excluidos, q de texto completo (match exacto/derivado, sort más reciente/relevancia, facets conteos por formulario/año/ítem 8-K, understand activado/desactivado, section búsqueda, exhibitTypes — consulta la sintaxis de consulta a continuación), y filtros de empresa (capitalización de mercado, flotante, precio, sector, industria, bolsa, tipo de empresa, emisor extranjero, IPO reciente) |
get_filing_documents | Cada documento en una presentación (tipo, tamaño, stored, secUrl) con los filingId / exhibitId para leer cada uno |
get_filing_structured | Transacciones Formulario 3/4/5 analizadas, tenencias 13F (valores normalizados a dólares), XML SCHEDULE 13D/G |
get_filing_document | Texto completo de una presentación por id de presentación |
get_filing_exhibits | Anexos legibles de una presentación, con ids |
get_exhibit_content | Texto completo de un anexo |
search_filing_text | Búsqueda de texto completo a nivel de anexo que devuelve el pasaje coincidente (match exacto/derivado, sort, section, exhibitTypes) |
lookup_accession_number | Número de acceso → id de presentación y metadatos |
screen_sec_filings | Presentaciones entre empresas por sector / industria / bolsa / capitalización de mercado |
screen_sec_filings_performance | Retornos de precio +1/+3/+7/+30 días después de las presentaciones, con agregados |
Sintaxis de consulta de texto completo (search_sec_filings.q, search_filing_text.pattern):
las palabras sin comillas deben aparecer todas; "quoted phrase" para redacción exacta; OR entre alternativas; -word para excluir; w1 NEAR/10 w2 (o NEAR(10), NEAR simple = 10) para proximidad; word* para un prefijo de 4+ letras; $AAPL o un ticker capitalizado limita a esa empresa; un código de formulario (8-K), item 5.02 / 8-K 1.05 y un año simple limitan a ese formulario / ítem 8-K / año. La página 1 de relevancia muestra algunas presentaciones por empresa; meta.diversity nombra quién tiene más. Cómo el archivo interpretó la consulta se devuelve en meta.understanding (pasa understand: false para buscar las palabras literalmente). facets: true agrega conteos por formulario / año / ítem 8-K sobre todo el conjunto de resultados — ausente cuando no se mide, nunca cero.
Búsqueda de sección + tipos de anexos (ambas herramientas de búsqueda): section restringe la coincidencia a business, risk_factors, cybersecurity, legal_proceedings, mdna, market_risk, controls, ex99 (comunicados de prensa) o un ítem 8-K (item_5_02); exhibitTypes mantiene presentaciones con, por ejemplo, EX-10 (contratos materiales) o EX-99.1. Una sección se aplica solo cuando meta.sections lo indica — de lo contrario, meta.unsupported explica que se buscó en toda la presentación. Las filas pueden contener matchedSections (ausente = no medido).
Filtros de empresa en search_sec_filings siguen las mismas reglas que la página signal8.ai/sec-filings: se aplican solo desde el archivo, contra el CIK del propio presentador, solo en formularios presentados por el emisor (Formulario 4, 144 y SCHEDULE 13D/G se descartan y se informan en companyFilter.droppedForms). Las empresas sin valor medido para un filtro se excluyen y se cuentan en companyFilter.unknown. Los valores desconocidos devuelven un 400 que enumera los nombres válidos. Si el archivo no puede responder, la llamada falla con COMPANY_FILTER_NOT_APPLIED y una razón en lugar de devolver filas sin filtrar.
Valores 13F: la SEC cambió la unidad de un <value> de 13F de miles de dólares a dólares completos para presentaciones el 2023-01-03 o después. get_filing_structured devuelve valueUsd / totalMarketValueUsd normalizados a dólares (nulo cuando la unidad no se puede determinar) junto al valueThousands sin procesar, y valueUnit indica en qué unidad está el número sin procesar.
Extracciones (4 herramientas)
| Herramienta | Descripción |
|---|---|
get_extractions | Datos de presentaciones SEC extraídos con IA (13 tipos) |
get_filing_extractions | Extracciones para una presentación SEC específica |
get_extraction_dashboard | Analíticas de extracción entre empresas |
get_extraction_by_type | Filtrar extracciones por tipo (warrants, convertibles, etc.) |
Dilución (7 herramientas)
Análisis de dilución de pequeña capitalización leído directamente de presentaciones SEC. Cada cifra lleva el número de acceso, la fecha de presentación y la oración citada de la que proviene. Incluido en Signal8 Pro. Llama a get_dilution_coverage primero: es la forma más económica de saber si hay algo que obtener.
| Herramienta | Descripción |
|---|---|
get_dilution_coverage | Si un ticker tiene un análisis de dilución, qué tan reciente es y por qué no si no lo tiene |
get_dilution_risk | Puntaje de presión de dilución con su desglose de siete componentes y niveles de riesgo. Un puntaje parcial es de scoreMaxMeasured (nunca reescalar a /100); overheadSupply es la dilución potencial total excluyendo estante (warrants/convertibles brutos + ATM/línea de capital/S-1 al precio actual, details.overheadSupplyBasis); los niveles nombrados en levelsLowerBoundScope son pisos ("al menos") cuando levelsAreLowerBound es verdadero; details.levelBounds da el piso, techo y mejor estimación de cada nivel (un nivel cuyo piso y techo coinciden es exacto) |
get_dilution_snapshot | Nuevas acciones potenciales y % de acciones en circulación, posición de efectivo y pista, flotante |
get_dilution_instruments | Filas de una familia de instrumentos con citas SEC por campo (warrants, convertibles, preferentes, estantes, atms, elocs, s1_offerings, equity_plans, exchangeables, recent_offerings) |
get_baby_shelf_capacity | Estante reducido S-3 I.B.6: cuánto puede recaudar el emisor de su estante ahora mismo |
get_dilution_performance | Cómo operó la acción después de que cada oferta pasada se fijó o cerró |
get_dilution_history | Series de acciones en circulación y efectivo con superposiciones de ofertas |
No medido no es cero. Una cifra nula, retenida o no disponible significa que Signal8 no la midió. Nunca significa que la empresa no tiene warrants, estante o dilución, y las descripciones de las herramientas se lo indican al modelo.
Usa el prompt explain_dilution para recorrer el panorama de dilución de un ticker en inglés sencillo.
Inteligencia — Por empresa (12 herramientas)
| Herramienta | Descripción |
|---|---|
get_counterparties | Relaciones de contraparte resueltas por entidad |
get_counsel | Compromisos de asesores legales con taxonomía de roles |
get_insiders | Descubrimiento y patrones de negociación de personas con información privilegiada |
get_ownership | Propiedad unificada (Formulario 4 + 13F + 13D/G) |
get_rofr_triggers | Detección de disparadores de ejercicio de ROFR |
get_institutions | Tenedores institucionales de presentaciones 13F |
get_institution_detail | Información detallada para una institución específica (por CIK) |
get_institution_holdings | Tenencias completas de cartera para una institución |
get_banks | Relaciones con bancos de inversión de presentaciones SEC |
get_legal_counsels | Relaciones de asesores legales con nombres de socios |
get_insider_transactions | Historial detallado de transacciones del Formulario 4 |
get_insider_cluster_buys | Detección de patrones de compra en clúster (3+ personas con información privilegiada en 14 días) |
Inteligencia — Entre Empresas (3 herramientas)
| Herramienta | Descripción |
|---|---|
get_institution_top_aum | Principales tenedores institucionales por AUM en todas las empresas |
get_counsel_cross_company | Compromisos de firmas legales en múltiples empresas |
get_insider_cross_company | Patrones de negociación de información privilegiada en múltiples empresas |
Cumplimiento (4 herramientas)
| Herramienta | Descripción |
|---|---|
get_compliance | Evaluación completa de cumplimiento |
get_deficiencies | Detección de deficiencias de cotización |
get_compliance_alerts | Alertas de cumplimiento activas |
get_listing_classification | Clasificación de cotización en bolsa |
Criba (2 herramientas)
| Herramienta | Descripción |
|---|---|
get_screener_fields | Descubra los filtros de criba disponibles |
screen_companies | Criba de empresas con conciencia de dilución |
Eventos y ATM (2 herramientas)
| Herramienta | Descripción |
|---|---|
get_events | Eventos corporativos unificados |
get_atm_activity | Monitoreo de programas ATM |
ETF (1 herramienta)
| Herramienta | Descripción |
|---|---|
get_etf_bundle | Datos ETF agregados (perfil, tenencias, sectores, rendimiento) |
Inteligencia de Mercado — Referencia de Herramientas
Herramientas de calendario y mercado de múltiples tickers que operan sobre todo el universo en lugar de una sola empresa. La herramienta de un solo ticker get_quote se incluye aquí por completitud; el resto se agregaron en el lanzamiento de Inteligencia de Mercado.
get_quote
Cotización en tiempo real para un solo ticker (precio, cambio, volumen, rango del día).
Entradas:
| Nombre | Tipo | Requerido | Descripción |
|---|---|---|---|
| ticker | string | sí | Símbolo del ticker (p. ej. AAPL) |
Salida de muestra (horario regular de negociación, 9:30 a. m.–4:00 p. m. ET):
{
"data": {
"ticker": "AAPL",
"currentPrice": 178.42,
"change": 2.15,
"changePercent": 1.22,
"high": 179.10,
"low": 176.80,
"open": 177.05,
"previousClose": 176.27,
"preMarketPrice": null,
"preMarketChangePercent": null,
"afterHoursPrice": null,
"afterHoursChangePercent": null,
"timestamp": 1714492800
}
}
Salida de muestra (horario extendido — pre-mercado o después del cierre):
{
"data": {
"ticker": "AAPL",
"currentPrice": 178.42,
"change": 2.15,
"changePercent": 1.22,
"high": 179.10,
"low": 176.80,
"open": 177.05,
"previousClose": 176.27,
"preMarketPrice": 179.05,
"preMarketChangePercent": 0.35,
"afterHoursPrice": 178.90,
"afterHoursChangePercent": 0.27,
"timestamp": 1714492800
}
}
Ventanas de horario extendido (acciones de EE. UU., ET): pre-mercado 4:00 a. m.–9:30 a. m., después del cierre 4:00 p. m.–8:00 p. m. Fuera de esas ventanas,
preMarketPrice,preMarketChangePercent,afterHoursPriceyafterHoursChangePercentsonnull. En la práctica, solo un par se completa a la vez dependiendo de la ventana actual — el segundo ejemplo muestra ambos completados solo para ilustración.
Caso de uso: "¿A cuánto está cotizando AAPL ahora mismo?"
get_quotes_batch
Obtenga cotizaciones en tiempo real de hasta 200 tickers en una sola llamada. Respaldado por POST /api/v1/public/market/quotes. Los tickers ausentes del flujo de datos ascendente se asignan a null.
Entradas:
| Nombre | Tipo | Requerido | Descripción |
|---|---|---|---|
| tickers | string[] | sí | 1–200 símbolos de ticker |
Salida de muestra:
{
"data": {
"count": 3,
"quotes": {
"AAPL": { "ticker": "AAPL", "currentPrice": 178.42, "changePercent": 1.22 },
"MSFT": { "ticker": "MSFT", "currentPrice": 412.10, "changePercent": 0.41 },
"NVDA": null
}
}
}
Caso de uso: "Obtenga cotizaciones en vivo de toda mi lista de seguimiento de 50 tickers en una sola llamada."
get_quotes_universe
Cotizaciones de todos los constituyentes de un universo de índice conocido (S&P 500, Nasdaq 100 o Dow 30).
Entradas:
| Nombre | Tipo | Requerido | Descripción |
|---|---|---|---|
| universe | enum | sí | Uno de sp500, ndx, dji |
Salida de muestra:
{
"data": {
"universe": "dji",
"count": 30,
"quotes": {
"AAPL": { "currentPrice": 178.42, "changePercent": 1.22 },
"MSFT": { "currentPrice": 412.10, "changePercent": 0.41 }
}
}
}
Caso de uso: "Dame una instantánea en vivo de cada componente del Dow 30."
get_index_snapshot
Instantánea diaria masiva (OHLC, volumen, % de cambio) para una lista explícita de tickers (máx. 50) o el universo completo rastreado cuando se omite.
Entradas: ninguna requerida (consulta opcional tickers cuando se llama vía REST)
Salida de muestra:
{
"data": {
"count": 2,
"snapshots": [
{ "ticker": "SPY", "close": 512.34, "changePercent": 0.42, "volume": 78321000 },
{ "ticker": "QQQ", "close": 438.21, "changePercent": 0.55, "volume": 41902000 }
]
}
}
Caso de uso: "Muéstrame una instantánea única de dónde cerraron los ETF de índices."
get_sector_etf_snapshot
Instantánea de los 11 ETF sectoriales SPDR (XLK, XLF, XLV, XLY, XLP, XLE, XLI, XLB, XLRE, XLU, XLC) con una etiqueta sector por fila. Útil para vistas de rotación sectorial.
Entradas: ninguna
Salida de muestra:
{
"data": {
"count": 11,
"sectors": [
{ "ticker": "XLK", "sector": "Technology", "close": 218.40, "changePercent": 0.85 },
{ "ticker": "XLF", "sector": "Financials", "close": 41.23, "changePercent": -0.12 }
]
}
}
Caso de uso: "¿Qué sectores lideran y cuáles se quedan atrás hoy?"
get_top_movers
Principales movimientos del mercado por dirección (ganadores, perdedores o más activos por volumen), calculados a partir de ticker_snapshots. Excluye warrants/unidades/ETF/fondos.
Entradas:
| Nombre | Tipo | Requerido | Descripción |
|---|---|---|---|
| direction | enum | sí | gainers, losers o active |
| limit | integer | no | 1–100 (se aplica el valor predeterminado del backend cuando se omite) |
| session | enum | no | premarket (4:00–9:30 a. m. ET), regular (predeterminado; cierre a cierre) o afterhours (4:00–8:00 p. m. ET). Use pre-mercado/después del cierre al publicar fuera del horario regular para que las clasificaciones reflejen la ventana en vivo. |
Salida de muestra:
{
"data": {
"direction": "gainers",
"session": "regular",
"count": 2,
"movers": [
{ "rank": 1, "ticker": "XYZ", "name": "Acme Corp", "price": 12.34, "changePercent": 42.1, "volume": 12000000, "marketCap": 350000000, "isETF": false },
{ "rank": 2, "ticker": "ABC", "name": "ABC Inc", "price": 5.62, "changePercent": 31.8, "volume": 8400000, "marketCap": 120000000, "isETF": false }
]
}
}
Caso de uso: "¿Cuáles son los 10 principales ganadores de hoy?"
get_market_breadth
Agregados de amplitud de mercado (conteos y proporción de avances/descensos, % de constituyentes cotizando por encima de su 50DMA / 200DMA, y conteos de nuevos máximos/mínimos de 52 semanas) para un universo elegido. Solo punto en el tiempo — sin amplitud histórica.
Entradas:
| Nombre | Tipo | Requerido | Descripción |
|---|---|---|---|
| universe | enum | no | sp500 (predeterminado), ndx o all |
Salida de muestra:
{
"data": {
"universe": "sp500",
"asOf": "2026-04-30T20:00:00.000Z",
"advancers": 312,
"decliners": 175,
"unchanged": 16,
"advanceDeclineRatio": 1.7828571428571428,
"pctAbove50DMA": 0.642,
"pctAbove200DMA": 0.561,
"new52wHighs": 18,
"new52wLows": 4
}
}
Caso de uso: "¿Cuántos nombres del S&P 500 están por encima de su 200DMA ahora mismo?" o "Agrega un encabezado de una línea sobre el estado del mercado al comentario de hoy en el tweet."
get_earnings_calendar
Publicaciones de ganancias prospectivas y recientes entre dos fechas. Opcionalmente, filtre a una lista de tickers.
Entradas:
| Nombre | Tipo | Requerido | Descripción |
|---|---|---|---|
| from | string (YYYY-MM-DD) | sí | Inicio de la ventana |
| to | string (YYYY-MM-DD) | sí | Fin de la ventana |
| tickers | string[] | no | Filtro opcional de tickers |
Salida de muestra:
{
"data": {
"events": [
{ "ticker": "AAPL", "date": "2026-05-02", "time": "AMC", "epsEstimate": 1.50, "revenueEstimate": 90100000000 }
],
"total": 1,
"limit": 50,
"offset": 0
}
}
Caso de uso: "¿Qué mega-capitalizaciones reportan ganancias la próxima semana?"
get_economic_calendar
Eventos macroeconómicos (IPC, FOMC, NFP, PIB, etc.) entre dos fechas, filtrados por país y nivel de impacto.
Entradas:
| Nombre | Tipo | Requerido | Descripción |
|---|---|---|---|
| from | string (YYYY-MM-DD) | sí | Inicio de la ventana |
| to | string (YYYY-MM-DD) | sí | Fin de la ventana |
| country | string (ISO-2) | no | Predeterminado a US |
Salida de muestra:
{
"data": {
"events": [
{ "date": "2026-05-07", "country": "US", "event": "FOMC Rate Decision", "impact": "High", "actual": null, "forecast": "5.25%", "previous": "5.25%" }
],
"total": 1
}
}
Caso de uso: "¿Qué eventos de alto impacto en EE. UU. ocurren esta semana?"
get_filing_calendar
Calendario prospectivo de fechas límite de presentación 10-K / 10-Q ante la SEC por universo de índice. Las fechas límite se calculan a partir del último período reportado de cada empresa + compensación por estado de presentador.
Entradas:
| Nombre | Tipo | Requerido | Descripción |
|---|---|---|---|
| from | string (YYYY-MM-DD) | no | Predeterminado hoy |
| to | string (YYYY-MM-DD) | no | Predeterminado hoy + 45 días |
| universe | enum | no | sp500, ndx, dji o all (predeterminado) |
| formTypes | string[] | no | Subconjunto de ["10-K", "10-Q"] |
Salida de muestra:
{
"data": {
"rows": [
{
"ticker": "AAPL", "companyName": "Apple Inc.",
"formType": "10-Q", "periodEnd": "2026-03-29",
"deadline": "2026-05-13", "daysUntilDeadline": 13,
"filerStatus": "large_accelerated"
}
],
"count": 1,
"window": { "from": "2026-04-30", "to": "2026-06-14" },
"universe": "sp500",
"formTypes": ["10-K", "10-Q"]
}
}
Caso de uso: "¿Qué nombres del S&P 500 tienen una fecha límite de 10-Q en las próximas dos semanas?"
get_lockup_expirations
Vencimientos de bloqueo de IPO/secundarias próximos dentro de una ventana de fechas. Derivado de extracciones de términos de suscripción (S-1 / F-1 / 424B*) — la cobertura es parcial; consulte meta.coveragePercent.
Entradas:
| Nombre | Tipo | Requerido | Descripción |
|---|---|---|---|
| from | string (YYYY-MM-DD) | no | Predeterminado hoy |
| to | string (YYYY-MM-DD) | no | Predeterminado hoy + 90 días |
| universe | enum | no | sp500, ndx, dji o all (predeterminado) |
Salida de muestra:
{
"data": {
"rows": [
{
"ticker": "NEWCO", "companyName": "NewCo Inc.",
"lockupEndDate": "2026-05-21", "daysUntilExpiry": 21,
"originalFilingType": "S-1", "sharesUnlocking": 24500000,
"sourceFilingUrl": "https://sec.gov/..."
}
],
"meta": {
"coveragePercent": 38.4,
"totalCandidates": 412,
"parsedCount": 158,
"windowStart": "2026-04-30",
"windowEnd": "2026-07-29",
"universe": "all"
}
}
}
Caso de uso: "¿Hay algún vencimiento de bloqueo de IPO próximamente en los próximos 30 días?"
get_recent_material_filings
Presentaciones 8-K recientes marcadas como materialmente significativas dentro de un universo de índice nombrado, opcionalmente filtradas por códigos de ítem (p. ej. 1.01 acuerdo material, 5.02 cambio de liderazgo). Retrospectiva fijada en 7 días.
Entradas:
| Nombre | Tipo | Requerido | Descripción |
|---|---|---|---|
| universe | enum | sí | sp500, ndx o dji |
| items | string[] | no | Códigos de ítem 8-K (p. ej. ["1.01", "2.01"]) |
| limit | integer | no | 1–200 (predeterminado 50) |
Salida de muestra:
{
"data": {
"universe": "sp500",
"items": ["1.01", "5.02"],
"count": 1,
"filings": [
{
"ticker": "AAPL", "companyName": "Apple Inc.",
"filingDate": "2026-04-29T20:15:00Z", "formType": "8-K",
"items": ["1.01"], "filingUrl": "https://sec.gov/...",
"summary": "Material definitive agreement entered into..."
}
]
}
}
Caso de uso: "¿Hay algún 8-K de cambio de liderazgo del S&P 500 presentado esta semana?"
Recursos
| Recurso | URI | Descripción |
|---|---|---|
| Perfil de Empresa | signal8://companies/{ticker}/profile | Perfil de empresa enriquecido por ticker |
| Tipos de Extracción | signal8://extraction-types | Lista de los 13 tipos de extracción de presentaciones SEC |
Prompts (4)
| Prompt | Argumentos | Descripción |
|---|---|---|
company_due_diligence | ticker (string) | Investigación integral de debida diligencia en 10 pasos |
screening_workflow | sector?, marketCapMax? (string) | Flujo de trabajo de descubrir-cribar-analizar en 5 pasos |
institutional_analysis | ticker (string) | Análisis de propiedad institucional y dinero inteligente en 6 pasos |
explain_dilution | ticker (string) | Cobertura de dilución, puntuación, instantánea e instrumentos explicados en inglés sencillo con citas de Signal8 Academy |
Endpoint Alojado
Para clientes MCP basados en web, use el endpoint HTTP Streamable alojado:
POST https://mcp.signal8.ai/mcp
Authorization: Bearer sk_live_your_key_here
Content-Type: application/json
Los clientes que admiten encabezados personalizados de token portador (p. ej. el conector --transport http de Claude Code CLI, Cursor y el soporte MCP de VS Code) pueden enviar su clave API como se muestra arriba.
Los clientes que admiten OAuth de MCP no necesitan clave alguna. En Claude.ai o Claude Desktop, abra Configuración → Conectores → Agregar conector personalizado, pegue https://mcp.signal8.ai/mcp, y Claude abrirá un inicio de sesión de Signal8 para autorizar la conexión. El servidor anuncia su servidor de autorización en https://mcp.signal8.ai/.well-known/oauth-protected-resource (OAuth 2.1 con PKCE y registro dinámico de clientes, emitido por https://api.signal8.ai). Las conexiones OAuth están sujetas al mismo requisito de Signal8 Pro y a los mismos límites de tasa que las claves API.
Variables de Entorno
| Variable | Requerido | Descripción |
|---|---|---|
SIGNAL8_API_KEY | Sí | Su clave API de Signal8 (comienza con sk_live_ o sk_test_) |
SIGNAL8_API_URL | No | URL base de la API (predeterminado: https://api.signal8.ai/api/v1/public) |
Precios
El servidor MCP y la API REST que llama están incluidos con Signal8 Pro ($59/mes, o $588/año) a 120 solicitudes por minuto y 10,000 solicitudes por día, con hasta 3 claves API. No hay créditos por llamada ni cargos por solicitud: cada solicitud que el servidor hace a la API de Signal8 cuenta una vez contra esos límites. Las cuentas gratuitas de Signal8 no incluyen acceso a API ni MCP. Consulte signal8.ai/developer.
Uso Programático
import { createMcpServer, Signal8ApiClient } from '@signal8ai/mcp';
const client = new Signal8ApiClient({
baseUrl: 'https://api.signal8.ai/api/v1/public',
apiKey: 'sk_live_xxx',
});
const server = createMcpServer(client);
// Connect to any MCP transport...
Licencia
MIT — consulte el archivo LICENSE. Copyright (c) 2025-2026 Signal8 AI, Inc.
El uso de la API y los datos alojados de Signal8 también se rige por los Términos de Servicio de Signal8.
Signal8 Academy (gratis, sin clave API)
La Signal8 Academy gratuita (guías en inglés sencillo sobre dilución, presentaciones SEC, estructura de mercado y uso de Signal8, además de un glosario) está disponible para clientes MCP sin una clave API de Signal8 Pro: el servidor stdio local responde a estas incluso cuando SIGNAL8_API_KEY no está configurado. (El endpoint alojado aún solicita iniciar sesión en cada llamada de herramienta, como con cualquier otra herramienta).
| Tipo | Nombre | Qué devuelve |
|---|---|---|
| Herramienta | search_learn_guides | Guías que coinciden con una consulta de palabras clave (opcionalmente una pista): título, descripción, URL |
| Herramienta | get_learn_guide | Una guía (track + slug) como Markdown, con guías relacionadas y términos del glosario |
| Herramienta | define_term | Una entrada de glosario por slug, término o alias: definición corta + larga |
| Recurso | signal8://learn | Índice de cada pista, guía y término del glosario |
| Recurso | signal8://learn/guides/{track}/{slug} | Una guía como Markdown |
| Recurso | signal8://learn/glossary/{slug} | Un término del glosario como Markdown |
| Prompt | explain_dilution | Lee los datos de dilución de una empresa (herramientas Pro) y explica cada cifra con las guías de la Academy |
Pistas: dilution, filings, market-structure, signal8. El contenido se obtiene de GET /api/v1/public/learn/*, por lo que las actualizaciones de guías aparecen sin un lanzamiento de paquete. Los enlaces en el Markdown apuntan a signal8.ai.