Generates O'RLY? (O'Reilly parody) book covers.
An MCP (Model Context Protocol) server for generating O'RLY? (O'Reilly parody) book covers that display directly in Claude Desktop application.
simply add the following to your mcp configuration:
// ... other MCP servers ...
"mcp-orly": {
"command": "uvx",
"args": [
"orly-mcp@latest"
]
}
// ... other MCP servers ...
# 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
Add this MCP server to your Claude Desktop configuration file (claude_desktop_config.json
):
{
"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"
}
}
}
Important: Replace /path/to/your/orly-mcp
with your actual project path.
# 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"]
}
}
}
If you see this error, the MCP dependencies aren't available:
cd /path/to/your/orly-mcp
uv pip install -r requirements.txt
Make sure your Claude Desktop configuration includes all required dependencies with --with
flags.
Ensure all dependencies are specified in your Claude Desktop configuration:
"args": [
"run",
"--with", "fastmcp",
"--with", "pillow",
"--with", "fonttools",
"--with", "requests",
"python",
"/your/path/to/orly_mcp/server.py"
]
Run the comprehensive test to verify everything works:
uv run python test_comprehensive.py
Once configured, you can ask Claude to generate O'RLY book covers like this:
✨ The generated book cover images will be displayed directly in the chat!
The tool supports these parameters:
This project is licensed under the MIT License - see the LICENSE.txt file for details.
The original O'RLY book cover generation code in the orly_generator/
directory is based on work by Charles Berlin (2016) and is also licensed under the MIT License - see orly_generator/LICENSE.txt for details.
This project builds upon the excellent work by Charles Berlin. The core image generation code in the orly_generator/
directory is adapted from his original O-RLY-Book-Generator repository, updated to work with Python 3 and integrated into an MCP tool for usage with MCP clients like Claude Desktop.
(More for Chris, the Author, since he never uses Python and will forget this)
You can quickly publish a new version using 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/*
Make sure to:
pyproject.toml
uv run python test_comprehensive.py
For authentication, you'll need PyPI API tokens configured in your ~/.pypirc
file or set as environment variables.ons/orly-mcp.svg)](https://pypi.org/project/orly-mcp/)
Connects Large Language Models (LLMs) with Guild Wars 2 data sources. Requires a Guild Wars 2 API key for wallet functionality.
A 3D Printing MCP server that allows for querying for live state, webcam snapshots, and 3D printer control.
An integration for Claude Desktop to interact with Spotify using the Model Context Protocol (MCP).
An MCP server that allows client agents to play the game of Minesweeper.
An MCP server for programmatic control of smartscreen.tv displays via HTTP and MCP commands, with YouTube integration.
A server for creating fast and free lipsync videos for digital avatars, supporting both realistic and cartoon styles.
Generates true random coin flips using the random.org API.
Batch audio processing and optimization using FFmpeg. Modify sample rate, bitrate, volume, channels, and apply effects.
AI-driven venture capitalist agents powered by Octagon Private Markets' real-time intelligence.
A collection of Model Context Protocol (MCP) servers for various tasks and integrations, supporting both Python and Node.js environments.