@wiro-ai/wiro-mcp 1.5.2 → 1.5.3
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 +51 -2
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -14,7 +14,7 @@ Official MCP server for Wiro AI: run image, video, audio and LLM models, build a
|
|
|
14
14
|
|
|
15
15
|
</div>
|
|
16
16
|
|
|
17
|
-
`@wiro-ai/wiro-mcp` is a TypeScript [Model Context Protocol](https://modelcontextprotocol.io/) server that runs locally over stdio with `npx
|
|
17
|
+
`@wiro-ai/wiro-mcp` is a TypeScript [Model Context Protocol](https://modelcontextprotocol.io/) server that runs locally over stdio, with `npx` or [Docker](#docker). Its tools are grouped in three sets:
|
|
18
18
|
|
|
19
19
|
- **Models**: search the Wiro AI model catalog, read a model's parameters and price, run it and wait for the result, upload input files and browse past tasks.
|
|
20
20
|
- **Workflows**: build multi-step workflows that chain models, run them, resume failed runs, browse the public gallery, and design workflows together with the Workflow Agent.
|
|
@@ -25,7 +25,8 @@ Playbooks explain each job step by step, so the assistant knows the order of cal
|
|
|
25
25
|
## Quick Start
|
|
26
26
|
|
|
27
27
|
Local `npx` and library usage require Node.js 20 or later. The hosted MCP
|
|
28
|
-
endpoint
|
|
28
|
+
endpoint and the [Docker image](#docker) do not require a local Node.js
|
|
29
|
+
installation.
|
|
29
30
|
|
|
30
31
|
### 1. Get API Keys
|
|
31
32
|
|
|
@@ -159,6 +160,54 @@ Ask your AI assistant:
|
|
|
159
160
|
- *"Deploy the Instagram manager agent on the Starter plan and tell me what it still needs"*
|
|
160
161
|
- *"Tell my support agent to summarise today's tickets"*
|
|
161
162
|
|
|
163
|
+
## Docker
|
|
164
|
+
|
|
165
|
+
Every release is also published on Docker Hub as
|
|
166
|
+
[`wiroai/wiro-mcp`](https://hub.docker.com/r/wiroai/wiro-mcp), for
|
|
167
|
+
`linux/amd64` and `linux/arm64`. The image runs the same stdio server, so you
|
|
168
|
+
need Docker but not Node.js:
|
|
169
|
+
|
|
170
|
+
```bash
|
|
171
|
+
docker run -i --rm -e WIRO_API_KEY wiroai/wiro-mcp
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
`-e WIRO_API_KEY` hands the variable from your environment to the container.
|
|
175
|
+
For a project with signature-based auth, add `-e WIRO_API_SECRET` as well.
|
|
176
|
+
`WIRO_TOOLSETS` passes through the same way. Keep `-i`, since the server reads
|
|
177
|
+
its requests from stdin, and leave out `-t`.
|
|
178
|
+
|
|
179
|
+
In a client config, `docker` is the command and the credentials go in `env`.
|
|
180
|
+
This works in Cursor, Claude Desktop and Windsurf:
|
|
181
|
+
|
|
182
|
+
```json
|
|
183
|
+
{
|
|
184
|
+
"mcpServers": {
|
|
185
|
+
"wiro": {
|
|
186
|
+
"command": "docker",
|
|
187
|
+
"args": ["run", "-i", "--rm", "-e", "WIRO_API_KEY", "-e", "WIRO_API_SECRET", "wiroai/wiro-mcp"],
|
|
188
|
+
"env": {
|
|
189
|
+
"WIRO_API_KEY": "your-api-key",
|
|
190
|
+
"WIRO_API_SECRET": "your-api-secret"
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
**Claude Code:**
|
|
198
|
+
|
|
199
|
+
```bash
|
|
200
|
+
claude mcp add wiro -e WIRO_API_KEY=your-api-key -e WIRO_API_SECRET=your-api-secret -- docker run -i --rm -e WIRO_API_KEY -e WIRO_API_SECRET wiroai/wiro-mcp
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
For an API Key Only project, leave out the `WIRO_API_SECRET` value. Docker only
|
|
204
|
+
passes variables that are set, so the `-e WIRO_API_SECRET` argument can stay.
|
|
205
|
+
|
|
206
|
+
Image tags follow the npm versions: `wiroai/wiro-mcp:<version>` pins a release
|
|
207
|
+
and `latest` is the newest one. A client does not fetch a newer `latest` by
|
|
208
|
+
itself, so run `docker pull wiroai/wiro-mcp` to update. Pulling once before the
|
|
209
|
+
first start also means the client does not wait for the download.
|
|
210
|
+
|
|
162
211
|
## Authentication
|
|
163
212
|
|
|
164
213
|
Wiro AI supports two authentication types, chosen when you create a project:
|
package/dist/index.js
CHANGED
|
@@ -24,6 +24,11 @@ const client = new WiroClient(apiKey, apiSecret, baseUrl, {
|
|
|
24
24
|
});
|
|
25
25
|
const server = createMcpServer(client, { toolsets });
|
|
26
26
|
const transport = new StdioServerTransport();
|
|
27
|
+
// In a container the server is PID 1, which ignores SIGINT and SIGTERM unless
|
|
28
|
+
// it handles them, so `docker stop` would wait out its timeout.
|
|
29
|
+
for (const signal of ['SIGINT', 'SIGTERM']) {
|
|
30
|
+
process.on(signal, () => process.exit(0));
|
|
31
|
+
}
|
|
27
32
|
await server.connect(transport);
|
|
28
33
|
console.error(`Wiro MCP server running on stdio (auth: ${client.authType}, tools: ${(toolsets ?? ['all']).join(', ')})`);
|
|
29
34
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;AAC3C,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;AACjD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;AACjD,MAAM,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC;AAE7D,IAAI,CAAC,MAAM,EAAE,CAAC;IACZ,OAAO,CAAC,KAAK,CACX,2DAA2D;QAC3D,uCAAuC;QACvC,cAAc;QACd,uCAAuC;QACvC,4CAA4C;QAC5C,SAAS;QACT,4DAA4D;QAC5D,8FAA8F,CAC/F,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE;IACxD,iBAAiB,EAAE,0CAA0C;UACzD,6EAA6E;CAClF,CAAC,CAAC;AACH,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;AACrD,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;AAE7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAChC,OAAO,CAAC,KAAK,CAAC,2CAA2C,MAAM,CAAC,QAAQ,YAAY,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;AAC3C,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;AACjD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;AACjD,MAAM,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC;AAE7D,IAAI,CAAC,MAAM,EAAE,CAAC;IACZ,OAAO,CAAC,KAAK,CACX,2DAA2D;QAC3D,uCAAuC;QACvC,cAAc;QACd,uCAAuC;QACvC,4CAA4C;QAC5C,SAAS;QACT,4DAA4D;QAC5D,8FAA8F,CAC/F,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE;IACxD,iBAAiB,EAAE,0CAA0C;UACzD,6EAA6E;CAClF,CAAC,CAAC;AACH,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;AACrD,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;AAE7C,8EAA8E;AAC9E,gEAAgE;AAChE,KAAK,MAAM,MAAM,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAU,EAAE,CAAC;IACpD,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5C,CAAC;AAED,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAChC,OAAO,CAAC,KAAK,CAAC,2CAA2C,MAAM,CAAC,QAAQ,YAAY,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wiro-ai/wiro-mcp",
|
|
3
|
-
"version": "1.5.
|
|
3
|
+
"version": "1.5.3",
|
|
4
4
|
"mcpName": "ai.wiro/mcp",
|
|
5
5
|
"description": "Official MCP server for Wiro AI. Run Wiro AI models, build and run workflows, and talk to Studio and your Wiro agents from Cursor, Claude, Windsurf and any MCP-compatible AI assistant",
|
|
6
6
|
"type": "module",
|