# Download penpot file via mcp or api

**URL:** <https://community.penpot.app/t/download-penpot-file-via-mcp-or-api/10891>\
**Category:** Ask the community\
**Tags:** api, mcp\
**Created:** [September 14, 2026, 2:36pm UTC](https://community.penpot.app/t/download-penpot-file-via-mcp-or-api/10891 "2026-09-14T14:36:34Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![gotjoshua](https://dub1.discourse-cdn.com/flex017/user_avatar/community.penpot.app/gotjoshua/32/11232_2.png) [@gotjoshua](https://community.penpot.app/u/gotjoshua)\
**Post date:** [September 14, 2026, 2:36pm UTC](https://community.penpot.app/t/download-penpot-file-via-mcp-or-api/10891/1 "2026-09-14T14:36:34Z")

</div>

I am looking for a way to tell an agent to download a penpot file (so i can add it to git repo)

mcp seems to be spinning its wheels, is there a way?

---

<div class="post-metadata">

**Author:** ![girafic](https://dub1.discourse-cdn.com/flex017/user_avatar/community.penpot.app/girafic/32/11061_2.png) [@girafic](https://community.penpot.app/u/girafic)\
**Post date:** [September 15, 2026, 7:58am UTC](https://community.penpot.app/t/download-penpot-file-via-mcp-or-api/10891/2 "2026-09-15T07:58:58Z")

</div>

This is not a normal RPC call — it’s an SSE command:

```auto
POST {server}/api/rpc/command/export-binfile
Accept: text/event-stream
Content-Type: application/json
{"file-id": "...", "include-libraries": false, "embed-assets": false}

```

The server builds the archive, reports progress through `event: progress`, and finishes with an `event: end` whose `data:` payload is the URL of the finished archive.
