Repository navigation
Add GPT Image plugin #548
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
acedatacloud-dev
wants to merge
4
commits into
cursor:main
Choose a base branch
from
AceDataCloud:codex/gpt-image-plugin
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Add GPT Image plugin #548
Changes from all commits
Commits
Show all changes
4 commits
Select commit
Hold shift + click to select a range
ace5ddb
feat(third_party): add GPT Image plugin
acedatacloud-dev 0055789
fix(gpt-image): declare API token variable
acedatacloud-dev 34a3c33
docs: match Cursor 3.24 plugin navigation
acedatacloud-dev b663042
docs: tag shared Cursor README activation links
acedatacloud-dev File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,44 @@ | ||
| { | ||
| "name": "gpt-image", | ||
| "displayName": "GPT Image", | ||
| "version": "1.0.0", | ||
| "minClientVersions": { | ||
| "cursor": "3.13.0" | ||
| }, | ||
| "description": "Generate GPT Image pictures and retrieve the finished image.", | ||
| "author": { | ||
| "name": "Ace Data Cloud Dev", | ||
| "email": "dev@acedata.cloud" | ||
| }, | ||
| "homepage": "https://platform.acedata.cloud/models", | ||
| "repository": "https://github.com/AceDataCloud/GPTImageCursor", | ||
| "license": "MIT", | ||
| "logo": "assets/logo.png", | ||
| "keywords": [ | ||
| "gpt-image", | ||
| "gpt image", | ||
| "image", | ||
| "acedatacloud", | ||
| "mcp" | ||
| ], | ||
| "category": "integrations", | ||
| "tags": [ | ||
| "gpt-image", | ||
| "image", | ||
| "mcp" | ||
| ], | ||
| "variables": { | ||
| "type": "object", | ||
| "properties": { | ||
| "ACEDATACLOUD_API_TOKEN": { | ||
| "type": "string", | ||
| "title": "Ace Data Cloud API token", | ||
| "description": "Service API key from https://platform.acedata.cloud/console/applications with GPT Image access." | ||
| } | ||
| }, | ||
| "required": [ | ||
| "ACEDATACLOUD_API_TOKEN" | ||
| ] | ||
| }, | ||
| "mcpServers": "./mcp.json" | ||
| } | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| # Changelog | ||
|
|
||
| ## 1.0.0 | ||
|
|
||
| - Initial GPT Image Cursor plugin using the existing Ace Data Cloud hosted MCP. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,21 @@ | ||
| MIT License | ||
|
|
||
| Copyright (c) 2026 Ace Data Cloud | ||
|
|
||
| Permission is hereby granted, free of charge, to any person obtaining a copy | ||
| of this software and associated documentation files (the "Software"), to deal | ||
| in the Software without restriction, including without limitation the rights | ||
| to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
| copies of the Software, and to permit persons to whom the Software is | ||
| furnished to do so, subject to the following conditions: | ||
|
|
||
| The above copyright notice and this permission notice shall be included in all | ||
| copies or substantial portions of the Software. | ||
|
|
||
| THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
| IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
| FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
| AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
| LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
| OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||
| SOFTWARE. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,58 @@ | ||
| # GPT Image for Cursor | ||
|
|
||
| Generate GPT Image pictures and retrieve the finished image. This standalone plugin reuses the [Ace Data Cloud openai MCP](https://github.com/AceDataCloud/MCPs/tree/main/openai) and includes a focused Agent skill. Available tools and limits come from the live MCP schema. | ||
|
|
||
| [简体中文教程](readme/README_zh_Hans.md) · [Copyable first-run prompt](examples/first-run.md) · [Current pricing](https://platform.acedata.cloud/models?utm_source=opensource&utm_medium=referral&utm_campaign=evergreen&utm_content=gpt_image_cursor_shared_readme_pricing_en) | ||
|
|
||
| ## 1. Search and install | ||
|
|
||
| In Cursor 3.24, open **Customize → Browse Marketplace**, search for **GPT Image**, confirm **Ace Data Cloud Dev** and the service logo, then click **Add**. Older releases may put Plugins under Settings. You can also use `/add-plugin gpt-image` in chat. If the official listing is not live, review this source under `~/.cursor/plugins/local/gpt-image/`; local installation does not prove Marketplace publication. | ||
|
|
||
| ## 2. Get a service API key | ||
|
|
||
| 1. Sign in at [Ace Data Cloud Applications](https://platform.acedata.cloud/console/applications?utm_source=opensource&utm_medium=referral&utm_campaign=evergreen&utm_content=gpt_image_cursor_shared_readme_api_key_en). | ||
| 2. Open **General application** or a service-specific application. Copy an existing API key, or use **Manage Keys → Create** for a separate Cursor key. | ||
| 3. Confirm GPT Image access, [current price](https://platform.acedata.cloud/models?utm_source=opensource&utm_medium=referral&utm_campaign=evergreen&utm_content=gpt_image_cursor_shared_readme_pricing_en), and balance. If **Allowed APIs** restrictions are enabled, include /openai/images/generations, /openai/tasks. | ||
|
|
||
| Use a service API key, not a platform management token. Do not put it in chat or source files. | ||
|
|
||
| ## 3. Configure the plugin | ||
|
|
||
| Open **Customize → Plugins → GPT Image → Configure**, paste the key string into **Ace Data Cloud API token**, and click **Save**. Cursor uses it as `ACEDATACLOUD_API_TOKEN`; the plugin adds `Bearer `. Reconnect the MCP server if tools are missing. The hosted endpoint needs no local Python installation. | ||
|
|
||
| ```json | ||
| { | ||
| "mcpServers": { | ||
| "openai": { | ||
| "type": "http", | ||
| "url": "https://openai.mcp.acedata.cloud/mcp", | ||
| "headers": { | ||
| "Authorization": "Bearer ${ACEDATACLOUD_API_TOKEN}" | ||
| } | ||
| } | ||
| } | ||
| } | ||
| ``` | ||
|
|
||
| The shared openai MCP also offers other tools. Restrict the key to GPT Image APIs if this installation should be limited to GPT Image. | ||
|
|
||
| ## 4. Run the first example | ||
|
|
||
| Open Cursor Agent and paste the [first-run prompt](examples/first-run.md). It asks for `openai_generate_image`, model `gpt-image-2` and size 1024x1024, quality low, n 1, async true. The sample prompt is `A single blue paper sphere on a cream background, studio photograph, no text.`. Verify live model access and price before running. | ||
|
|
||
| Submit with `openai_generate_image` once. Save the returned `task_id` and use `openai_get_task` with that same ID until terminal. Pending is not a completed image; open the returned result URL on success. Never regenerate merely to poll. | ||
|
|
||
| Open the returned image and inspect it. In **Ace Data Cloud → Usage/Billing**, match this call to its deducted Credits record. The plugin is free; API calls follow current service pricing. | ||
|
|
||
| ## Troubleshooting | ||
|
|
||
| | Symptom | Action | | ||
| | --- | --- | | ||
| | Plugin or tools are missing | Check the GPT Image listing, configure the key, and reconnect MCP. | | ||
| | 401 or 403 | Check key validity, service access, balance, and Allowed APIs; do not include `Bearer ` in the configured value. | | ||
| | Invalid model or argument | Use the live tool schema and a model this account can access. | | ||
| | Pending task | Query the original task ID; do not regenerate to poll. | | ||
| | 429, timeout, or 5xx | Inspect the original task and usage history before another paid submission. | | ||
| | Result URL will not open | Confirm a terminal success and use the URL returned by that call. | | ||
|
|
||
| [Source](https://github.com/AceDataCloud/GPTImageCursor) · [Report a problem](https://github.com/AceDataCloud/GPTImageCursor/issues) · dev@acedata.cloud. The logo reuses an existing Ace Data Cloud integration asset. This tool plugin does not register a Cursor chat-model provider. |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| # First GPT Image run | ||
|
|
||
| Copy this into Cursor Agent after installing and configuring the plugin. No key is included. | ||
|
|
||
| > Use the openai MCP tool openai_generate_image for one image request. I checked the current Ace Data Cloud price and balance. Use model gpt-image-2 if this account offers it. Set size 1024x1024, quality low, n 1, async true. Set prompt to A single blue paper sphere on a cream background, studio photograph, no text.. Submit at most once, keep the task ID, query it using openai_get_task until terminal, and open the completed result. If pending, report the ID so I can resume without a second generation. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,11 @@ | ||
| { | ||
| "mcpServers": { | ||
| "openai": { | ||
| "type": "http", | ||
| "url": "https://openai.mcp.acedata.cloud/mcp", | ||
| "headers": { | ||
| "Authorization": "Bearer ${ACEDATACLOUD_API_TOKEN}" | ||
| } | ||
| } | ||
| } | ||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,44 @@ | ||
| # Cursor GPT Image 插件 | ||
|
|
||
| Generate GPT Image pictures and retrieve the finished image. 插件复用 [Ace Data Cloud openai MCP](https://github.com/AceDataCloud/MCPs/tree/main/openai),并提供专用 Agent skill。实际工具参数和限制以在线 MCP schema 为准。 | ||
|
|
||
| [English guide](../README.md) · [可复制的首跑提示词](../examples/first-run.md) · [当前价格](https://platform.acedata.cloud/models?utm_source=opensource&utm_medium=referral&utm_campaign=evergreen&utm_content=gpt_image_cursor_shared_readme_pricing_zh_hans) | ||
|
|
||
| ## 1. 搜索安装 | ||
|
|
||
| 在 Cursor 3.24 打开 **Customize → Browse Marketplace**,搜索 **GPT Image**,确认作者 **Ace Data Cloud Dev** 和服务图标后点击 **Add**。较早版本可能在 Settings 中提供 Plugins 入口。也可在聊天中输入 `/add-plugin gpt-image`。若官方条目尚未出现,可在 `~/.cursor/plugins/local/gpt-image/` 本地审查;本地安装不代表 Marketplace 已上架。 | ||
|
|
||
| ## 2. 获取服务 API Key | ||
|
|
||
| 1. 登录 [Ace Data Cloud 应用管理](https://platform.acedata.cloud/console/applications?utm_source=opensource&utm_medium=referral&utm_campaign=evergreen&utm_content=gpt_image_cursor_shared_readme_api_key_zh_hans)。 | ||
| 2. 打开 **General application** 或服务专用应用,复制已有 Key;也可通过 **Manage Keys → Create** 新建 Cursor 专用 Key。 | ||
| 3. 确认 GPT Image 权限、[当前价格](https://platform.acedata.cloud/models?utm_source=opensource&utm_medium=referral&utm_campaign=evergreen&utm_content=gpt_image_cursor_shared_readme_pricing_zh_hans)和余额。若启用了 **Allowed APIs**,允许 /openai/images/generations, /openai/tasks。 | ||
|
|
||
| 使用服务 API Key,不要用平台管理 token,也不要放在聊天或仓库文件中。 | ||
|
|
||
| ## 3. 配置插件 | ||
|
|
||
| 打开 **Customize → Plugins → GPT Image → Configure**,将 Key 原文填入 **Ace Data Cloud API token** 并点击 **Save**。Cursor 将其用于 `ACEDATACLOUD_API_TOKEN`;插件会自行添加 `Bearer `,连接 `https://openai.mcp.acedata.cloud/mcp`;无需安装本地 Python 服务。工具未出现时重新连接 MCP。 | ||
|
|
||
| The shared openai MCP also offers other tools. Restrict the key to GPT Image APIs if this installation should be limited to GPT Image. | ||
|
|
||
| ## 4. 首次调用 | ||
|
|
||
| 在 Cursor Agent 中复制[首跑提示词](../examples/first-run.md)。它使用 `openai_generate_image`,模型 `gpt-image-2`,参数为 size 1024x1024, quality low, n 1, async true,prompt 为 `A single blue paper sphere on a cream background, studio photograph, no text.`。执行前核对当前模型权限和价格;字段变化时以在线工具 schema 为准。 | ||
|
|
||
| 只用 `openai_generate_image` 提交一次,保存返回的 `task_id`,随后用同一 ID 调用 `openai_get_task` 直到终态。pending 不代表已完成;成功后打开结果地址。不要为轮询重新生成。 | ||
|
|
||
| 打开返回的image结果并检查。在 **Ace Data Cloud → Usage/Billing** 核对本次调用对应的 Credits 扣费;插件免费,API 按当前服务价格计费。 | ||
|
|
||
| ## 排障 | ||
|
|
||
| | 现象 | 处理 | | ||
| | --- | --- | | ||
| | 找不到插件或工具 | 核对 GPT Image 条目、配置 Key 并重连 MCP。 | | ||
| | 401 或 403 | 检查 Key、服务权限、余额和 Allowed APIs;配置值不要带 `Bearer `。 | | ||
| | 模型或参数错误 | 以在线 MCP schema 和账户可用模型为准。 | | ||
| | 任务 pending | 沿原 task ID 查询,不要为轮询重新生成。 | | ||
| | 429、超时或 5xx | 先检查原任务和用量记录,再决定是否再次付费提交。 | | ||
| | 结果无法打开 | 确认终态成功,打开该次调用返回的地址。 | | ||
|
|
||
| [源码](https://github.com/AceDataCloud/GPTImageCursor) · [问题反馈](https://github.com/AceDataCloud/GPTImageCursor/issues) · dev@acedata.cloud。图标复用 Ace Data Cloud 现有集成资源。本插件提供工具,不注册 Cursor 聊天模型 Provider。 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,14 @@ | ||
| --- | ||
| name: gpt-image | ||
| description: Use GPT Image through the Ace Data Cloud MCP server in Cursor. Use for GPT Image image work or an existing task query. | ||
| --- | ||
|
|
||
| # GPT Image in Cursor | ||
|
|
||
| This skill adapts the [existing Ace Data Cloud skill](https://github.com/AceDataCloud/Skills/tree/main/skills/gpt-image-2). The live MCP schema is the source of truth for arguments and models. | ||
|
|
||
| 1. Check [current price, balance, and service access](https://platform.acedata.cloud/models) before a paid call. | ||
| 2. Submit with `openai_generate_image` once. Save the returned `task_id` and use `openai_get_task` with that same ID until terminal. Pending is not a completed image; open the returned result URL on success. Never regenerate merely to poll. | ||
| 3. Return the result, task ID if present, and any service error. Keep the API token out of chat and files. | ||
|
|
||
| Configure `ACEDATACLOUD_API_TOKEN` in **Customize → Plugins → GPT Image → Configure**. See the [first-run guide](../../README.md). |
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.