Web Analytics

mcp-chat

⭐ 116 stars Portuguese by Flux159

mcp-chat

🌐 Idioma

Cliente MCP Genérico de Código Aberto para testar e avaliar servidores e agentes MCP

Guia Rápido

Certifique-se de que você exportou ANTHROPIC_API_KEY em seu ambiente ou em um arquivo .env na raiz do projeto. Você pode obter uma chave de API registrando-se na página de chaves do Console Anthropic.

Caso de uso simples que inicia um prompt de chat interativo com o servidor MCP do sistema de arquivos via CLI:

npx mcp-chat --server "npx -y @modelcontextprotocol/server-filesystem /Users/$USER/Desktop"

Isso abrirá um prompt de chat que você pode usar para interagir com os servidores e conversar com um LLM.

Configuração

Você também pode simplesmente especificar seu claude_desktop_config.json (Mac):

npx mcp-chat --config "~/Library/Application Support/Claude/claude_desktop_config.json"

Ou (Windows):

npx mcp-chat --config "%APPDATA%\Claude\claude_desktop_config.json"

Web mode

https://github.com/user-attachments/assets/b7e8a648-8084-4955-8cdf-fc6eb141572e

You can also run mcp-chat in web mode by specifying the --web flag (make sure to have ANTHROPIC_API_KEY exported in your environment):

npx mcp-chat --web

No modo web, você pode iniciar novos chats, enviar mensagens para o modelo e configurar dinamicamente os servidores mcp via interface gráfica - sem necessidade de especificar na linha de comando. Além disso, os chats criados pela Web UI são salvos em ~/.mcpchats/chats assim como os chats criados via CLI.

Funcionalidades

Uso via CLI

Execute prompts via CLI com a flag -p:

npx mcp-chat --server "npx mcp-server-kubernetes" -p "List the pods in the default namespace"

Isso executa o prompt com o mcp-server do kubernetes e encerra após a resposta ser recebida no stdout.

Escolha um modelo para conversar via CLI usando a opção -m:

npx mcp-chat --server "npx mcp-server-kubernetes" -m "claude-3.5"

Utiliza o modelo claude-3.5 para conversar. Observe que atualmente apenas modelos da Anthropic são suportados.

Prompt de sistema personalizado:

O parâmetro --system pode ser usado para especificar um prompt de sistema:

npx mcp-chat --system "Explain the output to the user in pirate speak." --server "npx mcp-server-kubernetes" -p "List the pods in the default namespace"

Variáveis de ambiente (ENV vars)

O Mcp-chat suporta o repasse de variáveis de ambiente para servidores MCP. No entanto, isso não é padronizado na especificação MCP e outros clientes podem não utilizar valores dinâmicos de variáveis de ambiente — leia mais aqui sobre clientes MCP padrão stdio.

KUBECONFIG="~/.kube/config" npx mcp-chat --server "npx mcp-server-kubernetes"

Para desenvolvedores de mcp-servers

Você pode fornecer uma versão local de um servidor mcp em Python ou Node para testá-lo com o mcp-chat:

Node JS:

# Directly executing built script
npx mcp-chat --server "/path/to/mcp-server-kubernetes/dist/index.js"

Using node / bun

npx mcp-chat --server "node /path/to/mcp-server-kubernetes/dist/index.js"

Python:

# Python: Using uv
npx mcp-chat --server "uv --directory /path/to/mcp-server-weather/ run weather.py"

Using python / python3 - make sure to run in venv or install deps globally

npx mcp-chat --server "/path/to/mcp-server-weather/weather.py"

Desenvolvimento

Instale as dependências e execute o CLI:

git clone https://github.com/Flux159/mcp-chat
bun install
bun run dev
Para desenvolver mcp-chat enquanto se conecta a um mcp-server, faça uma build e execute o CLI com a flag de servidor:

npm run build && node dist/index.js --server "npx mcp-server-kubernetes" -p "List the pods in the default namespace"

Teste:

bun run test

Construção:

bun run build

Publicação:

bun run publish

Publicando Docker:

bun run dockerbuild

Estrutura do Projeto

├── src/
│   ├── index.ts            # Main client implementation & CLI params
│   ├── constants.ts        # Default constants
│   ├── interactive.ts      # Interactive chat prompt handling & logic
├── test/                   # Test files
│   ├── cli.test.ts         # Test CLI params
│   ├── config.test.ts      # Test config file parsing

Publicando nova versão

Vá para a página de releases, clique em "Draft New Release", clique em "Choose a tag" e crie uma nova tag digitando um novo número de versão usando o formato semver "v{major}.{minor}.{patch}". Em seguida, escreva um título para o release "Release v{major}.{minor}.{patch}" e uma descrição / changelog se necessário e clique em "Publish Release".

Isso criará uma nova tag que irá acionar uma nova build de release via o workflow cd.yml. Após ser bem-sucedido, o novo release será publicado no npm. Note que não é necessário atualizar manualmente a versão do package.json, pois o workflow irá atualizar automaticamente o número da versão no arquivo package.json e enviar um commit para main.

Licença

Licença MIT

--- Tranlated By Open Ai Tx | Last indexed: 2025-09-16 ---