linkedin-insights-mcp

erikfig/linkedin-insights-mcp

3.2

If you are the rightful owner of linkedin-insights-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

A Model Context Protocol (MCP) server for analyzing LinkedIn post data stored in MongoDB.

Tools
  1. search_posts

    Search posts with specific filters like impressions, dates, and content.

  2. get_post_details

    Retrieve details of a specific post by its ID.

  3. analyze_engagement

    Analyze engagement metrics of the posts.

LinkedIn Insights MCP Server

Um servidor MCP (Model Context Protocol) para análise de dados de posts do LinkedIn armazenados em MongoDB.

📋 Sobre o Projeto

Este projeto implementa um servidor MCP que se conecta a um banco MongoDB contendo dados de posts do LinkedIn e fornece ferramentas e recursos para análise desses dados. É ideal para análise de engajamento, performance de posts e insights de conteúdo.

🚀 Funcionalidades

Recursos (Resources)

  • Todos os Posts: Lista completa de posts
  • Top Posts: Posts com maior número de impressões
  • Posts Mais Engajados: Posts com maior taxa de engajamento
  • Resumo Analytics: Estatísticas gerais dos posts

Ferramentas (Tools)

  • search_posts: Busca posts com filtros específicos (impressões, datas, conteúdo)
  • get_post_details: Obtém detalhes de um post específico por ID
  • analyze_engagement: Analisa métricas de engajamento dos posts

📊 Estrutura dos Dados

Os posts do LinkedIn têm a seguinte estrutura:

interface LinkedInPost {
  _id: { $oid: string };
  url: string;
  comments: number;
  content: string;
  impressions: number;
  reactions: number;
  shares: number;
  postedAt: string;
}

🛠️ Instalação

  1. Clone o repositório:
git clone <url-do-repositorio>
cd mcp-linkeding-mongo
  1. Instale as dependências:
npm install
  1. Configure as variáveis de ambiente criando um arquivo .env:
MONGO_CONNECTION_STRING=mongodb://localhost:27017
MONGO_DB=linkedin_insights_v2
MONGO_COLLECTION_NAME=linkedin_posts

🔧 Scripts Disponíveis

  • npm run build: Compila o TypeScript para JavaScript
  • npm run start: Executa o servidor compilado
  • npm run dev: Executa em modo desenvolvimento com ts-node
  • npm run mcp: Alias para executar o servidor MCP

📱 Como Usar

Executar o Servidor

npm run mcp

Conectar via MCP

O servidor implementa o protocolo MCP e pode ser usado com qualquer cliente compatível. Ele se comunica via STDIO.

Exemplos de Uso

Buscar posts com filtros:

{
  "tool": "search_posts",
  "arguments": {
    "minImpressions": 1000,
    "startDate": "2024-01-01",
    "hasContent": true
  }
}

Obter detalhes de um post:

{
  "tool": "get_post_details", 
  "arguments": {
    "postId": "60f7b2b4c4f5a3b2d4e6f7a8"
  }
}

🗄️ Configuração do MongoDB

O projeto espera uma coleção MongoDB com posts do LinkedIn. Certifique-se de que:

  1. O MongoDB está rodando e acessível
  2. O banco de dados e coleção existem
  3. As credenciais estão corretas no .env

📈 Métricas Calculadas

  • Taxa de Engajamento: (reactions + comments + shares) / impressions * 100
  • Total de Interações: reactions + comments + shares
  • Impressões Médias: Média de impressões por post

🔒 Variáveis de Ambiente

VariávelDescriçãoPadrão
MONGO_CONNECTION_STRINGString de conexão MongoDBmongodb://localhost:27017
MONGO_DBNome do banco de dadoslinkedin_insights_v2
MONGO_COLLECTION_NAMENome da coleçãolinkedin_posts

🛡️ Tratamento de Erros

O servidor inclui tratamento de erros para:

  • Conexão com MongoDB
  • Posts não encontrados
  • Ferramentas inexistentes
  • Recursos inválidos

📦 Dependências

  • @modelcontextprotocol/sdk: SDK para implementação MCP
  • mongodb: Driver oficial do MongoDB
  • dotenv: Carregamento de variáveis de ambiente
  • zod: Validação de esquemas TypeScript

🤝 Desenvolvimento

O projeto usa TypeScript e está estruturado em módulos:

  • src/index.ts: Servidor principal e configuração MCP
  • src/database.ts: Gerenciador de conexão e operações MongoDB
  • src/tools.ts: Implementação das ferramentas MCP
  • src/resources.ts: Implementação dos recursos MCP
  • src/types.ts: Definições de tipos e esquemas

📄 Licença

ISC