Longbridge
oficialMercados dos EUA/HK — 110 ferramentas: cotações em tempo real, opções, ordens, fundamentos, alertas, DCA e portfólio
O que você pode fazer com Longbridge MCP?
- Cotações em tempo real — Consulte cotações ao vivo e históricas, gráficos de candlestick, profundidade de mercado e dados de opções nos mercados dos EUA e de Hong Kong.
- Carteira e negociação — Consulte posições, saldo e execuções, ou envie, cancele e substitua ordens, incluindo combinações de opções com várias pernas.
- Fundamentos e pesquisa — Consulte demonstrações financeiras, dividendos, opiniões de analistas, avaliações e executivos de uma empresa.
- Triagem e calendários — Faça buscas no filtro de ações ou consulte o calendário financeiro para ver resultados, dividendos, IPOs e dados macroeconômicos.
- Alertas e planos recorrentes — Crie alertas de preço, gerencie planos de preço médio em dólar e configure estratégias de negociação em grade.
- Respostas filtradas — Passe uma expressão
_jqpara qualquer ferramenta para reduzir respostas extensas apenas aos campos necessários.
Servidor MCP hospedado
npx add-mcp 'https://mcp.longbridge.com'Instala no Claude Code, Codex, Cursor e outros
Documentação
Servidor MCP do Longbridge
Servidor MCP oficial da corretora Longbridge. 164 ferramentas para cotações em tempo real, opções, roteamento de ordens, fundamentos, classificações de analistas, calendários, IPOs, alertas de preço, planos de DCA, negociação em grade, análise de portfólio e listas de ações da comunidade — abrangendo os mercados dos EUA e de Hong Kong. Desenvolvido em Rust com rmcp e axum.
Agora disponível no ChatGPT e no Claude
O Longbridge está oficialmente listado no diretório de Apps do ChatGPT e no diretório de Conectores do Claude.
Converse sobre os mercados em linguagem simples — cotações, opções, fundamentos e seu próprio portfólio —
sem precisar editar arquivos de configuração nem colar tokens.
| Adicione em um só lugar | Depois, é só perguntar | |
|---|---|---|
| ChatGPT | Configurações → Apps e Conectores → adicione Longbridge | "Como está a negociação de NVDA hoje?" · "Mostre minhas posições em HK" |
| Claude | Configurações → Conectores → adicione Longbridge (web · desktop · celular) | "Compare as avaliações de AAPL e MSFT" · "Há algum IPO esta semana?" |
Entre uma vez com sua conta Longbridge. Todas as solicitações são feitas pelo mesmo endpoint hospedado e protegido por OAuth 2.1, documentado abaixo — dados de mercado somente para leitura, além de ferramentas completas para conta, portfólio e negociação, todas protegidas pelas suas próprias credenciais.
Destaques
- 164 ferramentas, um endpoint — cotações, opções, roteamento de ordens, fundamentos, pesquisa de analistas, filtros, IPOs, alertas, DCA, negociação em grade e análise de portfólio nos mercados dos EUA e de Hong Kong.
- Sem estado por design — cada solicitação encaminha o token Bearer diretamente ao SDK do Longbridge. Sem sessões, sem banco de dados, nada armazenado no servidor.
- OAuth 2.1, descoberta automática — metadados de recurso protegido RFC 9728 e de servidor de autorização RFC 8414; os clientes concluem o fluxo sem precisar colar um token.
- Respostas claras e tipadas — campos em snake_case, timestamps RFC 3339, símbolos legíveis e esquemas de resposta tipados disponíveis como recursos MCP.
Desenvolvido em Rust com rmcp e axum.
Filtrar respostas de ferramentas com jq
Cada ferramenta aceita uma string opcional _jq em seus argumentos. A expressão é executada
sobre o JSON completo retornado, após a serialização normal da resposta. O nome _jq
é reservado para filtragem de respostas, a fim de evitar conflitos com parâmetros de negócio.
As orientações de uso são enviadas uma vez na resposta initialize do MCP, em instructions;
o esquema de cada ferramenta declara apenas o nome e o tipo do parâmetro opcional.
Por exemplo:
{
"name": "quote",
"arguments": {
"symbols": ["AAPL.US", "MSFT.US"],
"_jq": "map({symbol, last_done})"
}
}
Use .data[:5] para obter as cinco primeiras entradas de um array data,
.data | map(select(.price > 10)) para selecionar linhas ou {total: .total} para
projetar campos. As expressões usam a sintaxe compatível com jq do mecanismo jaq;
não é necessário um executável jq separado.
- Omita
_jq(ou passenull) para preservar a resposta original. - Um valor de saída é retornado diretamente, vários valores são retornados como um array e nenhum
valor é retornado como
[]. Escalares e arrays são texto JSON; objetos também aparecem emstructuredContent, contendo apenas os campos filtrados. - Respostas em texto simples ficam disponíveis como strings JSON. Vários blocos de conteúdo sem conteúdo estruturado ficam disponíveis como um array.
- Erros de ferramentas e explicações sobre permissões ou ausência de dados não são filtrados.
- Expressões vazias, inválidas ou que não sejam strings são rejeitadas antes da execução da ferramenta. Se a filtragem falhar durante a execução, a resposta informa explicitamente que a ferramenta já foi executada. Não tente novamente automaticamente operações de escrita, como enviar uma ordem.
- O acesso ao ambiente, as importações do sistema de arquivos e os filtros de registro não estão disponíveis. A saída é limitada a 10.000 valores e 8 MiB; exceder um limite retorna um erro, em vez de um resultado parcial.
Como os filtros podem alterar o formato da resposta, as ferramentas não anunciam um
outputSchema fixo. Os esquemas tipados originais continuam disponíveis por meio de resources/list
e resources/read em lb://tools/{tool-name}/output-schema para ferramentas com suporte a esquemas.
Conecte seu próprio cliente
O Longbridge disponibiliza um endpoint hospedado em https://mcp.longbridge.com — configure qualquer cliente MCP para usá-lo e conclua a autenticação OAuth quando solicitado. A autorização é descoberta automaticamente via RFC 9728; não há token para colar.
Claude Code
claude mcp add --transport http longbridge https://mcp.longbridge.com
Claude Desktop — adicione a claude_desktop_config.json e reinicie:
{ "mcpServers": { "longbridge": { "url": "https://mcp.longbridge.com" } } }
Codex — adicione o servidor e conclua a autenticação OAuth no navegador:
codex mcp add longbridge --url https://mcp.longbridge.com
codex mcp login longbridge
Cursor · Cline · Windsurf · Zed · outros clientes — configure-os para usar https://mcp.longbridge.com com o transporte streamable-http.
Mais comandos do Claude Code
# Local self-hosted instance (see Self-hosting below)
claude mcp add --transport http longbridge-local http://localhost:8000/mcp
claude mcp list # registered servers
claude mcp get longbridge # config + auth status
claude mcp remove longbridge # unregister
claude mcp logout longbridge # re-trigger OAuth after revocation
No primeiro uso, o cliente lê o desafio WWW-Authenticate, busca /.well-known/oauth-protected-resource (RFC 9728) e abre seu navegador para o fluxo OAuth do Longbridge. Os tokens são armazenados em cache por sessão e atualizados automaticamente.
As 164 ferramentas
Vinte categorias que abrangem dados de mercado, negociação, pesquisa e gerenciamento de contas.
| Categoria | Quantidade | Cobertura |
|---|---|---|
| Quote | 32 | Cotações em tempo real e históricas, gráficos de velas, profundidade, corretoras, opções, warrants, listas de observação, fluxo de capital, temperatura do mercado, posições vendidas, volume de opções |
| Fundamental | 33 | Demonstrações/relatórios financeiros, segmentos de negócio, visões institucionais, pares do setor/avaliação, dividendos, previsões de EPS, avaliações e comparação de avaliações, informações da empresa/executivos, acionistas, ações corporativas, métricas operacionais |
| Trade | 15 | Envio/cancelamento/substituição de ordens, ordens de combinação de opções com várias pernas, posições, saldo, execuções, fluxo de caixa, margem |
| Market | 15 | Status do mercado, classificação de setores/maiores variações, participações de corretoras, prêmio A/H, estatísticas de negociação, anomalias, operações/margem de venda a descoberto, componentes de índices |
| DCA | 9 | Criação/atualização/pausa/retomada/interrupção de planos de investimento periódico, histórico de execuções, estatísticas, verificação de suporte |
| Grid | 11 | Envio/substituição/cancelamento/suspensão/reinício de ordens de negociação em grade, consultas de listas/detalhes/histórico de acionamentos, informações de configuração por símbolo, consentimento único para estratégia |
| Sharelist | 8 | Operações CRUD de listas da comunidade, adição/remoção/ordenação de membros, listas populares |
| IPO | 7 | Inscrições em IPOs, calendário, ações listadas, detalhes de ordens, análise de lucros/perdas |
| Content | 7 | Lista/detalhes de notícias, operações CRUD de tópicos de discussão e respostas |
| Alert | 5 | Operações CRUD de alertas de preço (adicionar, excluir, ativar, desativar, listar) |
| Screener | 5 | Pesquisa de filtros de ações, indicadores, recomendação/gerenciamento de estratégias |
| Portfolio | 4 | Taxas de câmbio, análise de lucros/perdas (resumo, detalhes, realizados) |
| ATM | 3 | Cartões bancários, registros de saques, registros de depósitos |
| Macrodata | 2 | Lista e detalhes de indicadores macroeconômicos |
| Search | 2 | Pesquisa de notícias, pesquisa de tópicos da comunidade |
| Statement | 2 | Listagem e exportação de extratos da conta |
| Calendar | 1 | Calendário financeiro (resultados, dividendos, IPOs, dados macroeconômicos, fechamentos) |
| Quant | 1 | Executar um script de indicadores quantitativos em dados históricos de K-line |
| Authenticate | 1 | Troca de código OAuth para clientes que não conseguem concluir um redirecionamento do navegador |
| Utility | 1 | Hora UTC atual |
Hospedagem própria
Prefere sua própria instância? Execute a imagem publicada:
docker run -p 8443:8443 \
-v /path/to/certs:/certs:ro \
ghcr.io/longbridge/longbridge-mcp \
--bind 0.0.0.0:8443 \
--base-url https://mcp.example.com \
--tls-cert /certs/cert.pem \
--tls-key /certs/key.pem
Defina
--base-urlcomo seu URL acessível externamente em qualquer implantação pública — ele é publicado nos metadados OAuth que os clientes usam para descobrir o servidor de autorização. O padrão éhttp://localhost:{port}, que clientes remotos não conseguem usar.
Ou compile a partir do código-fonte: cargo build --release && ./target/release/longbridge-mcp.
Configuração e variáveis de ambiente
A configuração fica em ~/.longbridge/mcp/config.json (substitua o diretório com LONGBRIDGE_MCP_CONFIG_DIR). As opções da CLI têm precedência. Quando tls_cert e tls_key estão definidos, o servidor usa HTTPS; caso contrário, usa HTTP. base_url assume o padrão https://localhost:{port} com TLS ou http://localhost:{port} sem TLS.
| Opção | Chave de configuração | Opção da CLI | Padrão | Descrição |
|---|---|---|---|---|
| Endereço de vinculação | bind | --bind | 127.0.0.1:8000 | Endereço de escuta do servidor HTTP |
| URL base | base_url | --base-url | automático | URL base pública para metadados do recurso |
| Diretório de registros | log_dir | --log-dir | (stderr) | Diretório para arquivos de registro rotativos |
| Certificado TLS | tls_cert | --tls-cert | (nenhum) | Arquivo de certificado PEM para HTTPS |
| Chave privada TLS | tls_key | --tls-key | (nenhuma) | Arquivo de chave privada PEM |
| Ambiente canário upstream | canary | --canary | false | Conecta-se ao ambiente canário do Longbridge (*.longbridge.xyz). --canary=false força o uso da produção mesmo quando o arquivo de configuração o habilita |
O ambiente da China continental (*.longbridge.cn) não é uma opção: ele é selecionado automaticamente quando LONGBRIDGE_REGION=cn está definido (a mesma variável usada pelo SDK), portanto, um cluster da China continental não precisa de uma configuração específica.
Os endpoints upstream são fixos conforme o ambiente selecionado:
| Produção (padrão) | Canário (--canary) | China continental (LONGBRIDGE_REGION=cn) | |
|---|---|---|---|
| OpenAPI | https://openapi.longbridge.com | https://openapi-global.longbridge.xyz | https://openapi.longbridge.cn |
| WebSocket de cotações | wss://openapi-quote.longbridge.com/v2 | wss://openapi-global-quote.longbridge.xyz/v2 | wss://openapi-quote.longbridge.cn/v2 |
| WebSocket de negociação | wss://openapi-trade.longbridge.com/v2 | wss://openapi-global-trade.longbridge.xyz/v2 | wss://openapi-trade.longbridge.cn/v2 |
| OAuth / página de conexão | openapi.longbridge.com / open.longbridge.com | openapi-global.longbridge.xyz / open.longbridge.xyz | openapi.longbridge.cn / open.longbridge.cn |
O ambiente canário usa o gateway -global, não openapi.longbridge.xyz: somente o primeiro é servido pelo CloudFront e realiza o roteamento de data centers x-dc-region, do qual este servidor depende para atender credenciais com prefixos us_ e ap_ a partir de um único processo.
O ambiente canário e o da China continental fixam todas as URLs acima na inicialização; a produção delega a resolução ao próprio SDK, exceto quando uma credencial us_ sem substituição de upstream é fixada ao gateway global .com. Consulte src/endpoints.rs para ver as regras exatas de seleção.
Variáveis de ambiente avançadas — a maioria das implantações nunca precisa alterá-las; elas existem para depuração do SDK e implantações de entrada global/de borda.
| Variável | Padrão | Descrição |
|---|---|---|
LONGBRIDGE_MCP_CONFIG_DIR | ~/.longbridge/mcp | Diretório do arquivo de configuração |
LONGBRIDGE_PUBLIC_HOSTS | (nenhum) | Nomes de host separados por vírgulas aceitos do cabeçalho X-Host injetado pela borda; solicitações correspondentes repetem esse host no desafio 401/metadados RFC 9728. Não definido = X-Host ignorado |
LONGBRIDGE_GLOBAL_OAUTH_URL | (nenhum) | URL do servidor de autorização anunciada às solicitações recebidas por um X-Host permitido (entrada global de domínio único). Não definido = usa como alternativa a URL base OpenAPI do modo |
LONGBRIDGE_MCP_QUOTE_WS_IDLE_TTL_SECS | 600 | Segundos de inatividade antes de remover do cache um contexto de WebSocket de cotações |
LONGBRIDGE_MCP_QUOTE_WS_MAX_CONTEXTS | 1024 | Número máximo de contextos de WebSocket de cotações em cache por processo do servidor |
LONGBRIDGE_MCP_LOG_PAYLOADS | (não definido) | 1 remove os limites dos registros de payload (veja abaixo). Nunca defina isso em produção |
LONGBRIDGE_LOG_PATH | (nenhum) | Caminho do registro interno do SDK. Deixe sem definir em produção — o SDK grava ali corpos de solicitações/respostas sem filtragem |
Registros e dados de clientes
As solicitações e respostas MCP carregam dados de clientes — saldos em dinheiro, posições, histórico de ordens — e os frames do SDK upstream carregam tokens de acesso. Nada disso deve ir para um arquivo de log, então o servidor limita os destinos de log que imprimiriam esses dados, independentemente de `RUST_LOG`:| Destino | Limite | O que imprimiria caso contrário |
|---|---|---|
longbridge_httpcli | warn | Corpos completos de solicitações e respostas da OpenAPI (INFO) |
longbridge_wscli | warn | Cada frame WebSocket, incluindo o token de autenticação (INFO) |
longbridge::trade | warn | Eventos de envio de ordens (INFO) |
rmcp | info | Solicitações MCP decodificadas e resultados completos das ferramentas (DEBUG), frames JSON-RPC brutos (TRACE) |
Assim, aumentar a verbosidade é seguro: RUST_LOG=debug (ou trace) mostra os logs do próprio servidor sem vazar dados de clientes. Duas opções anulam isso, ambas desativadas por padrão — LONGBRIDGE_MCP_LOG_PAYLOADS=1 (remove os limites; use apenas localmente com uma conta de teste) e LONGBRIDGE_LOG_PATH (faz o SDK gravar corpos sem filtragem nesse diretório; o servidor emite um aviso na inicialização quando essa opção está definida).
Endpoints HTTP, autenticação e métricas
O servidor espera um token de acesso OAuth do Longbridge em Authorization: Bearer <token>. Quando a autenticação está ausente ou é inválida, ele retorna 401 com um cabeçalho WWW-Authenticate que aponta para os metadados do recurso protegido, os quais direcionam os clientes ao servidor de autorização OAuth do Longbridge.
Envie x-papertrading: true (ou 1) em uma solicitação para executá-la no ambiente de negociação simulada. O upstream rejeita uma solicitação de negociação simulada feita com um token de dinheiro real, portanto, o cabeçalho é uma proteção de segurança, não uma opção de roteamento: ele só pode restringir o que um token pode fazer. LONGBRIDGE_PAPERTRADING=true ativa essa opção para toda a implantação.
| Método | Caminho | Descrição |
|---|---|---|
| GET | /.well-known/oauth-protected-resource | Metadados do recurso protegido (RFC 9728) |
| GET | /.well-known/oauth-authorization-server | Metadados do servidor de autorização (RFC 8414); anuncia os endpoints diretos de autorização/registro do Longbridge e os endpoints de token/revogação por proxy |
| POST | /oauth2/token | Proxy de token OAuth; deriva x-dc-region do código/token de atualização, usando AP como padrão |
| POST | /oauth2/revoke | Proxy de revogação OAuth; deriva x-dc-region do token, usando AP como padrão |
| GET | /metrics | Métricas do Prometheus |
| POST/GET/DELETE | /mcp | Endpoint MCP Streamable HTTP (requer token Bearer) |
Métricas do Prometheus: mcp_tool_calls_total (contador), mcp_tool_call_duration_seconds (histograma) e mcp_tool_call_errors_total (contador) — cada uma rotulada por tool_name.
Desenvolvimento
cargo +nightly fmt # format
cargo clippy # lint
cargo test # test
Licença
Publicado sob a Licença MIT.