theo-van-gogh-mcp
MCP server that exposes the theo-van-gogh art management system to Claude (or any MCP-compatible AI).
What it does
Lets an AI assistant manage your art catalogue — find paintings, post to social media, upload to gallery sites, schedule posts, and update metadata — by calling tools over the Model Context Protocol.
Setup
1. Install mcp into the main project's virtualenv
The MCP server runs inside theo-van-gogh's existing virtualenv so it has access to all dependencies.
cd ~/programming/theo-van-gogh
source venv/bin/activate
pip install "mcp[cli]"
2. Configure Claude Desktop
Merge the following into ~/.config/claude/claude_desktop_config.json (Linux) or ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
{
"mcpServers": {
"theo-van-gogh": {
"command": "/home/christopher/programming/theo-van-gogh/venv/bin/python",
"args": ["/home/christopher/programming/theo-van-gogh-mcp/server.py"],
"env": {
"THEO_VAN_GOGH_PATH": "/home/christopher/programming/theo-van-gogh"
}
}
}
}
See claude_desktop_config.example.json for a copy-pasteable example.
3. Restart Claude Desktop
The server starts automatically when Claude Desktop launches.
Available tools
| Tool | Description | |---|---| | get_painting | Full metadata for one painting | | find_painting | Fuzzy search by name | | list_platforms | All platforms with status | | check_login_status | Browser session health | | verify_config | Check paths and API keys | | generate_skeleton_metadata | Stub metadata for new paintings | | update_painting_metadata | Edit title, description, price, etc. | | sync_collection_folders | Create missing collection dirs | | sync_instagram_folders | Mirror folder structure | | post_to_social | Post a painting now | | schedule_post | Schedule a future post | | run_scheduled_posts | Execute due scheduled posts | | upload_to_faso | Browser-upload a painting to FASO | | set_dimension_unit | "cm" or "in" | | add_list_item | Add to substrates/mediums/etc. |
Available resources
| URI | Content | |---|---| | tvg://capabilities | Plain-English guide to all tools (AI reads this first) | | tvg://paintings | All paintings with upload/post status | | tvg://pending | Paintings needing uploads or posts, by platform | | tvg://schedule | Upcoming and recent scheduled posts | | tvg://settings | Config, paths, credential status |
What stays manual
- First browser login for FASO and Cara — use admin option 17 in the main CLI
- Processing new paintings (AI title generation, entering dimensions) — use
python main.py process
Support
If you find this useful, a small donation helps keep projects like this going: Donate via PayPal











