logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

ai-agent-with-mcp

Interacts with external data sources and tools using the Model Context Protocol, enabling AI agents to manage user information and perform real-time data manipulation.

Author

ai-agent-with-mcp logo

moises-paschoalick

No License

Quick Info

GitHub GitHub Stars 2
NPM Weekly Downloads 0
Tools 1
Last Updated 2026-02-19

Tags

aiagentsagentai agentai agentsenabling ai

Criando um MCP server com NodeJS (ai-agent-with-mcp)

Este projeto implementa um agente de IA que utiliza o Model Context Protocol (MCP) para interagir com recursos externos.

O repositório inclui:

Um servidor MCP funcional, com recursos REST para usuários e mensagens.

Um cliente MCP para consumir esses recursos via protocolo.

Exemplos práticos de como acessar os recursos por terminal, via API REST ou diretamente no Cursor.

Recursos Disponíveis

O servidor MCP fornece os seguintes recursos:

Recursos de Usuários

  • api://users: Lista todos os usuários cadastrados no sistema
  • Retorna informações como ID, nome, número de telefone e thread ID
  • Formato: JSON
  • Exemplo de resposta: json { "content": [ { "id": 1, "phoneNumber": "553496341404", "name": "Moisés Paschoalick", "threadId": "thread_bZEPVYVBvHxY9Ok6WqR63M2D" }, { "id": 2, "phoneNumber": "553496338888", "name": "José Silva", "threadId": "1thread_t8SFjKio6yN9pppqypilwGoR__" }, { "id": 3, "phoneNumber": "553496338889", "name": "Maria Antonia", "threadId": "1thread_t8SFjKio6yN9pppqypilwGoR__" } ], "pageable": { "pageNumber": 0, "pageSize": 12, "sort": { "empty": false, "sorted": true, "unsorted": false }, "offset": 0, "paged": true, "unpaged": false }, "last": true, "totalPages": 1, "totalElements": 3, "first": true, "size": 12, "number": 0, "sort": { "empty": false, "sorted": true, "unsorted": false }, "numberOfElements": 3, "empty": false }

Recursos de Mensagens

  • hello://world: Retorna uma mensagem de saudação simples
  • Formato: texto plano (text/plain)
  • Exemplo de resposta: "Hello, World! This is my first MCP resource."

Instalação para Cursor

Primeiro, certifique-se de que você tem o Cursor instalado e o npm configurado em seu sistema.

Opção 1: Instalação via Terminal

Execute o seguinte comando no terminal:

npx -y @smithery/cli@latest install @wonderwhy-er/desktop-commander --client cursor --key dda23bec-caa6-4487-a1e9-eb74e22e33eb

Obs: a key mencionada é somente para exemplo, você precisa adicionar a sua.

Reinicie o Cursor se estiver em execução.

Opção 2: Instalação Manual

Adicione a entrada apropriada ao seu arquivo mcp.json:

Para Mac/Linux:

No Linux: ~/.config/cursor.json

{
  "mcpServers": {
    "desktop-commander": {
      "command": "npx",
      "args": [
        "-y",
        "@smithery/cli@latest",
        "run",
        "@wonderwhy-er/desktop-commander",
        "--key",
        "dda23bec-caa6-4487-a1e9-eb74e22e33eb"
      ]
    }
  }
}

Para Windows:

{
  "mcpServers": {
    "desktop-commander": {
      "command": "cmd",
      "args": [
        "/c",
        "npx",
        "-y",
        "@smithery/cli@latest",
        "run",
        "@wonderwhy-er/desktop-commander",
        "--key",
        "dda23bec-caa6-4487-a1e9-eb74e22e33eb"
      ]
    }
  }
}

Reinicie o Cursor se estiver em execução.

Opção 3: Clonar localmente

Clone e construa:

git clone https://github.com/moises-paschoalick/ai-agent-with-mcp.git
cd ai-agent-with-mcp
npm run setup

Reinicie o Cursor se estiver em execução.

O comando de configuração irá: - Instalar dependências - Construir o servidor - Configurar o Cursor - Adicionar servidores MCP à configuração do Cursor, se necessário

Como Usar

Cliente MCP

O projeto inclui um cliente MCP que pode ser usado para acessar os recursos disponíveis:

import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js";

async function main() {
  const client = new Client({
    name: "hello-mcp-client",
    version: "1.0.0"
  });
  const transport = new StdioClientTransport({
    command: "node",
    args: ["build/index.js"]
  });

  try {
    await client.connect(transport);

    // Listar recursos disponíveis
    const resources = await client.listResources();
    console.log("Recursos disponíveis:", resources);

    // Ler o recurso de usuários
    const content = await client.readResource({ uri: "api://users" });
    console.log("\nLista de Usuários:", content);
  } catch (error) {
    console.error("Erro ao executar o cliente:", error);
  }
}

main().catch(console.error);

API REST Direta

Você também pode acessar os recursos diretamente via API REST:

# Listar todos os usuários
curl http://3.238.149.189:8080/users

Instalação e Execução

# Instalar dependências
npm install

# Compilar o projeto
npm run build

# Executar o servidor
npm start

# Executar em modo de desenvolvimento
npm run dev

Requisitos

  • Node.js (versão compatível com AbortController)
  • TypeScript
  • @modelcontextprotocol/sdk

See Also

`