Claude Chat MCP

Servidor MCP para a API de Mensagens do Anthropic Claude — chat, visão, pesquisa na web, pensamento estendido (Rust)

Documentação

mcp-server-claude-chat

Um servidor MCP (Model Context Protocol) para a API de Mensagens do Anthropic Claude. Construído em Rust, expõe chat, visão, busca web ao vivo e listagem de modelos como ferramentas MCP — para que qualquer cliente MCP (Claude Desktop, Claude Code, etc.) possa consultar o Claude como uma ferramenta.

Comunica-se via stdio usando JSON-RPC 2.0, como todos os outros servidores MCP nesta coleção. Estruturalmente, ele espelha mcp-server-grok-chat / mcp-server-gpt-chat, adaptado ao formato da API da Anthropic.

Assinatura vs. créditos de API

Este servidor usa a API da Anthropic com uma chave de API (créditos de API). Essa é a única forma suportada e em conformidade com os termos de usar o Claude a partir de uma ferramenta de terceiros.

Uma assinatura Pro/Max do Claude (o tipo que alimenta o Claude Code e os aplicativos Claude) não é utilizável aqui: essa autenticação é licenciada para os clientes próprios da Anthropic, e roteá-la através de um servidor personalizado violaria os Termos do Consumidor da Anthropic — a preocupação que você levantou sobre "US$ 200 de uso do Claude a partir de outro serviço". Então: chave de API mesmo. (Se você executar um gateway compatível com a Anthropic, aponte base_url para ele — veja Configuração.)

Ferramentas

FerramentaDescrição
chatEnvie uma mensagem para o Claude. Suporta histórico de múltiplas mensagens, prompt de sistema, seleção de modelo e pensamento estendido via thinking_budget.
chat_with_visionAnalise uma imagem a partir de uma URL de imagem e um prompt de texto.
chat_with_searchConverse com busca web ao vivo — o Claude pesquisa no servidor e responde com fontes citadas.
list_modelsListe os modelos Claude disponíveis e seus IDs (armazenados em cache por 5 minutos).

Nota: a Anthropic não possui endpoint de embeddings (eles recomendam o Voyage AI), portanto, ao contrário dos servidores grok/gpt, não há ferramenta embedding.

chat

NomeTipoObrigatórioDescrição
promptstringsimA mensagem do usuário a ser enviada
system_promptstringnãoPrompt de sistema para definir contexto/comportamento
messagesstringnãoHistórico da conversa como um array JSON de objetos {role, content} (apenas funções user/assistant — use system_prompt para instruções de sistema)
modelstringnãoID do modelo (padrão: padrão do servidor, claude-opus-4-8). Chame list_models.
temperaturefloatnãoTemperatura de amostragem (0.0–1.0). Ignorada quando thinking_budget está definido.
max_tokensintegernãoMáximo de tokens a gerar (padrão: padrão do servidor)
thinking_budgetintegernãoAtiva o pensamento estendido com este orçamento de tokens (mínimo 1024). O raciocínio é retornado em um bloco [thinking]; max_tokens é automaticamente aumentado acima do orçamento.

chat_with_vision

NomeTipoObrigatórioDescrição
promptstringsimPrompt de texto descrevendo o que analisar
image_urlstringsimURL da imagem (deve ser http:// ou https://)
modelstringnãoID do modelo com capacidade de visão (padrão: padrão do servidor)
temperaturefloatnãoTemperatura de amostragem (0.0–1.0)
max_tokensintegernãoMáximo de tokens a gerar

chat_with_search

NomeTipoObrigatórioDescrição
promptstringsimA mensagem do usuário
system_promptstringnãoPrompt de sistema
modelstringnãoID do modelo (padrão: padrão do servidor)
temperaturefloatnãoTemperatura de amostragem (0.0–1.0)
max_tokensintegernãoMáximo de tokens a gerar
max_usesintegernãoMáximo de buscas web que o Claude pode executar para esta solicitação (padrão: 5)

A busca web é cobrada pela Anthropic em US$ 10 por 1.000 buscas, além dos custos de tokens, e um administrador da organização deve habilitar a busca web no Console do Claude.

list_models

Sem parâmetros. Resultados armazenados em cache por 5 minutos.

Pré-requisitos

Configuração

mkdir -p ~/.config/mcp-server-claude-chat
cp config.toml.example ~/.config/mcp-server-claude-chat/config.toml
# then edit it and set api_key

Config (~/.config/mcp-server-claude-chat/config.toml):

api_key = "sk-ant-..."

# Optional:
# base_url = "https://api.anthropic.com/v1"   # or a compatible gateway
# default_model = "claude-opus-4-8"
# default_max_tokens = 4096

O servidor falha rapidamente na inicialização se a config estiver ausente ou se api_key estiver vazio.

Build

cargo build --release   # produces target/release/claude-chat
cargo build             # debug build
cargo run               # run in dev mode
RUST_LOG=debug cargo run
cargo test              # unit tests (response formatting, validation, message building)

Configuração do MCP

Claude Desktop (~/.config/Claude/claude_desktop_config.json) ou qualquer cliente MCP:

{
  "mcpServers": {
    "claude-chat": {
      "command": "/media/codechap/4TB/develop/mcps/mcp-server-claude-chat/target/release/claude-chat"
    }
  }
}

Claude Code:

claude mcp add claude-chat -- /media/codechap/4TB/develop/mcps/mcp-server-claude-chat/target/release/claude-chat

Estrutura do Projeto

src/
  main.rs    - entry point, config loading, stdio transport setup
  server.rs  - MCP tool definitions (chat, chat_with_vision, chat_with_search, list_models)
  api.rs     - Anthropic HTTP client, Messages/Models types, response formatter
  params.rs  - tool parameter types with serde + JSON Schema derives
  config.rs  - TOML config loading

Licença

MIT