O'RLY MCP
Gera capas de livros O'RLY? (paródia da O'Reilly).
Documentação
orly-mcp

Um servidor MCP (Model Context Protocol) para gerar capas de livros O'RLY? (paródia da O'Reilly) que são exibidas diretamente no aplicativo Claude Desktop.
Início Rápido
Instalar no Servidor MCP
basta adicionar o seguinte à sua configuração do mcp:
// ... other MCP servers ...
"mcp-orly": {
"command": "uvx",
"args": [
"orly-mcp@latest"
]
}
// ... other MCP servers ...
Desenvolvimento Local
# Clone the repository
git clone [your-repo-url]
cd orly-mcp
# Create a virtual environment and install dependencies
uv venv .venv
uv pip install -r requirements.txt
# Test a sample image generation
uv run python test_mcp.py
# Run comprehensive tests
uv run python test_comprehensive.py
# Start the MCP server for development
python start_server.py
Configuração do Claude Desktop
Adicione este servidor MCP ao seu arquivo de configuração do Claude Desktop (claude_desktop_config.json):
Configuração Recomendada
{
"mcpServers": {
"orly-local": {
"command": "uv",
"args": [
"run",
"--with", "fastmcp",
"--with", "pillow",
"--with", "fonttools",
"--with", "requests",
"python",
"/path/to/your/orly-mcp/orly_mcp/server.py"
],
"cwd": "/path/to/your/orly-mcp"
}
}
}
Importante: Substitua /path/to/your/orly-mcp pelo caminho real do seu projeto.
Alternativa: Instalação via Pacote
# Install in editable mode
uv pip install -e .
# Claude Desktop config
{
"mcpServers": {
"orly-local": {
"command": "uvx",
"args": ["--from", "/your/path/to/orly-mcp", "orly-mcp"]
}
}
}
Solução de Problemas
Erro "ModuleNotFoundError: No module named 'mcp'"
Se você vir este erro, as dependências do MCP não estão disponíveis:
cd /path/to/your/orly-mcp
uv pip install -r requirements.txt
Certifique-se de que sua configuração do Claude Desktop inclua todas as dependências necessárias com as flags --with.
Erro "ModuleNotFoundError: No module named 'fontTools'"
Garanta que todas as dependências estejam especificadas na sua configuração do Claude Desktop:
"args": [
"run",
"--with", "fastmcp",
"--with", "pillow",
"--with", "fonttools",
"--with", "requests",
"python",
"/your/path/to/orly_mcp/server.py"
]
Testando Sua Configuração
Execute o teste abrangente para verificar se tudo funciona:
uv run python test_comprehensive.py
Usando a Ferramenta ORLY no Claude
Uma vez configurado, você pode pedir ao Claude para gerar capas de livros O'RLY assim:
- "Crie uma capa de livro O'RLY com o título 'Advanced Debugging' e autor 'Jane Developer'"
- "Gere uma capa de livro intitulada 'Machine Learning Mistakes' com subtítulo 'What Could Go Wrong?' por 'AI Enthusiast'"
- "Faça uma capa O'RLY para 'CSS Grid Mastery' com tema 7 e imagem 15"
✨ As imagens das capas de livros geradas serão exibidas diretamente no chat!
A ferramenta suporta estes parâmetros:
- title (obrigatório): Título principal do livro
- subtitle (opcional): Texto no topo da capa
- author (opcional): Nome do autor (canto inferior direito)
- image_code (opcional): Imagem de animal/objeto 1-40 (aleatória se não especificada)
- theme (opcional): Tema de cores 0-16 (aleatório se não especificado)
- guide_text_placement (opcional): Posição do texto-guia - 'top_left', 'top_right', 'bottom_left', 'bottom_right'
- guide_text (opcional): Texto-guia personalizado (padrão: "The Definitive Guide")
Licença
Este projeto é licenciado sob a Licença MIT - consulte o arquivo LICENSE.txt para detalhes.
O código original de geração de capas de livros O'RLY no diretório orly_generator/ é baseado no trabalho de Charles Berlin (2016) e também é licenciado sob a Licença MIT - consulte orly_generator/LICENSE.txt para detalhes.
Agradecimentos
Este projeto se baseia no excelente trabalho de Charles Berlin. O código principal de geração de imagens no diretório orly_generator/ é adaptado do repositório original O-RLY-Book-Generator, atualizado para funcionar com Python 3 e integrado a uma ferramenta MCP para uso com clientes MCP como o Claude Desktop.
Publicação
(Mais para o Chris, o Autor, já que ele nunca usa Python e vai esquecer disso)
Você pode publicar rapidamente uma nova versão usando twine:
uv run twine upload dist/*
You'll be prompted to enter your PyPI API token.
You can quickly publish a new version using twine:
# Install dev dependencies (includes build and twine)
uv sync --group dev
# Build the package
uv run python -m build
# Check the built package
uv run twine check dist/*
# Publish to TestPyPI first for testing (optional)
uv run twine upload --repository testpypi dist/*
# Publish to PyPI
uv run twine upload dist/*
Certifique-se de:
- Atualizar o número da versão em
pyproject.toml - Testar o pacote localmente com
uv run python test_comprehensive.py - Compilar e publicar
Para autenticação, você precisará de tokens de API do PyPI configurados no seu arquivo ~/.pypirc ou definidos como variáveis de ambiente.ons/orly-mcp.svg)](https://pypi.org/project/orly-mcp/)