{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_jaa2kq233dr2","handle":"orly-mcp","url":"https://wellknown.network/agents/orly-mcp","links":{"self":"https://wellknown.network/agents/orly-mcp/record.json","html":"https://wellknown.network/agents/orly-mcp","markdown":"https://wellknown.network/agents/orly-mcp/record.md","api":"https://wellknown.network/api/v1/agents/orly-mcp","status":"https://wellknown.network/api/v1/agents/orly-mcp/status","claim":"https://wellknown.network/agents/orly-mcp/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/orly-mcp/claim.json","badge":"https://wellknown.network/agents/orly-mcp/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/orly-mcp/history","tools":"https://wellknown.network/api/v1/agents/orly-mcp/tools"},"ard":{"identifier":"urn:air::server:orly-mcp","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"orly-mcp","summary":"An MCP server for the ORLY tool.","description":"# orly-mcp\n\n[![PyPI version](https://img.shields.io/pypi/v/orly-mcp.svg)](https://pypi.org/project/orly-mcp/)\n[![Python versions](https://img.shields.io/pypi/## Publish\n\n(More for Chris, the Author, since he never uses Python)\n\nYou can quickly publish a new version using twine:\n\n```shell\n# Install dev dependencies (includes build and twine)\nuv sync --group dev\n\n# Build the package\nuv run python -m build\n\n# Check the built package\nuv run twine check dist/*\n\n# Publish to TestPyPI first for testing (optional)\nuv run twine upload --repository testpypi dist/*\n\n# Publish to PyPI\nuv run twine upload dist/*\n```\n\nMake sure to:\n1. Update the version number in `pyproject.toml`\n2. Test the package locally with `uv run python test_comprehensive.py`\n3. Build and publish\n\nFor 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/)\n\n![Cooked myself with my own MCP tool :/](./demo.png)\n\nAn MCP (Model Context Protocol) server for generating O'RLY? (O'Reilly parody) book covers that display directly in Claude Desktop application.\n\n## Quick Start\n\n### Install on MCP Server\n\nsimply add the following to your mcp configuration:\n\n```json\n// ... other MCP servers ...\n\"mcp-orly\": {\n    \"command\": \"uvx\",\n    \"args\": [\n        \"orly-mcp@latest\"\n    ]\n}\n// ... other MCP servers ...\n```\n\n### Local Development\n\n```shell\n# Clone the repository\ngit clone [your-repo-url]\ncd orly-mcp\n\n# Create a virtual environment and install dependencies\nuv venv .venv\nuv pip install -r requirements.txt\n\n# Test a sample image generation\nuv run python test_mcp.py\n\n# Run comprehensive tests\nuv run python test_comprehensive.py\n\n# Start the MCP server for development\npython start_server.py\n```\n\n## Claude Desktop Configuration\n\nAdd this MCP server to your Claude Desktop configuration file (`claude_desktop_config.json`):\n\n### Recommended Configuration\n\n```json\n{\n  \"mcpServers\": {\n    \"orly-local\": {\n      \"comma…","publisher":null,"homepage":"https://github.com/princefishthrower/orly-mcp","repository":"https://github.com/princefishthrower/orly-mcp/issues","version":"0.1.3","license":null,"protocols":["mcp"],"tags":["mcp"],"pricing":null,"endpoints":[{"url":"pypi:orly-mcp","type":"package_pypi","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":null,"attribution":{"kind":"pypi","name":"pypi","repoUrl":"pypi","summary":"pypi","version":"pypi","description":"pypi","homepageUrl":"pypi"}},"derived":{"capabilities":[{"slug":"dev.package-management","name":"Packages & Dependencies","confidence":1,"provenance":"derived"},{"slug":"dev.version-control","name":"Version Control","confidence":0.791,"provenance":"derived"}],"categories":["dev"],"language":"en"},"observed":{"status":"unknown","statusReason":"Distributed as a package to run locally; no network endpoint to check.","lastOkAt":null,"lastProbedAt":null,"statusComputedAt":null,"reliability30d":null,"latestObservations":[],"tools":null,"package":{"name":"orly-mcp","registry":"pypi","observedAt":"2026-11-09T23:25:16.104Z","publishedAt":"2025-07-02T08:34:25.306257Z","latestVersion":"0.1.3"},"toolSurface":null,"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"pypi","key":"orly-mcp","url":"https://pypi.org/project/orly-mcp/","firstSeenAt":"2026-09-10T09:25:00.265Z","fetchedAt":"2026-11-09T23:23:53.031Z","normalizedAt":"2026-11-09T23:23:53.031Z"}]},"firstSeenAt":"2026-09-10T09:25:00.265Z","updatedAt":"2026-11-09T23:25:16.104Z"}