SpecStream

Dê ao seu agente listas prontas da web ao vivo: cada linha com sua fonte, precificada por correspondência. Pergunte em inglês simples por empresas, negócios locais, licitações, subsídios, empregos ou artigos de pesquisa e receba apenas as linhas que se encaixam.

Servidor MCP hospedado

npx add-mcp 'https://api.specstream.ai/mcp'

Instala no Claude Code, Codex, Cursor e outros

Documentação

SpecStream

O mecanismo de dados web ao vivo para equipes e agentes.

Site  ·  Documentação  ·  Preços  ·  Registro MCP


Listas prontas da web ao vivo para o seu agente, cada linha com sua fonte, com preço definido antes de qualquer execução. Peça a lista que você precisa em palavras simples e receba tudo: apenas as correspondências, cada uma com a página de onde veio, mantidas atualizadas e enviadas para onde você trabalha. Você paga apenas pelas correspondências.

Seu agente pede "bancos de alimentos no Texas, com sua receita anual" e recebe linhas que pode citar, cada uma com a página por trás. Ele vê o preço primeiro, e uma busca que não encontra nada não custa nada.

A request, its price, and a list ready to use

PyPI npm n8n node MCP Registry Smithery

Este repositório contém o que você instala ao redor do SpecStream: configuração do cliente MCP, plugins e habilidades de agente, SDKs, o nó n8n, uma GitHub Action e exemplos. O produto em si roda em specstream.ai. Licenciado sob MIT.

CaminhoO que é
server.jsonEntrada para o Registro MCP oficial, ai.specstream/specstream
skills/Habilidades de agente: compile, review-work, approve-work, continue-work
plugins/claude-code/Plugin Claude Code (servidor MCP e as quatro habilidades)
plugins/github-agent/Plugin para agentes que leem o formato agent-plugins
.cursor-plugin/Plugin Cursor
packages/sdk-py/specstream-client: cliente Python e o comando specstream
packages/sdk-ts/@specstream/sdk: cliente TypeScript
packages/mcp-stdio/specstream-mcp-stdio: proxy stdio para clientes que só iniciam servidores locais
integrations/n8n/n8n-nodes-specstream: nó da comunidade n8n
integrations/vscode/Extensão VS Code: login MCP e chat @specstream
actions/find-action/GitHub Action que executa uma solicitação e envia um CSV
Formula/Fórmula Homebrew para a linha de comando
examples/SDK Python, SDK TypeScript, OpenAI Agents SDK e LangChain

Conecte um agente

O servidor MCP é https://api.specstream.ai/mcp (Streamable HTTP, 97 ferramentas). Seu agente trabalha na sua conta: o mesmo saldo, permissões e limites de gastos que você tem.

  1. Abra Agents & API no workspace e crie uma chave de API. Dê a ela apenas o que a tarefa precisa: leitura, preparação ou execução, os projetos que ela pode usar, uma expiração e um limite de gastos.

  2. Coloque-a em uma variável de ambiente, para que nenhum arquivo a armazene:

    export SPECSTREAM_API_KEY="ss_live_..."
    
  3. Adicione o servidor ao seu cliente, abaixo.

Clientes que suportam login MCP podem se conectar sem chave. Cada guia em specstream.ai/docs/mcp mostra os passos atuais.

Novas contas começam com $10 de trabalho grátis por 30 dias, sem cartão.

Claude

No Claude, vá em Customize > Connectors, escolha Add custom connector, nomeie como SpecStream e cole https://api.specstream.ai/mcp. Passos para login e chave: docs/mcp/claude.

Claude Code

claude mcp add --transport http specstream https://api.specstream.ai/mcp \
  --header "Authorization: Bearer $SPECSTREAM_API_KEY"

Ou instale o plugin, que adiciona o servidor e as quatro habilidades:

/plugin marketplace add Specstreamai/specstream-tools
/plugin install specstream@specstream

ChatGPT

Vá em ChatGPT Plugins, escolha o botão de mais e depois Add custom MCP server. Cole https://api.specstream.ai/mcp em Connection e defina Authentication como OAuth. Passos: docs/mcp/chatgpt.

Codex

Adicione em ~/.codex/config.toml:

[mcp_servers.specstream]
url = "https://api.specstream.ai/mcp"
bearer_token_env_var = "SPECSTREAM_API_KEY"

Cursor

Adicione em ~/.cursor/mcp.json, ou .cursor/mcp.json em um projeto:

{
  "mcpServers": {
    "specstream": {
      "url": "https://api.specstream.ai/mcp",
      "headers": { "Authorization": "Bearer ${env:SPECSTREAM_API_KEY}" }
    }
  }
}

VS Code

Adicione em .vscode/mcp.json. O VS Code pede a chave uma vez e a mantém fora do arquivo.

{
  "inputs": [
    { "type": "promptString", "id": "specstream-key", "description": "SpecStream API key", "password": true }
  ],
  "servers": {
    "specstream": {
      "type": "http",
      "url": "https://api.specstream.ai/mcp",
      "headers": { "Authorization": "Bearer ${input:specstream-key}" }
    }
  }
}

Windsurf

Adicione em ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "specstream": {
      "serverUrl": "https://api.specstream.ai/mcp",
      "headers": { "Authorization": "Bearer ${env:SPECSTREAM_API_KEY}" }
    }
  }
}

Zed, Cline e Continue

Esses iniciam um servidor local, então use o proxy stdio. Ele encaminha sua chave do ambiente e nada mais.

pip install specstream-mcp-stdio

Zed, em settings.json:

{
  "context_servers": {
    "specstream": {
      "command": "specstream-mcp-stdio",
      "args": [],
      "env": { "SPECSTREAM_MCP_URL": "https://api.specstream.ai/mcp" }
    }
  }
}

Cline, em cline_mcp_settings.json:

{
  "mcpServers": {
    "specstream": {
      "command": "specstream-mcp-stdio",
      "args": [],
      "env": { "SPECSTREAM_MCP_URL": "https://api.specstream.ai/mcp" }
    }
  }
}

Continue, em .continue/mcpServers/specstream.yaml:

name: SpecStream
version: 1.0.0
schema: v1
mcpServers:
  - name: specstream
    type: stdio
    command: specstream-mcp-stdio
    args: []
    env:
      SPECSTREAM_MCP_URL: https://api.specstream.ai/mcp
      SPECSTREAM_API_KEY: ${{ secrets.SPECSTREAM_API_KEY }}

Inicie Zed e Cline a partir de um shell onde SPECSTREAM_API_KEY está definido. Agentes que instalam SpecStream para alguém podem seguir llms-install.md.

Gemini CLI

gemini mcp add --transport http specstream https://api.specstream.ai/mcp \
  --header "Authorization: Bearer $SPECSTREAM_API_KEY"

Ou em ~/.gemini/settings.json:

{
  "mcpServers": {
    "specstream": {
      "httpUrl": "https://api.specstream.ai/mcp",
      "headers": { "Authorization": "Bearer $SPECSTREAM_API_KEY" }
    }
  }
}

n8n

Instale o nó da comunidade em Settings > Community nodes: n8n-nodes-specstream. Ele lê uma solicitação, mostra o orçamento, aprova o máximo que você digitar e retorna os resultados. Três fluxos de trabalho importáveis estão em integrations/n8n/workflows. Um agente de IA no n8n também pode usar o nó MCP Client Tool com endpoint https://api.specstream.ai/mcp, transporte HTTP Streamable e uma credencial Bearer.

LangChain

import os
from langchain_mcp_adapters.client import MultiServerMCPClient

client = MultiServerMCPClient({
    "specstream": {
        "transport": "streamable_http",
        "url": "https://api.specstream.ai/mcp",
        "headers": {"Authorization": f"Bearer {os.environ['SPECSTREAM_API_KEY']}"},
    }
})
tools = await client.get_tools()

Um agente completo está em examples/langchain-mcp.

OpenAI Agents SDK

import os
from agents import Agent, Runner
from agents.mcp import MCPServerStreamableHttp

async with MCPServerStreamableHttp(
    name="SpecStream",
    params={
        "url": "https://api.specstream.ai/mcp",
        "headers": {"Authorization": f"Bearer {os.environ['SPECSTREAM_API_KEY']}"},
    },
    cache_tools_list=True,
) as server:
    agent = Agent(name="Researcher", instructions="Use SpecStream for lists.", mcp_servers=[server])
    result = await Runner.run(agent, "Food banks in Texas, with their annual revenue. Show me the price first.")

Um agente completo está em examples/openai-agents-sdk.

Qualquer outro cliente que fale MCP remoto via Streamable HTTP funciona com o endereço acima e um cabeçalho Authorization: Bearer.

O que o agente faz, em ordem

Nada é gasto até que uma pessoa – ou um agente dentro de um limite definido por uma pessoa – aprove um preço.

  1. compile lê a solicitação e retorna como o SpecStream a entendeu: o tipo de coisa, as condições que cada resultado deve atender, os fatos a trazer.
  2. quote_capacity_work retorna o preço e o máximo que o trabalho pode custar. Um preço dura 30 minutos.
  3. authorize_capacity_work aprova esse orçamento exato, com o máximo em centavos (confirm_max_cents) e um idempotency_key estável, para que uma nova tentativa nunca pague duas vezes.
  4. get_find mostra o progresso enquanto as linhas chegam. list_find_rows retorna os resultados com o motivo e a fonte de cada fato.
  5. export_find, share_find e send_to_destination movem os resultados adiante. Ler, exportar e compartilhar não custam nada.

Cada resultado entregue custa 10 centavos, 30 centavos ou $1, dependendo de quantos fatos ele carrega. Uma busca que não encontra nada é gratuita. Veja preços.

As quatro habilidades em skills/ ensinam a um agente essa ordem e onde parar e perguntar: compile, review-work, approve-work, continue-work.

SDKs e linha de comando

pip install specstream-client        # Python 3.12+, import specstream_client, command: specstream
npm install @specstream/sdk          # Node 22+
brew tap specstreamai/specstream-tools https://github.com/Specstreamai/specstream-tools
brew install specstream              # the command line
import os
from specstream_client import Client

client = Client(os.environ["SPECSTREAM_API_KEY"])
read = client.compile("Datasets on urban tree canopy published since 2020 under an open license.")
offer = client.quote_capacity_work({
    "ast_hash": read["ast_hash"], "operation": "find",
    "requested_units": read["ast"]["limit"]["max"],
})
print(offer["maximum_cents"], offer["expires_at"])
import { Client } from "@specstream/sdk";

const client = new Client({ apiKey: process.env.SPECSTREAM_API_KEY! });
const read = await client.compile("Datasets on urban tree canopy published since 2020 under an open license.");

Scripts funcionais que executam uma solicitação de ponta a ponta estão em examples/python-sdk e examples/typescript-sdk.

GitHub Action

- uses: Specstreamai/specstream-tools/actions/find-action@v1
  with:
    request: Open tenders on SAM.gov for translation services with a deadline after November 1. Include the buyer and the estimated value.
    api_key: ${{ secrets.SPECSTREAM_API_KEY }}
    confirm_max_usd: "10"

A etapa para se o preço estiver acima de confirm_max_usd.

Três solicitações

Diga o que você precisa da mesma forma que diria a um colega. Estes vêm dos modelos de solicitação no produto.

Empresas de software na Alemanha com 50 a 500 funcionários que estão contratando vendedores. Inclua o anúncio de emprego e o e-mail de contato. Uma linha por empresa, com seu tamanho, o anúncio de emprego de vendas e o e-mail de contato que a empresa publicou. Cada linha diz em uma frase por que se encaixa, com a página de onde cada fato veio. Empresas que o SpecStream não pôde confirmar são listadas separadamente e não custam nada.

Licitações abertas no SAM.gov para serviços de tradução com prazo após 1º de novembro. Inclua o comprador e o valor estimado. Uma linha por aviso, com o comprador, o valor estimado, o prazo e um link para o aviso. O código compara o prazo com a data que você deu.

Ferramentas de linha de comando Rust no GitHub com mais de 1.000 estrelas, com push no último mês, sob licença MIT ou Apache. Uma linha por repositório, com suas estrelas, último push e licença. O código compara as estrelas e a data com seus números, e cada linha linka para o repositório.

A leitura vai para onde essas coisas vivem: registros e APIs oficiais, mapas e diretórios, quadros de empregos, índices de pesquisa, notícias e o próprio site de cada resultado. O SpecStream lê no momento em que você pergunta.

Documentação e suporte

Licença

MIT. Veja LICENSE. O serviço SpecStream é regido pelos seus termos.