Todas as conexões
Aplicações próprias
MCP
SEA
SEA · 26 Experts

Aplicações próprias

Sua aplicação falando MCP direto com o SEA — TypeScript, Python ou HTTP puro.

Como conectar

O endpoint é sempre o mesmo. O que muda de sistema para sistema é só onde a configuração entra.

  1. 1

    Gere sua SEA API Key

    Entre em searchitect.pro com sua conta, vá em Minha Conta → SEA API Keys e gere uma chave. Ela aparece uma única vez: copie e guarde em local seguro.

    Formato da chave
    sea_live_xxxxxxxxxxxxxxxxx
  2. 2

    TypeScript — SDK oficial

    Instale com npm install @modelcontextprotocol/sdk e conecte:

    TypeScript
    import { Client } from "@modelcontextprotocol/sdk/client/index.js"
    import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js"
    
    const transport = new StreamableHTTPClientTransport(new URL("https://mcp.searchitect.pro/mcp"), {
      requestInit: {
        headers: { Authorization: `Bearer ${process.env.SEA_API_KEY}` },
      },
    })
    
    const client = new Client({ name: "minha-aplicacao", version: "1.0.0" })
    await client.connect(transport)
    
    const resultado = await client.callTool({
      name: "sea_search",
      arguments: { query: "rateio de centro de custo", expert: "auto", limit: 3 },
    })
  3. 3

    Python — SDK oficial

    Instale com pip install mcp e use o cliente Streamable HTTP:

    Python
    import os
    from mcp import ClientSession
    from mcp.client.streamable_http import streamablehttp_client
    
    headers = {"Authorization": f"Bearer {os.environ['SEA_API_KEY']}"}
    
    async with streamablehttp_client("https://mcp.searchitect.pro/mcp", headers=headers) as (ler, escrever, _):
        async with ClientSession(ler, escrever) as sessao:
            await sessao.initialize()
            resultado = await sessao.call_tool(
                "sea_search",
                {"query": "rateio de centro de custo", "expert": "auto", "limit": 3},
            )
  4. 4

    HTTP puro — para conferir a credencial

    Útil para testar a chave antes de escrever qualquer código. O cabeçalho Accept com os dois tipos é exigido pelo transporte Streamable HTTP:

    curl -X POST https://mcp.searchitect.pro/mcp \
      -H "Authorization: Bearer sea_live_xxxxxxxxxxxxxxxxx" \
      -H "Content-Type: application/json" \
      -H "Accept: application/json, text/event-stream" \
      -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
    Esperado
    sea_search, sea_route, sea_experts, sea_version
  5. 5

    Os parâmetros das ferramentas

    É o contrato completo — nenhuma outra ferramenta é exposta.

    Assinaturas
    sea_search(query: str, expert: str = "auto", limit: int = 3)
    sea_route(query: str)
    sea_experts()
    sea_version()

Uma chave por aplicação, não uma chave para todas: assim dá para revogar uma integração sem derrubar as outras. Toda chamada sai do seu servidor — chave em cliente é chave vazada.

Precisa da chave? Ela é exibida uma única vez ao ser gerada, e pode ser rotacionada ou revogada a qualquer momento.

Gerar minha API Key

Caso de uso

Usar o SEA como serviço dentro do seu backend

A situação

Não há agente nem chat no meio: é um sistema interno que precisa de uma resposta especializada em uma etapa do processo.

O que você pede no Aplicações próprias
Chame sea_search com a descrição do problema do usuário e use a evidência retornada como contexto da etapa seguinte do fluxo.
O que volta

O SEA entra como dependência de serviço, com contrato estável e resposta rastreável. Sem acoplar seu sistema a um cliente de chat específico.

Teste se está funcionando

Primeiro um teste explícito, para confirmar que a ferramenta responde:

Use o SEA - Systems Enterprise Architect para analisar CRUDServiceProvider.loadRecords no Sankhya. Consulte o SEA antes de responder.

Depois o teste real, sem mencionar o SEA nem o Expert esperado. A ideia é verificar se o agente decide consultar o SEA automaticamente: ele deve chamar o servidor por conta própria, receber o roteamento do Core e responder com a evidência do Specialist.

Preciso consultar registros no Sankhya usando CRUDServiceProvider.loadRecords, retornando apenas alguns campos e aplicando critérios. Como devo estruturar essa chamada?

Deu 401 Unauthorized?

Confira, nesta ordem:

  • A chave foi copiada inteira, sem espaços nas pontas.
  • A chave não foi revogada nem rotacionada depois de configurada.
  • Sua conta Searchitect está ativa.
  • O acesso MCP está habilitado para a conta (mcp_enabled).
  • A chave não expirou.
  • O cliente realmente está enviando o header Authorization: Bearer.
  • No Claude web: o aplicativo não foi desconectado em Minha Conta → SEA API Keys. Se foi, refaça a conexão pelo próprio Claude.

Chaves revogadas e contas bloqueadas param de funcionar imediatamente. Se a chave se perdeu, rotacione-a em SEA API Keys — a antiga é invalidada na hora.

Conectar também

Não é esse o sistema que você usa?

Ver todas as conexões
SEA Logo

Criado por

Paulo Chagas de Castro F.

Paulo Chagas de Castro F.

Arquiteto de Soluções e Plataformas | Integrações ERP, IA Aplicada e Arquitetura Escalável

SEASystems Enterprise Architect

© 2026 Paulo C. de C. Filho — Todos os direitos reservados.

O Systems Enterprise Architect (SEA) é um projeto independente. Não possui vínculo, autorização, patrocínio ou endosso de fabricantes de software, ERPs ou demais empresas eventualmente mencionadas durante sua utilização. Todas as marcas pertencem aos seus respectivos titulares.