Une seule plateforme pour construire, rechercher, extraire, enrichir, cartographier et surveiller des données sur l'ensemble du web.
Demandez n'importe quel jeu de données en langage clair, et SpecStream le construit à partir du web en direct : chaque correspondance trouvée, extraite et enrichie en enregistrements structurés, puis surveillée pour détecter les changements. Il fonctionne via l'API et MCP, et dans Sheets, CRM, Slack, n8n, Zapier et les autres outils que les équipes utilisent déjà.
| Produit | Ce qu'il fait | Prix |
|---|---|---|
| Search API | GET /v1/web-search. L'API de recherche web la plus précise au monde : score F de 97,9 sur l'ensemble des 1 000 questions SimpleQA Verified et score F1 de 64,0 sur l'ensemble des 200 tâches WideSearch (scores et méthode). Répond à une question à partir du web en direct en quelques secondes. | 5 $ pour 1 000 recherches, 1 $ pour 1 000 avec speed=fast |
| Extract API | POST /v1/extract. Le texte principal d'un maximum de 20 pages web, fichiers PDF, Word ou Excel par appel. L'outil MCP est read_pages. | 0,80 $ pour 1 000 pages. Une page sans texte n'est pas facturée. |
| Deep Search | Demandez en langage clair. Obtenez chaque correspondance sur le web en direct, sous forme de lignes structurées. Il enrichit également une liste que vous possédez et surveille les changements. | 5¢, 15¢ ou 1 $ par ligne |
Recherche :
curl -G https://api.specstream.ai/v1/web-search \
-H "Authorization: Bearer $SPECSTREAM_API_KEY" \
--data-urlencode "q=Quelle est la population du Japon ?"
Extraction :
curl https://api.specstream.ai/v1/extract \
-H "Authorization: Bearer $SPECSTREAM_API_KEY" \
-H "Content-Type: application/json" \
-d '{"urls": ["https://exemple.com"]}'
Search API en Python : répondre à une question à partir du web en direct en quelques secondes.
# pip install specstream-client
import os
from specstream_client import Client
client = Client(os.environ["SPECSTREAM_API_KEY"])
search = client.web_search(q="Quelle est la population du Japon ?")
for source in search["sources"][:1]:
print(source["title"], source["url"], source["snippet"])
Extract API en Python : le texte principal d'un maximum de 20 pages web, fichiers PDF, Word ou Excel par appel.
# pip install specstream-client
import os
from specstream_client import Client
client = Client(os.environ["SPECSTREAM_API_KEY"])
extract = client.extract_pages({"urls": ["https://exemple.com"]})
for page in extract["results"][:1]:
print(page["title"], page["url"], page["text"])
Search API en TypeScript :
// npm install @specstream/sdk
import { Client } from "@specstream/sdk";
const client = new Client({ apiKey: process.env.SPECSTREAM_API_KEY! });
const search = await client.webSearch({ q: "Quelle est la population du Japon ?" });
for (const source of search.sources.slice(0, 1)) {
console.log(source.title, source.url, source.snippet);
}
Extract API en TypeScript :
// npm install @specstream/sdk
import { Client } from "@specstream/sdk";
const client = new Client({ apiKey: process.env.SPECSTREAM_API_KEY! });
const extract = await client.extractPages({ urls: ["https://exemple.com"] });
for (const page of extract.results.slice(0, 1)) {
console.log(page.title, page.url, page.text);
}
- URL source et temps de lecture pour chaque valeur.
- La Search API et l'Extract API ne nécessitent ni devis ni approbation. Chaque recherche ou page est facturée à son prix fixe sur votre solde.
- Dans Deep Search, le coût maximum d'une exécution est affiché et approuvé avant son lancement. Seules les lignes livrées sont facturées, et une exécution qui ne trouve rien ne coûte rien.
- Une requête enregistrée est relancée toutes les heures à chaque année, et chaque ligne est étiquetée comme modifiée, inchangée ou ne correspondant plus.
- Votre agent travaille sur votre compte, dans les limites de dépenses que vous définissez.
Remplacement direct pour l'API que vous appelez déjà
SpecStream répond aux appels écrits pour ces API de recherche à sa propre adresse, dans le format de réponse de chaque API. Pour basculer, changez l'adresse de base et la clé. Chaque appel de recherche est une recherche web Search API sur votre clé SpecStream. Un appel de remplacement direct utilise la recherche rapide : 0,001 $ pour un maximum de 10 résultats (1 $ pour 1 000 recherches), et chaque tranche de 10 résultats supplémentaires dans le même appel ajoute 0,0012 $. Un appel qui demande une réponse ou le mode approfondi de l'API utilise la recherche par défaut : 0,005 $ pour un maximum de 10 résultats, et 0,006 $ pour chaque tranche de 10 résultats supplémentaires.
| API que vous appelez | Adresse de base que vous avez | Adresse SpecStream | Où va la clé SpecStream |
|---|---|---|---|
| Tavily | https://api.tavily.com | https://api.specstream.ai/tavily | Jeton Bearer ou api_key |
| Exa | https://api.exa.ai | https://api.specstream.ai/exa | x-api-key ou jeton Bearer |
| Brave Search API | https://api.search.brave.com | https://api.specstream.ai | X-Subscription-Token |
| Serper | https://google.serper.dev | https://api.specstream.ai/serper | X-API-KEY |
| Bing Web Search API v7 | https://api.bing.microsoft.com/v7.0/search | https://api.specstream.ai/v7.0/search | Ocp-Apim-Subscription-Key |
| Google Custom Search JSON API | https://www.googleapis.com ou https://customsearch.googleapis.com | https://api.specstream.ai | key= (cx est accepté et non utilisé) |
| SearXNG (JSON) | l'adresse de votre instance | https://api.specstream.ai/searxng/<key> | dans l'adresse, key=, X-API-Key ou jeton Bearer |
| Firecrawl v2 | https://api.firecrawl.dev | https://api.specstream.ai/firecrawl (JavaScript SDK et applications) ou https://api.specstream.ai (Python SDK) | Jeton Bearer |
Les SDK Python officiels de Tavily et Exa acceptent l'adresse comme argument :
import os
from tavily import TavilyClient
from exa_py import Exa
tavily = TavilyClient(api_key=os.environ["SPECSTREAM_API_KEY"], api_base_url="https://api.specstream.ai/tavily")
exa = Exa(api_key=os.environ["SPECSTREAM_API_KEY"], base_url="https://api.specstream.ai/exa")
- Un appel qui ne spécifie pas de nombre de résultats renvoie 10 résultats, à 0,001 $ sur la recherche rapide. La valeur par défaut de Brave est 20 : envoyez
count=20pour 20 résultats à 0,0022 $. - Un appel Firecrawl
/v2/scrapecorrespond à une page Extract API à 0,0008 $. Le Firecrawl JavaScript SDK fonctionne avec cette adresse. Le Firecrawl Python SDK prend la racine de l'hôte :Firecrawl(api_key=..., api_url="https://api.specstream.ai"). - Les champs de requête et de réponse de chaque route : specstream.ai/agents.md. Créez une clé sous Agents & API sur specstream.ai/workspace. Les nouveaux comptes commencent avec 10 $ de crédit, sans carte.

Ce référentiel contient ce que vous installez autour de SpecStream : configuration du client MCP, plugins et compétences d'agents, SDK, le nœud n8n, une action GitHub et des exemples. Le produit lui-même est disponible sur specstream.ai. Licence MIT.
| Chemin | Description |
|---|---|
server.json | Entrée pour le registre officiel MCP, ai.specstream/specstream |
skills/ | Compétences d'agents : search-web, extract-pages, compile, review-work, approve-work, continue-work |
plugins/claude-code/ | Plugin Claude Code (serveur MCP et les six compétences) |
plugins/github-agent/ | Plugin pour les agents qui lisent le format agent-plugins |
.cursor-plugin/ | Plugin Cursor |
packages/sdk-py/ | specstream-client : client Python et la commande specstream |
packages/sdk-ts/ | @specstream/sdk : client TypeScript |
packages/langchain-specstream/ | langchain-specstream : outils LangChain et un retrieveur |
packages/llama-index-tools-specstream/ | llama-index-tools-specstream : spécification d'outil LlamaIndex et un retrieveur |
packages/crewai-specstream/ | crewai-specstream : outils CrewAI |
packages/specstream-haystack/ | specstream-haystack : composant de récupération de liste Haystack et outil d'agent |
packages/ai-sdk/ | @specstream/ai-sdk : outils Vercel AI SDK |
packages/mcp-stdio/ | specstream-mcp-stdio : proxy stdio pour les clients qui ne démarrent que des serveurs locaux |
integrations/n8n/ | n8n-nodes-specstream : nœud communautaire n8n |
integrations/opencode/ | opencode-specstream : plugin OpenCode (serveur MCP et les quatre compétences) |
integrations/openclaw/ | @specstream/openclaw-plugin : plugin OpenClaw (trouver une liste, lire ses lignes, quatre compétences) |
integrations/pi/ | @specstream/pi-package : package Pi (le serveur MCP hébergé et quatre compétences) |
integrations/obsidian/ | Plugin Obsidian : demander des données dans une note, approuver le prix, obtenir un tableau Markdown avec une source pour chaque valeur |
integrations/open-webui/ | Outil Open WebUI : devis, approbation et lecture des résultats depuis un chat, plus la route MCP native |
integrations/anythingllm/ | Compétence d'agent AnythingLLM, plus la route MCP |
integrations/convex/ | Composant Convex (@specstream/convex) : données web en direct sous forme d'enregistrements dans vos tables Convex, une source pour chaque valeur |
integrations/fivetran/ | Connecteur Fivetran Connector SDK : vos listes, enregistrements et chaque valeur avec sa page source dans votre entrepôt |
integrations/airbyte/ | Source Airbyte (manifeste uniquement) : vos listes et enregistrements, chaque valeur avec sa page source |
integrations/meltano/ | tap-specstream sur PyPI : Singer tap pour Meltano et toute cible Singer, listes et enregistrements avec la page source de chaque valeur |
integrations/coda/ | Pack Coda : synchroniser une liste dans un tableau avec une colonne source pour chaque valeur, deviser une requête, trouver une liste à partir d'un bouton |
plugins/grok/ | Plugin Grok Build (le serveur MCP hébergé et quatre compétences) |
plugins/kiro/ | Power Kiro (le serveur MCP hébergé et quatre compétences) |
integrations/vscode/ | Extension VS Code : connexion MCP et chat @specstream |
actions/find-action/ | Action GitHub qui exécute une requête et télécharge un CSV |
Formula/ | Formule Homebrew pour la ligne de commande |
examples/ | Exemples Python SDK, TypeScript SDK, OpenAI Agents SDK et LangChain |
Connecter un agent
Le serveur MCP est https://api.specstream.ai/mcp (Streamable HTTP). Votre agent travaille sur votre compte : le même solde, les mêmes autorisations et limites de dépenses que vous.
-
Ouvrez Agents & API dans l'espace de travail et créez une clé API. Donnez-lui uniquement ce dont la tâche a besoin : lire, préparer ou exécuter, les projets qu'elle peut utiliser, une date d'expiration et une limite de dépenses.
-
Placez-la dans une variable d'environnement, afin qu'aucun fichier ne la contienne :
export SPECSTREAM_API_KEY="ss_live_..." -
Ajoutez le serveur à votre client, ci-dessous.
Les clients qui prennent en charge la connexion MCP peuvent se connecter sans clé. Chaque guide sur specstream.ai/docs/mcp montre les étapes actuelles.
Les nouveaux comptes commencent avec 10 $ de crédit, sans carte.
Claude
Dans Claude, allez dans Personnaliser > Connecteurs, choisissez Ajouter un connecteur personnalisé, nommez-le SpecStream et collez https://api.specstream.ai/mcp. Étapes pour la connexion et une clé : docs/mcp/claude.
Claude Code
claude mcp add --transport http specstream https://api.specstream.ai/mcp \
--header "Authorization: Bearer $SPECSTREAM_API_KEY"
Ou installez le plugin, qui ajoute le serveur et les six compétences. Il vous connecte via votre navigateur la première fois, donc aucune clé n'est nécessaire :
/plugin marketplace add specstream/specstream-tools
/plugin install specstream@specstream
ChatGPT
Allez dans Plugins ChatGPT, choisissez le bouton plus, puis Ajouter un serveur MCP personnalisé. Collez https://api.specstream.ai/mcp sous Connexion et définissez Authentification sur OAuth. Étapes : docs/mcp/chatgpt.
Codex
Ajoutez à ~/.codex/config.toml :
[mcp_servers.specstream]
url = "https://api.specstream.ai/mcp"
bearer_token_env_var = "SPECSTREAM_API_KEY"
Cursor
Ajoutez à ~/.cursor/mcp.json, ou .cursor/mcp.json dans un projet :
{
"mcpServers": {
"specstream": {
"url": "https://api.specstream.ai/mcp",
"headers": { "Authorization": "Bearer ${env:SPECSTREAM_API_KEY}" }
}
}
}
VS Code
… [tronqué pour la traduction]

