1Social

Publique no Instagram, TikTok, LinkedIn, X (Twitter), Facebook, Threads e Bluesky a partir de uma única mensagem. O 1Social ajusta cada legenda ao limite da rede, avisa quando uma rede precisa de imagem e agenda publicações com até 30 dias de antecedência. Após publicar, ele reporta cada rede separadamente — o que foi publicado, o que falhou e por quê — e pode tentar novamente uma rede sem afetar as demais. Edite ou cancele qualquer coisa ainda agendada.

Documentação

1Social MCP

Servidor Model Context Protocol para publicação em redes sociais — protegido por OAuth.

O 1Social MCP permite que um assistente de IA publique por você. Conecte Claude, ChatGPT, Cursor, VS Code ou um cliente CLI ao 1Social e publique, agende, verifique e corrija posts no Instagram, TikTok, X, LinkedIn, Bluesky, Threads e Facebook em linguagem natural.

  • URL do servidor: https://mcp.1social.dev/mcp
  • Transporte: Streamable HTTP
  • Autenticação: OAuth 2.1 com PKCE e registro dinâmico de clientes
  • Página inicial e configuração: 1social.dev/mcp

Instalação

O 1Social MCP é um servidor remoto, protegido por OAuth. Não há pacote para instalar nem chave de API para colar. Adicione isto à configuração MCP do seu cliente:

{
  "mcpServers": {
    "1social": {
      "url": "https://mcp.1social.dev/mcp"
    }
  }
}

Instalação com um clique: Cursor · VS Code · Conectores Claude · Conectores ChatGPT

Clientes CLI (Claude Code, Gemini CLI, Codex CLI) e trechos manuais: consulte Clientes suportados.

Início rápido

  1. Crie uma conta 1Social em 1social.dev.
  2. Conecte suas contas sociais no navegador. Este passo exige um navegador e não pode ser feito pelo chat — a tela de consentimento OAuth de cada rede precisa ser assinada por você.
  3. Adicione o servidor ao seu cliente com o link de um clique, o comando CLI ou o trecho JSON/TOML acima.
  4. Autorize com OAuth quando seu cliente abrir a tela de consentimento.
  5. Peça ao seu assistente para publicar.

O que você pode fazer pelo chat

  • 📤 Publicar e agendar — uma mensagem vai para todas as redes que você escolher, agora ou com até 30 dias de antecedência.
  • 🔍 Verificar antes de publicar — contagem de caracteres por rede, se uma imagem é obrigatória, se um post em várias partes será transformado em thread nativamente ou unificado, e o custo em relação à sua cota.
  • 🧾 Ler o recibo — o que chegou em cada rede, o que falhou e por quê, e o que realmente não pôde ser determinado.
  • ♻️ Corrigir o que falhou — tentar novamente uma rede sem tocar nas que já foram publicadas.
  • 🖼 Anexar mídia — publicar uma imagem ou vídeo pelo chat. Instagram e TikTok recusam posts sem mídia.
  • ✏️ Editar, cancelar, excluir — alterar um post agendado, desagendá-lo ou excluí-lo das redes que permitem exclusão.

Superfície de ferramentas

Dez ferramentas, propositalmente poucas. Publicar agora e agendar são a mesma ferramenta (scheduledAt: null significa agora), e ler um post é list_posts com um postId em vez de uma segunda ferramenta — um conjunto menor é um do qual um modelo escolhe com precisão.

FerramentaO que faz
list_accountsContas conectadas, o que cada rede aceita, plano atual, cota restante. Chame primeiro — os IDs de canais vêm daqui.
preview_postTeste gratuito: limites por rede, requisitos de mídia, comportamento de threads, custo de cota. Nada é publicado.
publish_postPublica agora ou agenda com até 30 dias de antecedência. Retorna um recibo por rede. Aceita um idempotencyKey.
list_postsPosts com o resultado de entrega por rede — entregue, falhou com motivo, cancelado ou unknown — além de métricas de engajamento armazenadas.
update_postEdita um post que ainda não foi enviado. As redes não têm endpoint de edição, então ele retira e substitui.
cancel_postDesagenda um post e libera a cota que ele reservou.
delete_postExclui do 1Social e tenta remover de cada rede. Consulte O que a exclusão pode e não pode fazer.
retry_deliveryTenta novamente uma rede que falhou, deixando as bem-sucedidas intactas. Recusado para falhas permanentes.
upload_mediaDestino de upload pré-assinado, para clientes que não conseguem anexar um arquivo a uma chamada de ferramenta.
confirm_deliveryRegistra sua resposta sobre uma entrega cujo resultado era desconhecido: o post está no ar nessa rede ou não?

O conjunto ativo é o que o servidor diz que é — execute tools/list contra https://mcp.1social.dev/mcp para as formas exatas e atuais.

Ele avisa quando não sabe

Um post para quatro redes pode chegar em três. Todo resultado de ferramenta é por rede: a falha é nomeada em palavras que você pode usar, e uma entrega cujo resultado realmente não pôde ser determinado retorna como unknown em vez de sucesso.

unknown não é um beco sem saída. Você olha a rede, diz ao assistente o que vê, e confirm_delivery resolve — confirmar que está no ar compromete a cota, confirmar que não está marca a entrega como falha para que retry_delivery possa retomá-la. O assistente não pode adivinhar isso por você.

O que a exclusão pode e não pode fazer

delete_post sempre remove o post do 1Social. A remoção da rede depende da rede:

RedeExclusão remota
X, LinkedIn, Bluesky, Facebook✅ funciona
Instagram, TikTok, Threads❌ sem API de exclusão funcional — o post continua no ar e só você pode removê-lo

Em uma thread com várias partes, apenas o primeiro post é removido; o restante continua no ar como órfãos. A ferramenta relata o que realmente saiu do ar, por rede, e o assistente é instruído a informar isso em vez de confirmar uma exclusão limpa.

Planos e acesso

Publicar custa dinheiro por entrega, então a cota é medida em entregas, não posts — um post para quatro redes são quatro entregas. Uma entrega para o X custa mais unidades que as outras porque o X cobra por post (preços têm os números atuais).

Sem assinaturaSoloPro
Preço$0$19/mês$39/mês
Entregas mensais30 unidades600 unidades1.600 unidades
Todas as sete redes✅✅✅
Recibos de entrega e novas tentativas✅✅✅

Uma conta nova tem uma pequena cota mensal gratuita — suficiente para publicar, ver o recibo voltar, tentar novamente algo e agendar um post — para que as ferramentas funcionem antes de você pagar qualquer coisa. Uma entrega com falha não conta contra a cota quando a falha foi nossa ou da rede.

Você nunca precisa sair do chat para pagar. Uma chamada de ferramenta que esgota a cota retorna com um link de checkout para sua conta.

Clientes suportados

  • Claude (web e desktop) — Configurações → Conectores → Adicionar conector personalizado
  • ChatGPT — Configurações → Apps e conectores → Avançado → Modo desenvolvedor → Adicionar conector personalizado
  • Cursor — deeplink de um clique, ou ~/.cursor/mcp.json
  • VS Code — deeplink de um clique, ou .vscode/mcp.json
  • Claude Code (CLI) — claude mcp add --transport http 1social https://mcp.1social.dev/mcp
  • Gemini CLI — gemini mcp add --transport http 1social https://mcp.1social.dev/mcp
  • Codex CLI — codex mcp add 1social --url https://mcp.1social.dev/mcp
  • Cliente HTTP MCP genérico — aponte para a URL e deixe-o concluir a descoberta OAuth

Instruções completas por cliente: docs/setup.md.

Plugin Cursor

Este repositório também é um plugin Cursor. Ele contribui com um servidor MCP (1social) e nenhuma regra, habilidade, agente ou hook.

.cursor-plugin/plugin.json   ← plugin manifest
mcp.json                     ← the MCP server it contributes
assets/logo.svg              ← plugin logo

Não há nada para configurar. O servidor anuncia metadados OAuth 2.1, o Cursor se registra dinamicamente e a tela de consentimento abre no primeiro uso.

Exemplos de prompts

Publicação cruzada com verificação antes

"Rascunhe um post sobre nossa nova página de preços para LinkedIn, X e Bluesky, verifique se cabe e depois publique."

→ preview_post relata as contagens por rede e o custo; publish_post retorna um recibo por rede.

Agendar com imagem

"Publique esta captura de tela no Instagram e no Threads na sexta às 9h."

→ O arquivo anexado vai em media; o Instagram teria recusado o post sem ele.

Descobrir o que realmente aconteceu

"O post de ontem chegou em todos os lugares?"

→ list_posts retorna o recibo — incluindo qualquer entrega ainda marcada como unknown.

Reparar, não republicar

"O LinkedIn falhou. Tente novamente apenas o LinkedIn."

→ retry_delivery toca uma entrega e deixa as redes bem-sucedidas intactas.

Mais: docs/examples.md.

Autorização

OAuth 2.1 com PKCE, conforme a especificação de autorização MCP. O servidor de autorização é https://1social.dev; ele suporta registro dinâmico de clientes, então clientes compatíveis se configuram sozinhos e você só vê a tela de consentimento. Os escopos concedidos são openid, profile, email e offline_access.

O assistente nunca vê suas credenciais sociais. Seus tokens de rede ficam no 1Social; o assistente tem apenas um token para sua conta 1Social, e você pode revogá-lo a qualquer momento pelo aplicativo web.

Detalhes do fluxo: docs/oauth.md.

Solução de problemas

Erros comuns de conexão, OAuth e chamadas de ferramenta: docs/troubleshooting.md.

Listagens no marketplace

Este repositório é a fonte de duas listagens:

RegistroRegistroManifesto
MCP Registrydev.1social/1socialserver.json — publicado por CI em uma tag v*, autenticado por um registro DNS TXT em 1social.dev
LobeHubsultanlive-1social-mcplhm.plugin.json — publicado com npx -y @lobehub/market-cli plugin publish --dir .

O array tools em lhm.plugin.json é gerado a partir da tabela TOOLS no contrato do próprio servidor (packages/contract/src/mcp/tools.ts no repositório privado), a mesma tabela que responde a tools/list. É um instantâneo: quando a superfície de ferramentas mudar, regenere-o em vez de editar manualmente, ou a listagem descreverá um servidor que não existe mais.

Observe que os dois registros carregam números de versão diferentes de propósito — server.json está em 0.1.0, enquanto o LobeHub atribuiu 1.0.0 no momento da importação e uma versão não pode ser renomeada.

Links do projeto

Licença

MIT — consulte LICENSE.


Construído por @sultanlive. O 1Social é um serviço de publicação hospedado; este repositório é a documentação de seu servidor MCP público. O código-fonte do servidor não é aberto.