@runapi.ai/gpt-image-mcp 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,37 +1,56 @@
1
- # @runapi.ai/gpt-image-mcp
1
+ <h1 align="center">RunAPI GPT Image MCP Server</h1>
2
2
 
3
- RunAPI MCP server for the **GPT Image** model line. Create tasks,
4
- poll their status, and check pricing through a single RunAPI API key.
3
+ <p align="center">
4
+ <strong>GPT Image API access for AI agents: create image generation tasks, poll results, and check pricing through one focused MCP server.</strong>
5
+ </p>
5
6
 
6
- ## Tools
7
+ <p align="center">
8
+ <sub>Works with Claude Code, Codex, Cursor, Windsurf, VS Code, Roo Code, and any MCP-compatible host.</sub>
9
+ </p>
7
10
 
8
- - `edit_image` — create a GPT Image task (edit image) and (optionally) poll until it reaches a terminal status. Returns the task id, status, output URLs, and a price snapshot. Models: `gpt-image-1.5`.
9
- - `text_to_image` — create a GPT Image task (text to image) and (optionally) poll until it reaches a terminal status. Returns the task id, status, output URLs, and a price snapshot. Models: `gpt-image-1.5`.
10
- - `get_task` fetch the current status and latest payload for a task.
11
- - `check_pricing` look up pricing for a model in this line.
11
+ <p align="center">
12
+ <a href="https://www.npmjs.com/package/@runapi.ai/gpt-image-mcp"><img src="https://img.shields.io/npm/v/%40runapi.ai/gpt-image-mcp?style=flat-square&color=blue" alt="npm version"></a>
13
+ <a href="https://github.com/runapi-ai/gpt-image-mcp"><img src="https://img.shields.io/badge/GitHub-runapi--ai%2Fgpt-image-mcp-24292f?style=flat-square" alt="GitHub repository"></a>
14
+ <a href="LICENSE"><img src="https://img.shields.io/badge/License-Apache_2.0-blue?style=flat-square" alt="Apache-2.0 license"></a>
15
+ <img src="https://img.shields.io/badge/Type-MCP_Server-blue?style=flat-square" alt="MCP Server">
16
+ <img src="https://img.shields.io/badge/Models-1-16a34a?style=flat-square" alt="1 models">
17
+ </p>
12
18
 
13
- ## Configuration
19
+ <p align="center">
20
+ <a href="#install">Install</a> |
21
+ <a href="#tools">Tools</a> |
22
+ <a href="#models">Models</a> |
23
+ <a href="#agent-prompts">Agent Prompts</a> |
24
+ <a href="#configuration">Configuration</a> |
25
+ <a href="#links">Links</a>
26
+ </p>
14
27
 
15
- Set a RunAPI API key via the `RUNAPI_API_KEY` environment variable, or write
16
- it to `~/.config/runapi/config.json`:
28
+ ---
17
29
 
18
- ```bash
19
- mkdir -p ~/.config/runapi
20
- echo '{"api_key":"YOUR_KEY"}' > ~/.config/runapi/config.json
21
- ```
30
+ ## Why This Package?
22
31
 
23
- Get an API key at https://runapi.ai. Pricing is listed at
24
- https://runapi.ai/pricing.
32
+ `@runapi.ai/gpt-image-mcp` is a focused Model Context Protocol server for the **GPT Image** model line on RunAPI.
33
+ It gives MCP-compatible assistants direct access to 2 endpoints and 1 model variant without loading the full RunAPI catalog.
25
34
 
26
- ## Usage
35
+ Use this per-model server when an agent should stay scoped to GPT Image. Use [`@runapi.ai/mcp`](https://github.com/runapi-ai/mcp) when one assistant should discover every RunAPI model line.
27
36
 
28
- Run the server over stdio:
37
+ ---
38
+
39
+ ## Install
40
+
41
+ Add it to Claude Code:
29
42
 
30
43
  ```bash
31
- npx -y @runapi.ai/gpt-image-mcp
44
+ claude mcp add gpt-image -s user -- npx -y @runapi.ai/gpt-image-mcp
32
45
  ```
33
46
 
34
- Add it to an MCP client (see `examples/` for per-client configs):
47
+ Use project scope when the server should be shared with a repository:
48
+
49
+ ```bash
50
+ claude mcp add gpt-image -s project -- npx -y @runapi.ai/gpt-image-mcp
51
+ ```
52
+
53
+ Codex, Cursor, Windsurf, VS Code, Roo Code, and other MCP hosts can use the same stdio command:
35
54
 
36
55
  ```json
37
56
  {
@@ -45,6 +64,97 @@ Add it to an MCP client (see `examples/` for per-client configs):
45
64
  }
46
65
  ```
47
66
 
67
+ Create an API key at [runapi.ai](https://runapi.ai) and expose it as `RUNAPI_API_KEY`. `check_pricing` can run without a key; task creation and status polling require one.
68
+
69
+ Ready-made examples are in [`examples/`](examples/) for Claude, Cursor, Windsurf, VS Code, and Roo Code.
70
+
71
+ ---
72
+
73
+ ## Tools
74
+
75
+ | Tool | Auth | Purpose |
76
+ |---|---|---|
77
+ | `edit_image` | Yes | Create a GPT Image edit image task and optionally wait for a terminal status. Returns the task id, status, output URLs, and pricing snapshot. |
78
+ | `text_to_image` | Yes | Create a GPT Image text to image task and optionally wait for a terminal status. Returns the task id, status, output URLs, and pricing snapshot. |
79
+ | `get_task` | Yes | Fetch the current status and latest payload for an existing task. |
80
+ | `check_pricing` | No | Look up the current pricing snapshot for a GPT Image model and endpoint. |
81
+
82
+ ---
83
+
84
+ ## Models
85
+
86
+ GPT Image covers 1 model variant across 2 endpoints. Each tool accepts the models listed for it:
87
+
88
+ | Tool | Models |
89
+ |---|---|
90
+ | `edit_image` | `gpt-image-1.5` |
91
+ | `text_to_image` | `gpt-image-1.5` |
92
+
93
+ Model availability can change between releases. Use `check_pricing` or the [GPT Image model page](https://runapi.ai/models/gpt-image) for the current catalog view.
94
+
95
+ ---
96
+
97
+ ## Agent Prompts
98
+
99
+ Ask your assistant in natural language; it can inspect pricing, create the task, and return the task id plus output URLs.
100
+
101
+ ### Create a task
102
+
103
+ ```text
104
+ Run a GPT Image edit image task with RunAPI.
105
+ ```
106
+
107
+ The assistant can call `check_pricing`, then `edit_image`, and return the task id, status, and output URLs.
108
+
109
+ ### Submit without waiting
110
+
111
+ ```text
112
+ Create the task but don't wait for it to finish.
113
+ ```
114
+
115
+ The assistant calls the create tool with `wait: false` and returns the task id. Check on it later with `get_task`.
116
+
117
+ ### Check pricing before creating
118
+
119
+ ```text
120
+ Check current GPT Image pricing, then create the task if it matches my request.
121
+ ```
122
+
123
+ The assistant calls `check_pricing` and can link to the [GPT Image model page](https://runapi.ai/models/gpt-image) for the canonical catalog entry.
124
+
125
+ ---
126
+
127
+ ## Configuration
128
+
129
+ The server reads the API key in this order:
130
+
131
+ 1. `RUNAPI_API_KEY` environment variable
132
+ 2. `~/.config/runapi/config.json`
133
+
134
+ Example config file:
135
+
136
+ ```json
137
+ {
138
+ "apiKey": "your_runapi_key"
139
+ }
140
+ ```
141
+
142
+ Do not commit real API keys. Get one at [runapi.ai](https://runapi.ai).
143
+
144
+ ---
145
+
146
+ ## Links
147
+
148
+ | Resource | URL |
149
+ |---|---|
150
+ | GPT Image model page | [https://runapi.ai/models/gpt-image](https://runapi.ai/models/gpt-image) |
151
+ | npm package | [@runapi.ai/gpt-image-mcp](https://www.npmjs.com/package/@runapi.ai/gpt-image-mcp) |
152
+ | GitHub repository | [runapi-ai/gpt-image-mcp](https://github.com/runapi-ai/gpt-image-mcp) |
153
+ | RunAPI MCP overview | [runapi.ai/mcp](https://runapi.ai/mcp) |
154
+ | RunAPI docs | [runapi.ai/docs](https://runapi.ai/docs) |
155
+
156
+ ---
157
+
48
158
  ## License
49
159
 
50
- Apache-2.0
160
+ Licensed under the [Apache License, Version 2.0](LICENSE).
@@ -1,5 +1,5 @@
1
1
  export declare const META: {
2
2
  readonly name: "@runapi.ai/gpt-image-mcp";
3
- readonly version: "0.1.0";
3
+ readonly version: "0.1.1";
4
4
  readonly lineSlug: "gpt-image";
5
5
  };
package/dist/src/meta.js CHANGED
@@ -1,6 +1,6 @@
1
1
  export const META = {
2
2
  name: "@runapi.ai/gpt-image-mcp",
3
- version: "0.1.0",
3
+ version: "0.1.1",
4
4
  lineSlug: "gpt-image"
5
5
  };
6
6
  //# sourceMappingURL=meta.js.map
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@runapi.ai/gpt-image-mcp",
3
- "version": "0.1.0",
4
- "description": "RunAPI MCP server for one model line: create tasks, poll status, and check pricing with one API key.",
3
+ "version": "0.1.2",
4
+ "description": "RunAPI GPT Image MCP server for image generation: create tasks, poll results, and check pricing across 1 model from Claude Code, Codex, Cursor, and VS Code.",
5
5
  "type": "module",
6
6
  "main": "dist/src/index.js",
7
7
  "bin": {
@@ -25,13 +25,25 @@
25
25
  },
26
26
  "keywords": [
27
27
  "runapi",
28
+ "runapi-ai",
28
29
  "mcp",
30
+ "mcp-server",
29
31
  "model-context-protocol",
30
- "ai"
32
+ "ai-agents",
33
+ "claude-code",
34
+ "cursor",
35
+ "vscode",
36
+ "gpt-image",
37
+ "gpt-image-mcp",
38
+ "gpt-image-api",
39
+ "image-generation",
40
+ "ai-image",
41
+ "edit-image",
42
+ "text-to-image"
31
43
  ],
32
44
  "author": "RunAPI",
33
45
  "license": "Apache-2.0",
34
- "homepage": "https://runapi.ai",
46
+ "homepage": "https://runapi.ai/models/gpt-image",
35
47
  "repository": {
36
48
  "type": "git",
37
49
  "url": "git+https://github.com/runapi-ai/gpt-image-mcp.git"
package/server.json CHANGED
@@ -1,23 +1,23 @@
1
1
  {
2
2
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
3
3
  "name": "io.github.runapi-builder/gpt-image-mcp",
4
- "description": "RunAPI MCP server for GPT Image: create tasks, poll status, and check pricing.",
4
+ "description": "RunAPI MCP server for GPT Image: create tasks, poll status, check pricing.",
5
5
  "repository": {
6
6
  "url": "https://github.com/runapi-ai/gpt-image-mcp",
7
7
  "source": "github"
8
8
  },
9
- "version": "0.1.0",
9
+ "version": "0.1.2",
10
10
  "packages": [
11
11
  {
12
12
  "registryType": "npm",
13
13
  "identifier": "@runapi.ai/gpt-image-mcp",
14
- "version": "0.1.0",
14
+ "version": "0.1.2",
15
15
  "transport": {
16
16
  "type": "stdio"
17
17
  },
18
18
  "environmentVariables": [
19
19
  {
20
- "description": "RunAPI API key. Get one at https://runapi.ai",
20
+ "description": "RunAPI API key. Create one at https://runapi.ai",
21
21
  "isRequired": true,
22
22
  "format": "string",
23
23
  "isSecret": true,