cults3d-mcp
by clugtu
README.md
# cults3d-mcp
An [MCP (Model Context Protocol)](https://modelcontextprotocol.io) server for [Cults3D](https://cults3d.com) — the leading marketplace for 3D printing designs.
Enables AI agents to upload designs, track stats, manage listings, and monitor community engagement on Cults3D.
> **First open-source MCP server for Cults3D.**
---
## Features
| Tool | Description |
|------|-------------|
| `upload_design` | Upload a new STL/ZIP with title, description, tags, category, price |
| `update_design` | Edit metadata on an existing listing |
| `list_my_designs` | List all your published designs with status and stats |
| `get_design_stats` | Downloads, likes, comments, revenue for a design |
| `search_designs` | Search public designs by keyword (competitor research) |
| `get_trending` | Trending designs in a category |
| `get_comments` | Read comments on a design |
| `reply_to_comment` | Post a reply to a comment |
| `list_collections` | List your Cults3D collections |
| `add_to_collection` | Add a design to a collection |
---
## Installation
```bash
pip install cults3d-mcp
```
Or run directly with `uvx`:
```bash
uvx cults3d-mcp
```
---
## Configuration
Create a `.env` file (see `.env.template`):
```env
CULTS3D_EMAIL=your@email.com
CULTS3D_PASSWORD=yourpassword
```
Authentication uses Cults3D's token-based auth (JWT). The server logs in on startup and refreshes the token automatically.
---
## MCP Client Setup
Add to your MCP config (`~/.config/claude/claude_desktop_config.json` or equivalent):
```json
{
"mcpServers": {
"cults3d": {
"command": "uvx",
"args": ["cults3d-mcp"],
"env": {
"CULTS3D_EMAIL": "your@email.com",
"CULTS3D_PASSWORD": "yourpassword"
}
}
}
}
```
---
## Development
```bash
git clone https://github.com/clugtu/cults3d-mcp
cd cults3d-mcp
pip install -e ".[dev]"
pre-commit install
pytest
```
This repo uses [pre-commit](https://pre-commit.com/) with [ruff](https://docs.astral.sh/ruff/) for linting and formatting. Install `pre-commit` if you don't have it:
```bash
pip install pre-commit
```
Then run `pre-commit install` once to register the hooks — they'll run automatically on every `git commit`.
---
## API Notes
Cults3D uses an internal GraphQL API (`https://cults3d.com/graphql`). This server uses reverse-engineered queries from the web interface. It is not an officially supported integration.
- **Rate limits**: Be respectful — add delays between bulk operations
- **Auth**: Session-based JWT, refreshed every ~24h
- **File uploads**: Multipart form-data for STL/ZIP files
---
## License
MIT — see [LICENSE](LICENSE)
---
## Related
- [pinterest-mcp](https://github.com/clugtu/pinterest-mcp) — Pinterest MCP server
TDQS
B3.4/5.0
Scored across 10 tools
Disambiguation5/5
Each tool has a clearly distinct purpose: upload vs update, search vs trending, comments vs stats, collections management. No two tools overlap in functionality.
Naming Consistency5/5
All tool names follow a consistent verb_noun pattern (e.g., get_comments, list_collections, upload_design) with clear, descriptive verbs and nouns.
Tool Count5/5
10 tools cover the core operations for a 3D model marketplace without being too many or too few. Each tool serves a specific need.
Completeness4/5
The tool set covers essential CRUD and interaction operations (upload, update, search, comments, collections), but lacks a delete design tool, which is a minor gap.
Maintenance
ActivityInactive
ResponsivenessNo issues