Hardcover

Servidor MCP para buscar Livros, Séries de Livros e Livros de Usuário do Hardcover

Documentação

Hardcover MCP

Um servidor Model Context Protocol (MCP) que expõe acesso somente leitura à API GraphQL do Hardcover.app. As ferramentas são organizadas em namespaces sob books.*, users.* e series.*, com recursos e prompts para orientar consultas seguras e de baixo volume.

Este é um servidor não oficial, mantido pela comunidade, e não é afiliado ao Hardcover.app.

Requisitos

Instalação

# Option A: with uv (recommended)
uv pip install -e .

# Option B: with pip
python -m venv .venv
source .venv/bin/activate
pip install -e .

Protocolo de Transporte

Este servidor atualmente suporta apenas STDIO como protocolo de transporte

Uso

  1. Obtenha uma chave de API em https://hardcover.app/account/api.. Copie o valor exatamente como fornecido (ele já começa com Bearer ).
  2. Exporte-a para o servidor:
export HARDCOVER_API_KEY="Bearer <your-token>"

Executando o servidor diretamente

  1. Inicie o servidor MCP:
uv run src/hardcover_mcp/main.py

Configurando STDIO para um chat de IA

Codex

[mcp_servers.hardcover_mcp]
command = "uv"
args = ["run", "src/hardcover_mcp/main.py"]
env = { "HARDCOVER_API_KEY" = "API KEY heRE" }
cwd = "full_path_to/hardcover_mcp"

O servidor registra os namespaces de ferramentas books.*, users.* e series.*, além de recursos como hardcover/tag-categories e prompts de uso como hardcover/fantasy-this-year.

Executando a suíte de testes

pytest

Solução de Problemas

  • HARDCOVER_API_KEY environment variable is required: certifique-se de que a variável esteja definida no mesmo shell em que você inicia o servidor. Inclua o prefixo Bearer no início.
  • Hardcover API returned an error response ou 401/403: confirme se o token é válido e não expirou.
  • Respostas lentas ou timeouts: reduza os argumentos limit/offset; a API impõe limites de taxa. Comece com limit<=10.
  • Problemas de transporte SSL/HTTP: verifique as configurações de rede/proxy locais e tente novamente com uma conexão estável.