# MCP tools (https://docs.propertypixel.app/mcp-tools)

Every tool the PropertyPixel MCP server exposes.



Server URL: `https://mcp.propertypixel.app` (Streamable HTTP, OAuth). Each tool maps to one REST endpoint with the same inputs and outputs. See the [API reference](/docs/api).

| Tool                    | What it does                                                             | REST                                        | Access | Hints       |
| ----------------------- | ------------------------------------------------------------------------ | ------------------------------------------- | ------ | ----------- |
| `get_account`           | Workspace, access level, credit balance and plan.                        | `GET /account`                              | read   | read-only   |
| `list_projects`         | List projects in the workspace.                                          | `GET /projects`                             | read   | read-only   |
| `get_project`           | One project with its photos and upload-link status.                      | `GET /projects/{id}`                        | read   | read-only   |
| `create_project`        | Create an empty project for a listing.                                   | `POST /projects`                            | write  |             |
| `delete_project`        | Delete a project with its photos and results.                            | `DELETE /projects/{id}`                     | write  | destructive |
| `add_photos`            | Add photos from https URLs or ChatGPT attachments.                       | `POST /projects/{project_id}/photos`        | write  | open-world  |
| `delete_photos`         | Delete photos and everything made from them.                             | `POST /projects/{project_id}/photos/delete` | write  | destructive |
| `create_upload_link`    | A link and QR code to upload photos from a phone.                        | `POST /projects/{project_id}/upload-links`  | write  |             |
| `list_edit_options`     | Every enhancement, staging style and video option, with costs.           | `GET /edit-options`                         | read   | read-only   |
| `enhance_photos`        | Apply AI edits to photos. **Spends credits.**                            | `POST /enhancements`                        | write  |             |
| `stage_photos`          | Virtually stage rooms. **Spends credits.**                               | `POST /stagings`                            | write  |             |
| `get_recommendations`   | Free suggested edits per photo.                                          | `POST /recommendations`                     | write  |             |
| `apply_recommendations` | Run suggested edits. **Spends credits.**                                 | `POST /recommendations/apply`               | write  |             |
| `create_video`          | Turn 1–9 photos into a video. **Spends credits.**                        | `POST /videos`                              | write  |             |
| `get_job_status`        | Progress and results for up to 100 jobs.                                 | `GET /jobs?ids=`                            | read   | read-only   |
| `show_results`          | A project's finished and in-progress results (opens the gallery widget). | `GET /projects/{id}/results`                | read   | read-only   |
| `pick_results`          | Mark or unmark a result as a pick.                                       | `PATCH /jobs/{id}/pick`                     | read   |             |
| `get_download_link`     | Download links for results, one file or a zip.                           | `POST /downloads`                           | read   | read-only   |
| `get_download`          | Check a zip being prepared.                                              | `GET /downloads/{id}`                       | read   | read-only   |

REST-only endpoints: `POST /quotes`, `POST /uploads`, `POST /uploads/{id}/complete` and `GET /jobs/{id}`.

## Spending tools [#spending-tools]

Calling a spending tool without `quote_id` returns a quote (`object: "quote_required"`) and spends nothing. The assistant shows you the cost; once you confirm, it calls the tool again with the same arguments plus `quote_id`. In ChatGPT and Claude the confirm card does this for you. See [Credits and quotes](/docs/credits-and-quotes).

## Widgets [#widgets]

Tools that show results render the PropertyPixel widget (`ui://propertypixel/app.html`) in clients that support MCP Apps: confirm cards, a live results gallery with before/after comparison, picks and downloads, a video player, photo upload, and an edit picker. Clients without widgets get the same information as text and structured content.
