GTM API: LinkedIn MCP Server
Servidor MCP gerenciado do LinkedIn para agentes de IA - pesquise, conecte, envie mensagens e enriqueça no LinkedIn a partir do Claude, ChatGPT ou Cursor. Mais de 20.000 contas com menos de 1% de banimento.
Documentação
gtm-api: Servidor MCP do LinkedIn
O gtm-api é um servidor MCP gerenciado do LinkedIn. Ele dá a um agente de IA um endpoint, três ferramentas MCP e mais de 160 ações tipadas do LinkedIn através do Model Context Protocol, para que Claude, ChatGPT ou Cursor possam pesquisar, conectar, enviar mensagens e enriquecer em uma conta do LinkedIn que você possui, com segurança da conta aplicada no lado do servidor.
Este repositório contém a interface pública: o que o servidor expõe, como conectar um cliente e como a camada de segurança funciona.
O que é um servidor MCP do LinkedIn?
Um servidor MCP do LinkedIn expõe ações do LinkedIn como ferramentas do Model Context Protocol, para que um agente de IA as chame diretamente, da mesma forma que uma pessoa clicaria na interface. O LinkedIn não publica uma API oficial para convites, mensagens entre membros ou busca aberta de perfis, então um servidor MCP do LinkedIn funciona através de uma conta que você possui, em vez de usar a plataforma de desenvolvedores do LinkedIn.
Existem dois formatos hoje. Servidores open-source baseados em cookies executam uma sessão de navegador com seu próprio cookie e sem ritmo controlado. Servidores gerenciados executam cada conta em infraestrutura isolada com limites aplicados antes de cada ação. O gtm-api é do segundo tipo.
Com quais clientes ele funciona
Qualquer cliente compatível com MCP:
- Claude (Desktop, Code e API)
- Cursor
- ChatGPT (via conectores)
- LangChain, n8n e runtimes de agentes personalizados
Não usa MCP? Toda ferramenta também é um endpoint REST tipado com webhooks. Um único esquema gera todas as três superfícies.
Início rápido
1. Cadastre-se. Crie uma conta em app.gtm-api.com (plano gratuito para sempre, sem cartão) e conecte uma conta do LinkedIn. Ela abre em um navegador de nuvem anti-detecção dedicado com seu próprio proxy.
2. Adicione o servidor ao seu cliente MCP. Para o Claude Desktop, edite claude_desktop_config.json (exemplo em examples/):
{
"mcpServers": {
"gtm-api": {
"url": "https://mcp.gtm-api.com/mcp"
}
}
}
Não há chave para colar. O endpoint autentica com OAuth: seu cliente recebe um desafio WWW-Authenticate na primeira chamada, registra-se no servidor de autorização (registro dinâmico de cliente) e abre uma página de consentimento no seu navegador.
Clientes headless podem pular o navegador. A mesma chave de API (gtm_live_...) que autentica a API REST também funciona neste endpoint como um token bearer simples, o que a torna utilizável a partir de CI e servidores:
claude mcp add --transport http gtm-api https://mcp.gtm-api.com/mcp --header "Authorization: Bearer gtm_live_..."
Para clientes que iniciam comandos, o launcher abaixo lê a chave de GTM_API_KEY (versão 1.3.0 ou mais recente; versões mais antigas ignoram e usam apenas OAuth). Escolha um modo por conexão: com uma chave anexada, o fluxo OAuth nunca inicia. Clientes interativos, como conectores do claude.ai, não têm campo de cabeçalho e sempre usam OAuth. Matriz completa: docs.gtm-api.com/mcp/connect.
O cliente só pode iniciar um comando, não abrir uma URL? O launcher @gtm-api/linkedin-mcp faz a ponte entre clientes stdio e o mesmo endpoint, executando o mesmo fluxo OAuth (configuração em examples/):
{
"mcpServers": {
"gtm-api": {
"command": "npx",
"args": ["-y", "@gtm-api/linkedin-mcp"]
}
}
}
Para o Claude Code, é uma linha: claude mcp add --transport http gtm-api https://mcp.gtm-api.com/mcp.
O mesmo launcher também é distribuído como imagem Docker, gtmapi/linkedin-mcp (configuração em examples/). Monte um volume no cache de tokens para que a etapa de consentimento ocorra apenas uma vez, em vez de a cada contêiner:
{
"mcpServers": {
"gtm-api": {
"command": "docker",
"args": ["run", "-i", "--rm", "-v", "gtm-mcp-auth:/home/node/.mcp-auth", "gtmapi/linkedin-mcp"]
}
}
}
3. Reinicie o cliente e dê comandos em linguagem natural:
"Todas as manhãs, aceite novos convites de conexão de fundadores, responda com uma breve saudação e adicione qualquer pessoa que esteja contratando SDRs a uma lista de leads quentes."
O agente descobre as ações e as encadeia: busca os convites de conexão mais recentes, aceita os que correspondem e envia a cada novo contato uma mensagem curta. Toda ação externa passa por uma etapa de pré-visualização e confirmação, além de uma verificação de limite diário no lado do servidor, antes de chegar ao LinkedIn.
Ferramentas MCP
O servidor expõe exatamente três ferramentas MCP. A descoberta é progressiva: um agente lista os conjuntos de ferramentas, inspeciona um e então invoca uma ação. As mais de 160 ações do LinkedIn nunca carregam no contexto do modelo de uma só vez, então a pegada do esquema permanece em cerca de 400 tokens.
[
{
"name": "list_toolsets",
"description": "List the available toolsets (domains) on this server. Each toolset groups related tools (e.g. linkedin.messaging, id.billing). Start here, then get_toolset_tools to inspect one, then call_tool to run a tool. Requires OAuth authorization (Bearer token).",
"input_schema": { "type": "object", "properties": {} }
},
{
"name": "get_toolset_tools",
"description": "List the tools in a toolset. Default (lite) returns name + title + one-line summary; pass verbose:true for full descriptions, safety flags, and parameter names. Run one via call_tool.",
"input_schema": {
"type": "object",
"properties": {
"toolset": { "type": "string", "description": "Toolset id from list_toolsets, e.g. \"linkedin.messaging\"." },
"verbose": { "type": "boolean", "description": "Include full descriptions + parameter names." }
},
"required": ["toolset"]
}
},
{
"name": "call_tool",
"description": "Invoke a tool by name (discovered via get_toolset_tools) with its arguments object. Behaves exactly like calling the tool on its domain mount. Dangerous tools still require the two-step preview→confirm (pass commit_token inside arguments on the confirm call).",
"input_schema": {
"type": "object",
"properties": {
"name": { "type": "string", "description": "Exact tool name." },
"arguments": { "type": "object", "description": "The tool's arguments object." }
},
"required": ["name"]
}
}
]
call_tool valida argumentos contra o esquema de entrada da própria ação alvo, então pré-visualização e confirmação, limites de taxa e erros tipados se aplicam exatamente como se a ação estivesse montada diretamente.
O que o agente pode fazer
Mais de 160 ações tipadas em 11 conjuntos de ferramentas do LinkedIn, agrupadas aqui em sete áreas:
| Conjunto de ferramentas | O que cobre |
|---|---|
| Mensagens | mensagens entre membros, notas de voz, InMail, conversas do Sales Navigator, busca e sincronização de caixa de entrada |
| Rede | solicitações de conexão, aceitar ou ignorar convites, retirar, conexões e seguidores |
| Conteúdo | acompanhar posts e métricas, comentar, reagir, obter engajadores e comentaristas |
| Enriquecimento | perfil lite e completo, experiência, habilidades, educação, dados de empresas |
| Busca | busca de pessoas, empresas e posts, perfis semelhantes, funcionários, tomadores de decisão, buscas salvas |
| Saúde da conta | limites inteligentes, snapshots de saúde, limite atingido, bloqueio e registros de atividade |
| Infraestrutura | navegadores de nuvem anti-detecção, proxies dedicados, webhooks |
O mesmo endpoint também serve os conjuntos de ferramentas de conta, cobrança e orquestração, totalizando mais de 250 ações tipadas. Este repositório documenta a parte do LinkedIn.
O LinkedIn é o canal ativo hoje. E-mail (Gmail, Outlook, IMAP), mensageiros (WhatsApp, Telegram, DMs do Instagram) e calendários (Google, Microsoft) estão no roadmap com o mesmo contrato tipado.
É seguro para minha conta do LinkedIn?
A segurança é aplicada pelo próprio servidor, sob cada chamada de ferramenta. Seis mecanismos:
- Contas próprias. O agente atua através de uma conta que você conectou e controla. Não há pool de contas compartilhadas.
- Isolamento de sessão. Cada conta roda em seu próprio navegador de nuvem anti-detecção com um proxy dedicado. Uma conta, uma sessão, uma assinatura de dispositivo.
- Aquecimento. Uma conta nova começa com uma fração do máximo da plataforma, e sua cota é aumentada programaticamente conforme a conta envelhece e constrói histórico.
- Limites no lado do servidor. Orçamentos diários por ação são verificados antes do envio, em 16 categorias de ações.
- Ritmo aleatorizado. Trabalho em massa é distribuído com intervalos aleatórios por lacuna, porque uma cadência fixa é em si um padrão detectável.
- Pré-visualização e confirmação. Ações externas retornam uma pré-visualização e exigem confirmação, para que um agente excessivamente ansioso não queime uma conta.
Com essa configuração, o gtm-api relata mais de 20.000 contas do LinkedIn com taxa de banimento abaixo de 1%. Método completo: gtm-api.com/safe-linkedin-automation.
Como ele se compara a servidores MCP do LinkedIn open-source
Servidores baseados em cookies, como stickerdaniel/linkedin-mcp-server, executam uma sessão de navegador com seu próprio cookie do LinkedIn e deixam o ritmo por sua conta: o README do projeto documenta o fluxo de login por cookie e não lista limite de taxa. Os atores do LinkedIn da Apify são um formato diferente, scrapers hospedados precificados por resultado e focados em extrair dados.
| gtm-api (gerenciado) | Open-source baseado em cookies | |
|---|---|---|
| Modelo de conta | Própria, aquecida, isolada | Sua sessão de cookie ao vivo |
| Camada de segurança | Navegador anti-detecção, proxy dedicado, limites | Não incluída |
| Aplicação de limites | Lado do servidor, antes de cada ação | Você constrói |
| Envios (conectar, mensagem, InMail) | Sim, com pré-visualização e confirmação | Parcial ou nenhum |
| Taxa de banimento publicada | Autorrelatada: abaixo de 1% em mais de 20.000 contas | Não publicada |
| Suporte | Gerenciado | Comunidade |
| Preço | A partir de $39 por conta conectada por mês, $10 em volume | Grátis, execute você mesmo |
| Código auto-hospedado e auditável | Não, serviço gerenciado | Sim |
Preços
Preço por volume por conta conectada por mês, a partir de $10/conta em escala, com chamadas de API ilimitadas e sem taxas por ação. Plano gratuito para sempre, sem cartão: gtm-api.com/pricing.
Uma nota sobre os termos do LinkedIn
O Contrato do Usuário do LinkedIn não permite automação de terceiros, então toda ferramenta neste espaço carrega risco e nenhum fornecedor pode honestamente prometer o contrário. O gtm-api reduz esse risco atuando apenas em contas que você possui, com aquecimento, ritmo humano e limites aplicados, que é o motivo da taxa de banimento relatada ser inferior a 1%. Isso não é aconselhamento jurídico.
Links
- Cadastre-se (plano gratuito para sempre): app.gtm-api.com
- Conectando qualquer cliente, passo a passo: docs.gtm-api.com/mcp/connect
- Como um servidor MCP do LinkedIn funciona: gtm-api.com/linkedin-mcp-server
- O método de segurança em detalhes: gtm-api.com/safe-linkedin-automation
- Launcher npm: npmjs.com/package/@gtm-api/linkedin-mcp
- Imagem Docker: hub.docker.com/r/gtmapi/linkedin-mcp
- Model Context Protocol: modelcontextprotocol.io
gtm-api.com, o servidor de API e MCP do LinkedIn para agentes de IA.