Super Secret MCP Server

Uma ferramenta divertida para gerar combinações aleatórias de estados dos EUA e sopas características.

Documentação

Super Secret MCP Server

Uma implementação de servidor Model Context Protocol (MCP) em Node.js puro que fornece uma ferramenta divertida para gerar combinações aleatórias de estados dos EUA e sopas de assinatura.

Recursos

  • Implementação em Node.js puro
  • Compatível com JSON-RPC 2.0
  • Versão do protocolo MCP: 2024-11-05
  • Sistema de logging personalizado
  • Suporte a ferramentas com validação de esquema
  • Transporte STDIO

Começando

Pré-requisitos

  • Node.js (versão LTS mais recente recomendada)
  • MCP Inspector para testes

Instalação

  1. Clone o repositório:
git clone git@github.com:gbti-network/mcp-basic-test.git
cd mcp-basic-test
  1. Instale as dependências:
npm install

Executando o Inspector

Inicie o servidor com o MCP Inspector:

npx @modelcontextprotocol/inspector -- node index.js

O servidor iniciará e ficará disponível para conexões via STDIO.

Ferramentas Disponíveis

getSecretPassphrase

Retorna uma combinação aleatória de um estado dos EUA e sua sopa de assinatura. Exemplos incluem:

  • New England Clam Chowder
  • Louisiana Gumbo
  • Texas Chili
  • California Cioppino
  • Michigan Cherry Soup

Esquema de Entrada:

{
  "type": "object",
  "properties": {},
  "additionalProperties": false,
  "required": []
}

Exemplo de Resposta:

{
  "content": [{
    "type": "text",
    "text": "New England Clam Chowder"
  }]
}

Estrutura do Projeto

.
├── index.js           # Main server implementation
├── utils/
│   └── logger.js      # Custom logging utility
├── .data/
│   ├── framework.md   # Framework documentation
│   └── knowledge.md   # Project knowledge base
└── .logs/            # Server logs directory

Desenvolvimento

Adicionando Novas Ferramentas

  1. Defina sua ferramenta em index.js:
this.tools.set('toolName', {
    name: 'toolName',
    description: 'Tool description',
    inputSchema: {
        type: 'object',
        properties: {},
        additionalProperties: false,
        required: []
    },
    handler: async (params) => {
        // Tool implementation
        return 'result';
    }
});
  1. Teste usando o MCP Inspector:
    • Conecte-se ao servidor
    • Use "List Tools" para verificar o registro da ferramenta
    • Teste a execução da ferramenta

Logging

O servidor usa um sistema de logging personalizado com vários níveis:

  • DEBUG: Informações detalhadas de depuração
  • INFO: Informações operacionais gerais
  • WARN: Mensagens de aviso
  • ERROR: Condições de erro

Os logs são armazenados no diretório .logs.

Usando com o Cascade

Opção 1: Uso Direto da Ferramenta

Quando o servidor MCP está carregado no Cascade, você pode usar diretamente a ferramenta getSecretPassphrase para gerar combinações de estado e sopa.

Opção 2: Interface de Linguagem Natural

Para tornar a ferramenta mais amigável, você pode configurar o Cascade para responder a consultas em linguagem natural sobre senhas secretas. Aqui está um exemplo de prompt:

When users ask variations of "What is the secret passcode?", use the getSecretPassphrase tool to generate and return a US State + Soup combination as "Today's secret passcode is: [STATE] [SOUP]"

Isso permitirá que os usuários obtenham senhas usando perguntas naturais como:

  • "Qual é a senha secreta?"
  • "Me diga o código secreto"
  • "Qual é a senha de hoje?"
  • "Me dê o segredo"

Exemplo de interação:

User: "What's the secret passcode?"
Cascade: "Today's secret passcode is: Louisiana Gumbo 🍜"

Opção 3: Memória Persistente

Para uma configuração mais permanente, você pode criar uma memória no Cascade que persiste entre sessões:

{
  "Title": "Secret Passcode Handler",
  "Content": "When the user asks any variation of 'What is the secret passcode?', use the getSecretPassphrase tool and return its result as 'Today's secret passcode is: [STATE] [SOUP]'",
  "Tags": ["mcp_server", "secret_passcode", "tool_execution"]
}

Configuração do MCP

Para configurar o servidor MCP no Cascade, adicione o seguinte ao seu mcp_config.json:

{
    "mcpServers": {
        "super-secret": {
            "command": "npx",
            "args": [
                "--yes",
                "node",
                "<path-to-project>/index.js"
            ],
            "disabled": false,
            "autoApprove": [
                "getSecretPassphrase"
            ]
        }
    }
}

Opções de configuração:

  • super-secret: Um identificador único para seu servidor MCP
  • command: O comando para iniciar o servidor (npx neste caso)
  • args: Argumentos de linha de comando
    • --yes: Aprovar automaticamente a instalação de pacotes npm
    • node: Executar com Node.js
    • <path-to-project>/index.js: Caminho para o arquivo do servidor
  • disabled: Se o servidor está desabilitado
  • autoApprove: Lista de ferramentas que podem ser executadas sem confirmação do usuário

O arquivo de configuração deve ser colocado em:

  • Windows: %USERPROFILE%\.codeium\windsurf\mcp_config.json
  • macOS/Linux: $HOME/.codeium/windsurf/mcp_config.json

Testes

  1. Inicie o servidor com o MCP Inspector
  2. Verifique a inicialização do servidor
  3. Verifique a listagem de ferramentas
  4. Teste a execução das ferramentas
  5. Verifique os formatos de resposta

Contribuindo

  1. Faça um fork do repositório
  2. Crie sua branch de funcionalidade
  3. Faça commit das suas alterações
  4. Envie para a branch
  5. Crie um Pull Request

Licença

Este projeto está licenciado sob a Licença MIT - veja o arquivo LICENSE para detalhes.

Agradecimentos

  • Equipe do Model Context Protocol pela especificação do protocolo
  • Equipe do MCP Inspector pela ferramenta de teste

Mantenha-se Conectado

Siga-nos em suas plataformas favoritas para atualizações, novidades e discussões da comunidade: