ScavioScavio
ProduitTarifsDocumentation
ConnexionCommencer
  1. Accueil
  2. Workflows
  3. Surveillance des actualités boursières via le pipeline de recherche MCP
Workflow

Surveillance des actualités boursières via le pipeline de recherche MCP

Workflow qui surveille les actualités liées aux actions via le serveur MCP de Scavio, détectant les rapports de résultats, les relèvements d'analystes et les événements qui font bouger les marchés pour une liste de tickers.

Commencez gratuitementDocumentation API

Aperçu

Les investisseurs particuliers passent à côté des actualités qui font bouger les marchés car ils vérifient manuellement ou se fient à des flux retardés. Ce workflow surveille votre liste de surveillance d'actions via le serveur MCP de Scavio : recherche chaque ticker quotidiennement, détecte les annonces de résultats, les changements de notation d'analystes et les dépôts SEC, et envoie un briefing matinal avant l'ouverture du marché. Le tout via MCP pour s'intégrer directement avec votre assistant IA.

Déclencheur

Quotidiennement à 6h30 HE, avant l'ouverture du marché.

Planification

Quotidiennement à 6h30

Étapes du workflow

1

Charger la liste de surveillance d'actions

Lire la liste des tickers à surveiller depuis la configuration. Inclure les noms des sociétés pour de meilleurs résultats de recherche.

2

Rechercher chaque ticker via MCP

Appeler la recherche Scavio MCP pour chaque ticker avec des requêtes axées sur l'actualité : résultats, analyste, dépôt SEC.

3

Classer les événements d'actualité

Catégoriser les résultats : EARNINGS, ANALYST_RATING, SEC_FILING, GENERAL_NEWS selon les mots-clés du titre et de l'extrait.

4

Noter l'impact sur le marché

Attribuer des scores d'impact : les surprises de résultats et les relèvements/abaissements d'analystes obtiennent des scores élevés.

5

Envoyer le briefing matinal

Formater les principaux événements en un briefing et l'envoyer via Slack, email ou l'afficher dans votre assistant IA.

Implémentation Python

Python
import requests, os, json
from datetime import date

API_KEY = os.environ["SCAVIO_API_KEY"]
MCP_URL = "https://mcp.scavio.dev/mcp"
MH = {"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"}

WATCHLIST = [
    {"ticker": "AAPL", "name": "Apple"},
    {"ticker": "NVDA", "name": "NVIDIA"},
    {"ticker": "MSFT", "name": "Microsoft"},
    {"ticker": "GOOGL", "name": "Alphabet"},
]

EVENT_KEYWORDS = {
    "EARNINGS": ["earnings", "revenue", "quarterly", "beat", "miss", "eps"],
    "ANALYST": ["upgrade", "downgrade", "price target", "analyst", "rating"],
    "SEC_FILING": ["sec filing", "10-k", "10-q", "8-k", "proxy"],
    "GENERAL": [],
}

def mcp_search(query: str) -> dict:
    payload = {
        "jsonrpc": "2.0", "id": 1,
        "method": "tools/call",
        "params": {"name": "search", "arguments": {"query": query, "country_code": "us"}}
    }
    resp = requests.post(MCP_URL, headers=MH, json=payload, timeout=15)
    return resp.json().get("result", {})

def classify_event(title: str) -> str:
    title_lower = title.lower()
    for event_type, keywords in EVENT_KEYWORDS.items():
        if any(kw in title_lower for kw in keywords):
            return event_type
    return "GENERAL"

def monitor_stocks():
    briefing = []
    for stock in WATCHLIST:
        query = f"{stock['ticker']} {stock['name']} stock news {date.today()}"
        data = mcp_search(query)
        results = data.get("organic_results", [])[:5] if isinstance(data, dict) else []

        for r in results:
            title = r.get("title", "")
            event_type = classify_event(title)
            briefing.append({
                "ticker": stock["ticker"],
                "event": event_type,
                "title": title,
                "url": r.get("link", ""),
                "snippet": r.get("snippet", ""),
            })

    briefing.sort(key=lambda x: 0 if x["event"] in ["EARNINGS", "ANALYST"] else 1)
    return briefing

news = monitor_stocks()
print(f"Stock briefing for {date.today()}: {len(news)} items")
for n in news[:10]:
    print(f"  [{n['ticker']}] [{n['event']}] {n['title']}")

Implémentation JavaScript

JavaScript
const MCP_URL = 'https://mcp.scavio.dev/mcp';
const MH = {'Authorization': 'Bearer '+process.env.SCAVIO_API_KEY, 'Content-Type': 'application/json'};

const WATCHLIST = [
  {ticker:'AAPL', name:'Apple'},
  {ticker:'NVDA', name:'NVIDIA'},
  {ticker:'MSFT', name:'Microsoft'},
  {ticker:'GOOGL', name:'Alphabet'},
];

const EVENT_KEYWORDS = {EARNINGS:['earnings','revenue','quarterly','beat','miss','eps'], ANALYST:['upgrade','downgrade','price target','analyst','rating'], SEC_FILING:['sec filing','10-k','10-q','8-k','proxy']};

async function mcpSearch(query) {
  const payload = {jsonrpc:'2.0', id:1, method:'tools/call', params:{name:'search', arguments:{query, country_code:'us'}}};
  const r = await fetch(MCP_URL, {method:'POST', headers:MH, body:JSON.stringify(payload)});
  return (await r.json()).result || {};
}

function classifyEvent(title) {
  const t = title.toLowerCase();
  for (const [type, kws] of Object.entries(EVENT_KEYWORDS)) {
    if (kws.some(kw=>t.includes(kw))) return type;
  }
  return 'GENERAL';
}

async function monitorStocks() {
  const briefing = [];
  const today = new Date().toISOString().split('T')[0];
  for (const stock of WATCHLIST) {
    const data = await mcpSearch(stock.ticker+' '+stock.name+' stock news '+today);
    const results = (data.organic_results || []).slice(0,5);
    for (const r of results) {
      briefing.push({ticker:stock.ticker, event:classifyEvent(r.title||''), title:r.title||'', url:r.link||'', snippet:r.snippet||''});
    }
  }
  briefing.sort((a,b)=>(['EARNINGS','ANALYST'].includes(a.event)?0:1)-(['EARNINGS','ANALYST'].includes(b.event)?0:1));
  return briefing;
}

const news = await monitorStocks();
console.log('Stock briefing: '+news.length+' items');
for (const n of news.slice(0,10)) console.log('  ['+n.ticker+'] ['+n.event+'] '+n.title);

Plateformes utilisées

Google

Recherche web avec graphe de connaissances, PAA et aperçus IA

Questions fréquentes

Les investisseurs particuliers passent à côté des actualités qui font bouger les marchés car ils vérifient manuellement ou se fient à des flux retardés. Ce workflow surveille votre liste de surveillance d'actions via le serveur MCP de Scavio : recherche chaque ticker quotidiennement, détecte les annonces de résultats, les changements de notation d'analystes et les dépôts SEC, et envoie un briefing matinal avant l'ouverture du marché. Le tout via MCP pour s'intégrer directement avec votre assistant IA.

Ce workflow utilise un quotidiennement à 6h30 he, avant l'ouverture du marché.. Quotidiennement à 6h30.

Ce workflow utilise les plateformes Scavio suivantes : google. Chaque plateforme est appelée via le même point de terminaison API unifié.

Oui. L'offre gratuite de Scavio comprend 50 crédits à l'inscription sans carte bancaire. Cela suffit pour tester et valider ce workflow avant de le passer à l'échelle.

Surveillance des actualités boursières via le pipeline de recherche MCP

Workflow qui surveille les actualités liées aux actions via le serveur MCP de Scavio, détectant les rapports de résultats, les relèvements d'analystes et les événements qui font bouger les marchés pour une liste de tickers.

Obtenez votre clé APILire la documentation
ScavioScavio

API de recherche en temps réel pour agents IA. Recherchez sur toutes les plateformes, pas seulement Google.

Produit

  • Fonctionnalités
  • Tarifs
  • Tableau de bord
  • Affiliés

Développeurs

  • Documentation
  • Référence API
  • Démarrage rapide
  • Intégration MCP
  • SDK Python

Alternatives

  • Alternative à Tavily
  • Alternative à SerpAPI
  • Alternative à Firecrawl
  • Alternative à Exa

Outils

  • Formateur JSON
  • cURL vers code
  • Compteur de jetons
  • Tous les outils

© 2026 Scavio. Tous droits réservés.

Featured on TAAFT
Conditions d'utilisationPolitique de confidentialité