@hostinger/mcp 2.17.1 → 3.0.0
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/CHANGELOG.md +26 -0
- package/README.md +42 -14
- package/gemini-extension.json +1 -1
- package/package.json +1 -1
- package/server.json +2 -2
- package/src/core/runtime.js +1 -1
- package/src/core/runtime.ts +1 -1
- package/src/core/tools/all.js +58 -6
- package/src/core/tools/all.ts +58 -6
- package/src/core/tools/hosting.js +9 -5
- package/src/core/tools/hosting.ts +9 -5
- package/src/core/tools/wordpress.js +49 -1
- package/src/core/tools/wordpress.ts +49 -1
- package/src/servers/agency-hosting.js +1 -1
- package/src/servers/agency-hosting.ts +1 -1
- package/src/servers/agent-readiness.js +1 -1
- package/src/servers/agent-readiness.ts +1 -1
- package/src/servers/all.js +1 -1
- package/src/servers/all.ts +1 -1
- package/src/servers/billing.js +1 -1
- package/src/servers/billing.ts +1 -1
- package/src/servers/dns.js +1 -1
- package/src/servers/dns.ts +1 -1
- package/src/servers/domains.js +1 -1
- package/src/servers/domains.ts +1 -1
- package/src/servers/ecommerce.js +1 -1
- package/src/servers/ecommerce.ts +1 -1
- package/src/servers/horizons.js +1 -1
- package/src/servers/horizons.ts +1 -1
- package/src/servers/hosting.js +1 -1
- package/src/servers/hosting.ts +1 -1
- package/src/servers/mail.js +1 -1
- package/src/servers/mail.ts +1 -1
- package/src/servers/reach.js +1 -1
- package/src/servers/reach.ts +1 -1
- package/src/servers/vps.js +1 -1
- package/src/servers/vps.ts +1 -1
- package/src/servers/wordpress.js +1 -1
- package/src/servers/wordpress.ts +1 -1
- package/types.d.ts +66 -16
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,32 @@ Generated at release time from the diff between the previous and current
|
|
|
4
4
|
build. Tool changes are listed individually; everything else is summarised
|
|
5
5
|
by area.
|
|
6
6
|
|
|
7
|
+
## v3.0.0 — 2026-10-15
|
|
8
|
+
|
|
9
|
+
### Operations
|
|
10
|
+
|
|
11
|
+
- Added `wordpress_ai-content_generation-result` — Get generation result
|
|
12
|
+
- Changed the description of `wordpress_ai-content_generate-images`
|
|
13
|
+
|
|
14
|
+
### Also in this release
|
|
15
|
+
|
|
16
|
+
- Documentation: `README.md`
|
|
17
|
+
- Request handling and authentication: `src/core/runtime.js`, `src/core/runtime.ts`
|
|
18
|
+
- Build and packaging: `types.d.ts`
|
|
19
|
+
|
|
20
|
+
## v2.18.0 — 2026-10-15
|
|
21
|
+
|
|
22
|
+
### Operations
|
|
23
|
+
|
|
24
|
+
- Changed the description and input schema of `hosting_websites_start-setup`
|
|
25
|
+
- Changed the description and input schema of `hosting_websites_create`
|
|
26
|
+
|
|
27
|
+
### Also in this release
|
|
28
|
+
|
|
29
|
+
- Documentation: `README.md`
|
|
30
|
+
- Request handling and authentication: `src/core/runtime.js`, `src/core/runtime.ts`
|
|
31
|
+
- Build and packaging: `types.d.ts`
|
|
32
|
+
|
|
7
33
|
## v2.17.1 — 2026-10-15
|
|
8
34
|
|
|
9
35
|
### Operations
|
package/README.md
CHANGED
|
@@ -69,7 +69,7 @@ pnpm update -g @hostinger/mcp
|
|
|
69
69
|
|
|
70
70
|
This package installs the following MCP server commands:
|
|
71
71
|
|
|
72
|
-
- `hostinger-api-mcp` — unified server over every operation (
|
|
72
|
+
- `hostinger-api-mcp` — unified server over every operation (421 total)
|
|
73
73
|
- `hostinger-agency-hosting-mcp` — 42 operations for agency-hosting
|
|
74
74
|
- `hostinger-agent-readiness-mcp` — 3 operations for agent-readiness
|
|
75
75
|
- `hostinger-billing-mcp` — 9 operations for billing
|
|
@@ -81,7 +81,7 @@ This package installs the following MCP server commands:
|
|
|
81
81
|
- `hostinger-mail-mcp` — 38 operations for mail
|
|
82
82
|
- `hostinger-reach-mcp` — 56 operations for reach
|
|
83
83
|
- `hostinger-vps-mcp` — 67 operations for vps
|
|
84
|
-
- `hostinger-wordpress-mcp` —
|
|
84
|
+
- `hostinger-wordpress-mcp` — 40 operations for wordpress
|
|
85
85
|
|
|
86
86
|
Every binary exposes the same three tools; a scoped binary only searches and executes its own group's operations. `hostinger-api-mcp` remains the backwards-compatible default.
|
|
87
87
|
|
|
@@ -2600,8 +2600,8 @@ of the website root with generated credentials.
|
|
|
2600
2600
|
|
|
2601
2601
|
Omit `domain` to set the website up on a generated temporary free subdomain.
|
|
2602
2602
|
|
|
2603
|
-
|
|
2604
|
-
|
|
2603
|
+
When the order has no hosting account yet, the setup creates one first, in the datacenter
|
|
2604
|
+
given by `datacenter_code` or the order's default datacenter when it is omitted.
|
|
2605
2605
|
Returns 404 when the order does not exist or is not accessible to the authenticated
|
|
2606
2606
|
client, and 409 with a `Retry-After` header while a setup for the same domain is still
|
|
2607
2607
|
running.
|
|
@@ -2791,6 +2791,10 @@ endpoint instead.
|
|
|
2791
2791
|
|
|
2792
2792
|
#### hosting_websites_create
|
|
2793
2793
|
|
|
2794
|
+
Deprecated: use `POST /api/hosting/v1/orders/{order_id}/onboardings` (start website setup)
|
|
2795
|
+
instead. It takes the same `domain` and `datacenter_code`, can also install WordPress, and
|
|
2796
|
+
returns the created setup.
|
|
2797
|
+
|
|
2794
2798
|
Create a new website for the authenticated client.
|
|
2795
2799
|
|
|
2796
2800
|
You must choose which hosting order to create this website on. Pass that
|
|
@@ -2800,10 +2804,8 @@ available IDs; the website is provisioned on that order's hosting plan.
|
|
|
2800
2804
|
Only Web and Cloud hosting orders are accepted. To create a website on an Agency
|
|
2801
2805
|
Plan order, use `POST /api/agency-hosting/v1/orders/{order_id}/websites/setups`.
|
|
2802
2806
|
|
|
2803
|
-
|
|
2804
|
-
|
|
2805
|
-
in the selected datacenter.
|
|
2806
|
-
|
|
2807
|
+
When the order has no hosting account yet, a new hosting account is set up first, in the
|
|
2808
|
+
datacenter given by `datacenter_code` or the order's default datacenter when it is omitted.
|
|
2807
2809
|
Subsequent websites will be hosted on the same datacenter automatically.
|
|
2808
2810
|
|
|
2809
2811
|
Website creation is asynchronous and takes up to a few minutes. Poll the list website
|
|
@@ -4638,13 +4640,20 @@ Use this endpoint to power off running VPS instances.
|
|
|
4638
4640
|
|
|
4639
4641
|
#### wordpress_ai-content_generate-images
|
|
4640
4642
|
|
|
4641
|
-
|
|
4642
|
-
WordPress installation.
|
|
4643
|
-
|
|
4644
|
-
|
|
4643
|
+
Start generating one or more images from a prompt and an image type for the specified
|
|
4644
|
+
WordPress installation. The generation runs asynchronously: the response is returned
|
|
4645
|
+
right away with `status: in-progress` and a `generation_id`. Poll
|
|
4646
|
+
GET /api/hosting/v1/accounts/{username}/wordpress/{software}/content/generations/{generation_id}
|
|
4647
|
+
every few seconds until `status` is `completed` or `failed`.
|
|
4648
|
+
|
|
4649
|
+
A completed generation returns temporary image URLs together with the time they expire;
|
|
4650
|
+
download the images before then. Images match the requested aspect ratio and are never
|
|
4651
|
+
smaller than the requested size; logos are transparent images cropped to the mark.
|
|
4645
4652
|
|
|
4646
|
-
|
|
4647
|
-
|
|
4653
|
+
Only one image generation can run per installation at a time: while one is still in
|
|
4654
|
+
progress the endpoint returns 409 without the ID of the running generation, so a caller
|
|
4655
|
+
that did not receive the `202` has to wait for it to finish (up to a few minutes) before
|
|
4656
|
+
starting a new one. The endpoint is limited to 10 requests per minute.
|
|
4648
4657
|
|
|
4649
4658
|
Provide the WordPress installation (software) identifier in the path. It can
|
|
4650
4659
|
be obtained from GET /api/hosting/v1/wordpress/installations (the `id` field).
|
|
@@ -4652,6 +4661,25 @@ be obtained from GET /api/hosting/v1/wordpress/installations (the `id` field).
|
|
|
4652
4661
|
- **Method**: `POST`
|
|
4653
4662
|
- **Path**: `/api/hosting/v1/accounts/{username}/wordpress/{software}/content/images/generate`
|
|
4654
4663
|
|
|
4664
|
+
#### wordpress_ai-content_generation-result
|
|
4665
|
+
|
|
4666
|
+
Get the result of an AI content generation started for the specified WordPress
|
|
4667
|
+
installation, such as an image generation started with
|
|
4668
|
+
POST /api/hosting/v1/accounts/{username}/wordpress/{software}/content/images/generate.
|
|
4669
|
+
|
|
4670
|
+
While the generation is still running only `status: in-progress` is returned; poll every
|
|
4671
|
+
few seconds. Once `completed`, `result` holds the generated content shaped according to
|
|
4672
|
+
`type`: temporary image URLs together with the time they expire for `image-generation`, or
|
|
4673
|
+
the generated website document for `website-generation` (started from the Hostinger
|
|
4674
|
+
WordPress plugin). A `failed` generation has no `result`. Unknown or expired generation
|
|
4675
|
+
IDs return 404.
|
|
4676
|
+
|
|
4677
|
+
Provide the WordPress installation (software) identifier in the path. It can
|
|
4678
|
+
be obtained from GET /api/hosting/v1/wordpress/installations (the `id` field).
|
|
4679
|
+
|
|
4680
|
+
- **Method**: `GET`
|
|
4681
|
+
- **Path**: `/api/hosting/v1/accounts/{username}/wordpress/{software}/content/generations/{generation_id}`
|
|
4682
|
+
|
|
4655
4683
|
#### wordpress_ai-tools_show-option-status
|
|
4656
4684
|
|
|
4657
4685
|
Show the current AI option status for the Hostinger Tools plugin on the
|
package/gemini-extension.json
CHANGED
package/package.json
CHANGED
package/server.json
CHANGED
|
@@ -6,12 +6,12 @@
|
|
|
6
6
|
"url": "https://github.com/hostinger/api-mcp-server",
|
|
7
7
|
"source": "github"
|
|
8
8
|
},
|
|
9
|
-
"version": "
|
|
9
|
+
"version": "3.0.0",
|
|
10
10
|
"packages": [
|
|
11
11
|
{
|
|
12
12
|
"registryType": "npm",
|
|
13
13
|
"identifier": "@hostinger/mcp",
|
|
14
|
-
"version": "
|
|
14
|
+
"version": "3.0.0",
|
|
15
15
|
"transport": {
|
|
16
16
|
"type": "stdio"
|
|
17
17
|
},
|
package/src/core/runtime.js
CHANGED
|
@@ -64,7 +64,7 @@ const GetSkillRequestSchema = z.object({
|
|
|
64
64
|
|
|
65
65
|
/**
|
|
66
66
|
* MCP Server for Hostinger API
|
|
67
|
-
* Generated from OpenAPI spec version
|
|
67
|
+
* Generated from OpenAPI spec version 2.0.0
|
|
68
68
|
*/
|
|
69
69
|
class MCPServer {
|
|
70
70
|
constructor({ name, version, tools, instructions, skills = [] }) {
|
package/src/core/runtime.ts
CHANGED
|
@@ -94,7 +94,7 @@ interface Skill { uri: string; frontmatter: Record<string, unknown>; resources:
|
|
|
94
94
|
|
|
95
95
|
/**
|
|
96
96
|
* MCP Server for Hostinger API
|
|
97
|
-
* Generated from OpenAPI spec version
|
|
97
|
+
* Generated from OpenAPI spec version 2.0.0
|
|
98
98
|
*/
|
|
99
99
|
class MCPServer {
|
|
100
100
|
private readonly name: string;
|
package/src/core/tools/all.js
CHANGED
|
@@ -8484,7 +8484,7 @@ export default [
|
|
|
8484
8484
|
"readOnlyHint": false,
|
|
8485
8485
|
"destructiveHint": false
|
|
8486
8486
|
},
|
|
8487
|
-
"description": "Starts a website setup on a Web or Cloud hosting order and returns the created setup\nright away; the website itself is provisioned asynchronously. Poll the list website\nsetups endpoint with the `domain` filter every 10 to 15 seconds and wait for\n`status: completed` before uploading files, deploying or creating databases.\n\nOmit `type` for an empty website. `type: wordpress` installs WordPress in the website\nroot with the admin user, email and password from `wordpress`, the domain as the site\ntitle, and `en_US` when `wordpress.language` is omitted. The headless types\n(`headless_wordpress`, `headless_ecommerce`, `headless_pocketbase`) create a headless\nwebsite; `headless_wordpress` additionally installs WordPress into the `cms` directory\nof the website root with generated credentials.\n\nOmit `domain` to set the website up on a generated temporary free subdomain.\n\
|
|
8487
|
+
"description": "Starts a website setup on a Web or Cloud hosting order and returns the created setup\nright away; the website itself is provisioned asynchronously. Poll the list website\nsetups endpoint with the `domain` filter every 10 to 15 seconds and wait for\n`status: completed` before uploading files, deploying or creating databases.\n\nOmit `type` for an empty website. `type: wordpress` installs WordPress in the website\nroot with the admin user, email and password from `wordpress`, the domain as the site\ntitle, and `en_US` when `wordpress.language` is omitted. The headless types\n(`headless_wordpress`, `headless_ecommerce`, `headless_pocketbase`) create a headless\nwebsite; `headless_wordpress` additionally installs WordPress into the `cms` directory\nof the website root with generated credentials.\n\nOmit `domain` to set the website up on a generated temporary free subdomain.\n\nWhen the order has no hosting account yet, the setup creates one first, in the datacenter\ngiven by `datacenter_code` or the order's default datacenter when it is omitted.\nReturns 404 when the order does not exist or is not accessible to the authenticated\nclient, and 409 with a `Retry-After` header while a setup for the same domain is still\nrunning.",
|
|
8488
8488
|
"method": "POST",
|
|
8489
8489
|
"path": "/api/hosting/v1/orders/{order_id}/onboardings",
|
|
8490
8490
|
"inputSchema": {
|
|
@@ -8506,7 +8506,11 @@ export default [
|
|
|
8506
8506
|
},
|
|
8507
8507
|
"domain": {
|
|
8508
8508
|
"type": "string",
|
|
8509
|
-
"description": "Customer-owned domain. Cannot start with \"www.\". Omit or `null` to set the website up on a generated temporary free subdomain."
|
|
8509
|
+
"description": "Customer-owned domain. Cannot start with \"www.\" and can have at most one subdomain level, e.g. `blog.example.com`. Omit or `null` to set the website up on a generated temporary free subdomain."
|
|
8510
|
+
},
|
|
8511
|
+
"datacenter_code": {
|
|
8512
|
+
"type": "string",
|
|
8513
|
+
"description": "Datacenter for the hosting account when the order does not have one yet. Omit to use the order's default datacenter. Ignored when the order already has a hosting account. List available datacenters to find valid codes."
|
|
8510
8514
|
},
|
|
8511
8515
|
"wordpress": {
|
|
8512
8516
|
"type": "object",
|
|
@@ -9202,7 +9206,7 @@ export default [
|
|
|
9202
9206
|
"readOnlyHint": false,
|
|
9203
9207
|
"destructiveHint": false
|
|
9204
9208
|
},
|
|
9205
|
-
"description": "
|
|
9209
|
+
"description": "Deprecated: use `POST /api/hosting/v1/orders/{order_id}/onboardings` (start website setup)\ninstead. It takes the same `domain` and `datacenter_code`, can also install WordPress, and\nreturns the created setup.\n\nCreate a new website for the authenticated client.\n\nYou must choose which hosting order to create this website on. Pass that\norder as `order_id` together with the domain name. List orders to see\navailable IDs; the website is provisioned on that order's hosting plan.\n\nOnly Web and Cloud hosting orders are accepted. To create a website on an Agency\nPlan order, use `POST /api/agency-hosting/v1/orders/{order_id}/websites/setups`.\n\nWhen the order has no hosting account yet, a new hosting account is set up first, in the\ndatacenter given by `datacenter_code` or the order's default datacenter when it is omitted.\nSubsequent websites will be hosted on the same datacenter automatically.\n\nWebsite creation is asynchronous and takes up to a few minutes. Poll the list website\nsetups endpoint with the `domain` filter every 10 to 15 seconds and wait for `status:\ncompleted` before uploading files, deploying or creating databases. While the setup is\n`running`, endpoints that operate on the website may respond with `404` or `409`.\n`is_enabled` on the websites list reflects suspension, not readiness.",
|
|
9206
9210
|
"method": "POST",
|
|
9207
9211
|
"path": "/api/hosting/v1/websites",
|
|
9208
9212
|
"inputSchema": {
|
|
@@ -9210,7 +9214,7 @@ export default [
|
|
|
9210
9214
|
"properties": {
|
|
9211
9215
|
"domain": {
|
|
9212
9216
|
"type": "string",
|
|
9213
|
-
"description": "Domain name for the website. Cannot start with \"www.\""
|
|
9217
|
+
"description": "Domain name for the website. Cannot start with \"www.\" and can have at most one subdomain level, e.g. `blog.example.com`."
|
|
9214
9218
|
},
|
|
9215
9219
|
"order_id": {
|
|
9216
9220
|
"type": "integer",
|
|
@@ -9218,7 +9222,7 @@ export default [
|
|
|
9218
9222
|
},
|
|
9219
9223
|
"datacenter_code": {
|
|
9220
9224
|
"type": "string",
|
|
9221
|
-
"description": "Datacenter
|
|
9225
|
+
"description": "Datacenter for the hosting account when the order does not have one yet. Omit to use the order's default datacenter. Ignored when the order already has a hosting account. Must be an available datacenter; list available datacenters to find valid codes."
|
|
9222
9226
|
}
|
|
9223
9227
|
},
|
|
9224
9228
|
"required": [
|
|
@@ -15959,7 +15963,7 @@ export default [
|
|
|
15959
15963
|
"readOnlyHint": false,
|
|
15960
15964
|
"destructiveHint": false
|
|
15961
15965
|
},
|
|
15962
|
-
"description": "
|
|
15966
|
+
"description": "Start generating one or more images from a prompt and an image type for the specified\nWordPress installation. The generation runs asynchronously: the response is returned\nright away with `status: in-progress` and a `generation_id`. Poll\nGET /api/hosting/v1/accounts/{username}/wordpress/{software}/content/generations/{generation_id}\nevery few seconds until `status` is `completed` or `failed`.\n\nA completed generation returns temporary image URLs together with the time they expire;\ndownload the images before then. Images match the requested aspect ratio and are never\nsmaller than the requested size; logos are transparent images cropped to the mark.\n\nOnly one image generation can run per installation at a time: while one is still in\nprogress the endpoint returns 409 without the ID of the running generation, so a caller\nthat did not receive the `202` has to wait for it to finish (up to a few minutes) before\nstarting a new one. The endpoint is limited to 10 requests per minute.\n\nProvide the WordPress installation (software) identifier in the path. It can\nbe obtained from GET /api/hosting/v1/wordpress/installations (the `id` field).",
|
|
15963
15967
|
"method": "POST",
|
|
15964
15968
|
"path": "/api/hosting/v1/accounts/{username}/wordpress/{software}/content/images/generate",
|
|
15965
15969
|
"inputSchema": {
|
|
@@ -16024,6 +16028,54 @@ export default [
|
|
|
16024
16028
|
],
|
|
16025
16029
|
"group": "wordpress"
|
|
16026
16030
|
},
|
|
16031
|
+
{
|
|
16032
|
+
"name": "wordpress_ai-content_generation-result",
|
|
16033
|
+
"title": "Get generation result",
|
|
16034
|
+
"annotations": {
|
|
16035
|
+
"title": "Get generation result",
|
|
16036
|
+
"readOnlyHint": true,
|
|
16037
|
+
"destructiveHint": false
|
|
16038
|
+
},
|
|
16039
|
+
"description": "Get the result of an AI content generation started for the specified WordPress\ninstallation, such as an image generation started with\nPOST /api/hosting/v1/accounts/{username}/wordpress/{software}/content/images/generate.\n\nWhile the generation is still running only `status: in-progress` is returned; poll every\nfew seconds. Once `completed`, `result` holds the generated content shaped according to\n`type`: temporary image URLs together with the time they expire for `image-generation`, or\nthe generated website document for `website-generation` (started from the Hostinger\nWordPress plugin). A `failed` generation has no `result`. Unknown or expired generation\nIDs return 404.\n\nProvide the WordPress installation (software) identifier in the path. It can\nbe obtained from GET /api/hosting/v1/wordpress/installations (the `id` field).",
|
|
16040
|
+
"method": "GET",
|
|
16041
|
+
"path": "/api/hosting/v1/accounts/{username}/wordpress/{software}/content/generations/{generation_id}",
|
|
16042
|
+
"inputSchema": {
|
|
16043
|
+
"type": "object",
|
|
16044
|
+
"properties": {
|
|
16045
|
+
"username": {
|
|
16046
|
+
"type": "string",
|
|
16047
|
+
"description": "username parameter"
|
|
16048
|
+
},
|
|
16049
|
+
"software": {
|
|
16050
|
+
"type": "string",
|
|
16051
|
+
"description": "WordPress installation (software) identifier"
|
|
16052
|
+
},
|
|
16053
|
+
"generation_id": {
|
|
16054
|
+
"type": "string",
|
|
16055
|
+
"description": "Generation ID returned when the generation was started"
|
|
16056
|
+
},
|
|
16057
|
+
"type": {
|
|
16058
|
+
"type": "string",
|
|
16059
|
+
"description": "Generation type to look up. When omitted, every generation type is checked.",
|
|
16060
|
+
"enum": [
|
|
16061
|
+
"website-generation",
|
|
16062
|
+
"image-generation"
|
|
16063
|
+
]
|
|
16064
|
+
}
|
|
16065
|
+
},
|
|
16066
|
+
"required": [
|
|
16067
|
+
"username",
|
|
16068
|
+
"software",
|
|
16069
|
+
"generation_id"
|
|
16070
|
+
]
|
|
16071
|
+
},
|
|
16072
|
+
"security": [
|
|
16073
|
+
{
|
|
16074
|
+
"apiToken": []
|
|
16075
|
+
}
|
|
16076
|
+
],
|
|
16077
|
+
"group": "wordpress"
|
|
16078
|
+
},
|
|
16027
16079
|
{
|
|
16028
16080
|
"name": "wordpress_ai-tools_show-option-status",
|
|
16029
16081
|
"title": "Show AI option status",
|
package/src/core/tools/all.ts
CHANGED
|
@@ -8498,7 +8498,7 @@ const tools: OpenApiTool[] = [
|
|
|
8498
8498
|
"readOnlyHint": false,
|
|
8499
8499
|
"destructiveHint": false
|
|
8500
8500
|
},
|
|
8501
|
-
"description": "Starts a website setup on a Web or Cloud hosting order and returns the created setup\nright away; the website itself is provisioned asynchronously. Poll the list website\nsetups endpoint with the `domain` filter every 10 to 15 seconds and wait for\n`status: completed` before uploading files, deploying or creating databases.\n\nOmit `type` for an empty website. `type: wordpress` installs WordPress in the website\nroot with the admin user, email and password from `wordpress`, the domain as the site\ntitle, and `en_US` when `wordpress.language` is omitted. The headless types\n(`headless_wordpress`, `headless_ecommerce`, `headless_pocketbase`) create a headless\nwebsite; `headless_wordpress` additionally installs WordPress into the `cms` directory\nof the website root with generated credentials.\n\nOmit `domain` to set the website up on a generated temporary free subdomain.\n\
|
|
8501
|
+
"description": "Starts a website setup on a Web or Cloud hosting order and returns the created setup\nright away; the website itself is provisioned asynchronously. Poll the list website\nsetups endpoint with the `domain` filter every 10 to 15 seconds and wait for\n`status: completed` before uploading files, deploying or creating databases.\n\nOmit `type` for an empty website. `type: wordpress` installs WordPress in the website\nroot with the admin user, email and password from `wordpress`, the domain as the site\ntitle, and `en_US` when `wordpress.language` is omitted. The headless types\n(`headless_wordpress`, `headless_ecommerce`, `headless_pocketbase`) create a headless\nwebsite; `headless_wordpress` additionally installs WordPress into the `cms` directory\nof the website root with generated credentials.\n\nOmit `domain` to set the website up on a generated temporary free subdomain.\n\nWhen the order has no hosting account yet, the setup creates one first, in the datacenter\ngiven by `datacenter_code` or the order's default datacenter when it is omitted.\nReturns 404 when the order does not exist or is not accessible to the authenticated\nclient, and 409 with a `Retry-After` header while a setup for the same domain is still\nrunning.",
|
|
8502
8502
|
"method": "POST",
|
|
8503
8503
|
"path": "/api/hosting/v1/orders/{order_id}/onboardings",
|
|
8504
8504
|
"inputSchema": {
|
|
@@ -8520,7 +8520,11 @@ const tools: OpenApiTool[] = [
|
|
|
8520
8520
|
},
|
|
8521
8521
|
"domain": {
|
|
8522
8522
|
"type": "string",
|
|
8523
|
-
"description": "Customer-owned domain. Cannot start with \"www.\". Omit or `null` to set the website up on a generated temporary free subdomain."
|
|
8523
|
+
"description": "Customer-owned domain. Cannot start with \"www.\" and can have at most one subdomain level, e.g. `blog.example.com`. Omit or `null` to set the website up on a generated temporary free subdomain."
|
|
8524
|
+
},
|
|
8525
|
+
"datacenter_code": {
|
|
8526
|
+
"type": "string",
|
|
8527
|
+
"description": "Datacenter for the hosting account when the order does not have one yet. Omit to use the order's default datacenter. Ignored when the order already has a hosting account. List available datacenters to find valid codes."
|
|
8524
8528
|
},
|
|
8525
8529
|
"wordpress": {
|
|
8526
8530
|
"type": "object",
|
|
@@ -9216,7 +9220,7 @@ const tools: OpenApiTool[] = [
|
|
|
9216
9220
|
"readOnlyHint": false,
|
|
9217
9221
|
"destructiveHint": false
|
|
9218
9222
|
},
|
|
9219
|
-
"description": "
|
|
9223
|
+
"description": "Deprecated: use `POST /api/hosting/v1/orders/{order_id}/onboardings` (start website setup)\ninstead. It takes the same `domain` and `datacenter_code`, can also install WordPress, and\nreturns the created setup.\n\nCreate a new website for the authenticated client.\n\nYou must choose which hosting order to create this website on. Pass that\norder as `order_id` together with the domain name. List orders to see\navailable IDs; the website is provisioned on that order's hosting plan.\n\nOnly Web and Cloud hosting orders are accepted. To create a website on an Agency\nPlan order, use `POST /api/agency-hosting/v1/orders/{order_id}/websites/setups`.\n\nWhen the order has no hosting account yet, a new hosting account is set up first, in the\ndatacenter given by `datacenter_code` or the order's default datacenter when it is omitted.\nSubsequent websites will be hosted on the same datacenter automatically.\n\nWebsite creation is asynchronous and takes up to a few minutes. Poll the list website\nsetups endpoint with the `domain` filter every 10 to 15 seconds and wait for `status:\ncompleted` before uploading files, deploying or creating databases. While the setup is\n`running`, endpoints that operate on the website may respond with `404` or `409`.\n`is_enabled` on the websites list reflects suspension, not readiness.",
|
|
9220
9224
|
"method": "POST",
|
|
9221
9225
|
"path": "/api/hosting/v1/websites",
|
|
9222
9226
|
"inputSchema": {
|
|
@@ -9224,7 +9228,7 @@ const tools: OpenApiTool[] = [
|
|
|
9224
9228
|
"properties": {
|
|
9225
9229
|
"domain": {
|
|
9226
9230
|
"type": "string",
|
|
9227
|
-
"description": "Domain name for the website. Cannot start with \"www.\""
|
|
9231
|
+
"description": "Domain name for the website. Cannot start with \"www.\" and can have at most one subdomain level, e.g. `blog.example.com`."
|
|
9228
9232
|
},
|
|
9229
9233
|
"order_id": {
|
|
9230
9234
|
"type": "integer",
|
|
@@ -9232,7 +9236,7 @@ const tools: OpenApiTool[] = [
|
|
|
9232
9236
|
},
|
|
9233
9237
|
"datacenter_code": {
|
|
9234
9238
|
"type": "string",
|
|
9235
|
-
"description": "Datacenter
|
|
9239
|
+
"description": "Datacenter for the hosting account when the order does not have one yet. Omit to use the order's default datacenter. Ignored when the order already has a hosting account. Must be an available datacenter; list available datacenters to find valid codes."
|
|
9236
9240
|
}
|
|
9237
9241
|
},
|
|
9238
9242
|
"required": [
|
|
@@ -15973,7 +15977,7 @@ const tools: OpenApiTool[] = [
|
|
|
15973
15977
|
"readOnlyHint": false,
|
|
15974
15978
|
"destructiveHint": false
|
|
15975
15979
|
},
|
|
15976
|
-
"description": "
|
|
15980
|
+
"description": "Start generating one or more images from a prompt and an image type for the specified\nWordPress installation. The generation runs asynchronously: the response is returned\nright away with `status: in-progress` and a `generation_id`. Poll\nGET /api/hosting/v1/accounts/{username}/wordpress/{software}/content/generations/{generation_id}\nevery few seconds until `status` is `completed` or `failed`.\n\nA completed generation returns temporary image URLs together with the time they expire;\ndownload the images before then. Images match the requested aspect ratio and are never\nsmaller than the requested size; logos are transparent images cropped to the mark.\n\nOnly one image generation can run per installation at a time: while one is still in\nprogress the endpoint returns 409 without the ID of the running generation, so a caller\nthat did not receive the `202` has to wait for it to finish (up to a few minutes) before\nstarting a new one. The endpoint is limited to 10 requests per minute.\n\nProvide the WordPress installation (software) identifier in the path. It can\nbe obtained from GET /api/hosting/v1/wordpress/installations (the `id` field).",
|
|
15977
15981
|
"method": "POST",
|
|
15978
15982
|
"path": "/api/hosting/v1/accounts/{username}/wordpress/{software}/content/images/generate",
|
|
15979
15983
|
"inputSchema": {
|
|
@@ -16038,6 +16042,54 @@ const tools: OpenApiTool[] = [
|
|
|
16038
16042
|
],
|
|
16039
16043
|
"group": "wordpress"
|
|
16040
16044
|
},
|
|
16045
|
+
{
|
|
16046
|
+
"name": "wordpress_ai-content_generation-result",
|
|
16047
|
+
"title": "Get generation result",
|
|
16048
|
+
"annotations": {
|
|
16049
|
+
"title": "Get generation result",
|
|
16050
|
+
"readOnlyHint": true,
|
|
16051
|
+
"destructiveHint": false
|
|
16052
|
+
},
|
|
16053
|
+
"description": "Get the result of an AI content generation started for the specified WordPress\ninstallation, such as an image generation started with\nPOST /api/hosting/v1/accounts/{username}/wordpress/{software}/content/images/generate.\n\nWhile the generation is still running only `status: in-progress` is returned; poll every\nfew seconds. Once `completed`, `result` holds the generated content shaped according to\n`type`: temporary image URLs together with the time they expire for `image-generation`, or\nthe generated website document for `website-generation` (started from the Hostinger\nWordPress plugin). A `failed` generation has no `result`. Unknown or expired generation\nIDs return 404.\n\nProvide the WordPress installation (software) identifier in the path. It can\nbe obtained from GET /api/hosting/v1/wordpress/installations (the `id` field).",
|
|
16054
|
+
"method": "GET",
|
|
16055
|
+
"path": "/api/hosting/v1/accounts/{username}/wordpress/{software}/content/generations/{generation_id}",
|
|
16056
|
+
"inputSchema": {
|
|
16057
|
+
"type": "object",
|
|
16058
|
+
"properties": {
|
|
16059
|
+
"username": {
|
|
16060
|
+
"type": "string",
|
|
16061
|
+
"description": "username parameter"
|
|
16062
|
+
},
|
|
16063
|
+
"software": {
|
|
16064
|
+
"type": "string",
|
|
16065
|
+
"description": "WordPress installation (software) identifier"
|
|
16066
|
+
},
|
|
16067
|
+
"generation_id": {
|
|
16068
|
+
"type": "string",
|
|
16069
|
+
"description": "Generation ID returned when the generation was started"
|
|
16070
|
+
},
|
|
16071
|
+
"type": {
|
|
16072
|
+
"type": "string",
|
|
16073
|
+
"description": "Generation type to look up. When omitted, every generation type is checked.",
|
|
16074
|
+
"enum": [
|
|
16075
|
+
"website-generation",
|
|
16076
|
+
"image-generation"
|
|
16077
|
+
]
|
|
16078
|
+
}
|
|
16079
|
+
},
|
|
16080
|
+
"required": [
|
|
16081
|
+
"username",
|
|
16082
|
+
"software",
|
|
16083
|
+
"generation_id"
|
|
16084
|
+
]
|
|
16085
|
+
},
|
|
16086
|
+
"security": [
|
|
16087
|
+
{
|
|
16088
|
+
"apiToken": []
|
|
16089
|
+
}
|
|
16090
|
+
],
|
|
16091
|
+
"group": "wordpress"
|
|
16092
|
+
},
|
|
16041
16093
|
{
|
|
16042
16094
|
"name": "wordpress_ai-tools_show-option-status",
|
|
16043
16095
|
"title": "Show AI option status",
|
|
@@ -2874,7 +2874,7 @@ export default [
|
|
|
2874
2874
|
"readOnlyHint": false,
|
|
2875
2875
|
"destructiveHint": false
|
|
2876
2876
|
},
|
|
2877
|
-
"description": "Starts a website setup on a Web or Cloud hosting order and returns the created setup\nright away; the website itself is provisioned asynchronously. Poll the list website\nsetups endpoint with the `domain` filter every 10 to 15 seconds and wait for\n`status: completed` before uploading files, deploying or creating databases.\n\nOmit `type` for an empty website. `type: wordpress` installs WordPress in the website\nroot with the admin user, email and password from `wordpress`, the domain as the site\ntitle, and `en_US` when `wordpress.language` is omitted. The headless types\n(`headless_wordpress`, `headless_ecommerce`, `headless_pocketbase`) create a headless\nwebsite; `headless_wordpress` additionally installs WordPress into the `cms` directory\nof the website root with generated credentials.\n\nOmit `domain` to set the website up on a generated temporary free subdomain.\n\
|
|
2877
|
+
"description": "Starts a website setup on a Web or Cloud hosting order and returns the created setup\nright away; the website itself is provisioned asynchronously. Poll the list website\nsetups endpoint with the `domain` filter every 10 to 15 seconds and wait for\n`status: completed` before uploading files, deploying or creating databases.\n\nOmit `type` for an empty website. `type: wordpress` installs WordPress in the website\nroot with the admin user, email and password from `wordpress`, the domain as the site\ntitle, and `en_US` when `wordpress.language` is omitted. The headless types\n(`headless_wordpress`, `headless_ecommerce`, `headless_pocketbase`) create a headless\nwebsite; `headless_wordpress` additionally installs WordPress into the `cms` directory\nof the website root with generated credentials.\n\nOmit `domain` to set the website up on a generated temporary free subdomain.\n\nWhen the order has no hosting account yet, the setup creates one first, in the datacenter\ngiven by `datacenter_code` or the order's default datacenter when it is omitted.\nReturns 404 when the order does not exist or is not accessible to the authenticated\nclient, and 409 with a `Retry-After` header while a setup for the same domain is still\nrunning.",
|
|
2878
2878
|
"method": "POST",
|
|
2879
2879
|
"path": "/api/hosting/v1/orders/{order_id}/onboardings",
|
|
2880
2880
|
"inputSchema": {
|
|
@@ -2896,7 +2896,11 @@ export default [
|
|
|
2896
2896
|
},
|
|
2897
2897
|
"domain": {
|
|
2898
2898
|
"type": "string",
|
|
2899
|
-
"description": "Customer-owned domain. Cannot start with \"www.\". Omit or `null` to set the website up on a generated temporary free subdomain."
|
|
2899
|
+
"description": "Customer-owned domain. Cannot start with \"www.\" and can have at most one subdomain level, e.g. `blog.example.com`. Omit or `null` to set the website up on a generated temporary free subdomain."
|
|
2900
|
+
},
|
|
2901
|
+
"datacenter_code": {
|
|
2902
|
+
"type": "string",
|
|
2903
|
+
"description": "Datacenter for the hosting account when the order does not have one yet. Omit to use the order's default datacenter. Ignored when the order already has a hosting account. List available datacenters to find valid codes."
|
|
2900
2904
|
},
|
|
2901
2905
|
"wordpress": {
|
|
2902
2906
|
"type": "object",
|
|
@@ -3592,7 +3596,7 @@ export default [
|
|
|
3592
3596
|
"readOnlyHint": false,
|
|
3593
3597
|
"destructiveHint": false
|
|
3594
3598
|
},
|
|
3595
|
-
"description": "
|
|
3599
|
+
"description": "Deprecated: use `POST /api/hosting/v1/orders/{order_id}/onboardings` (start website setup)\ninstead. It takes the same `domain` and `datacenter_code`, can also install WordPress, and\nreturns the created setup.\n\nCreate a new website for the authenticated client.\n\nYou must choose which hosting order to create this website on. Pass that\norder as `order_id` together with the domain name. List orders to see\navailable IDs; the website is provisioned on that order's hosting plan.\n\nOnly Web and Cloud hosting orders are accepted. To create a website on an Agency\nPlan order, use `POST /api/agency-hosting/v1/orders/{order_id}/websites/setups`.\n\nWhen the order has no hosting account yet, a new hosting account is set up first, in the\ndatacenter given by `datacenter_code` or the order's default datacenter when it is omitted.\nSubsequent websites will be hosted on the same datacenter automatically.\n\nWebsite creation is asynchronous and takes up to a few minutes. Poll the list website\nsetups endpoint with the `domain` filter every 10 to 15 seconds and wait for `status:\ncompleted` before uploading files, deploying or creating databases. While the setup is\n`running`, endpoints that operate on the website may respond with `404` or `409`.\n`is_enabled` on the websites list reflects suspension, not readiness.",
|
|
3596
3600
|
"method": "POST",
|
|
3597
3601
|
"path": "/api/hosting/v1/websites",
|
|
3598
3602
|
"inputSchema": {
|
|
@@ -3600,7 +3604,7 @@ export default [
|
|
|
3600
3604
|
"properties": {
|
|
3601
3605
|
"domain": {
|
|
3602
3606
|
"type": "string",
|
|
3603
|
-
"description": "Domain name for the website. Cannot start with \"www.\""
|
|
3607
|
+
"description": "Domain name for the website. Cannot start with \"www.\" and can have at most one subdomain level, e.g. `blog.example.com`."
|
|
3604
3608
|
},
|
|
3605
3609
|
"order_id": {
|
|
3606
3610
|
"type": "integer",
|
|
@@ -3608,7 +3612,7 @@ export default [
|
|
|
3608
3612
|
},
|
|
3609
3613
|
"datacenter_code": {
|
|
3610
3614
|
"type": "string",
|
|
3611
|
-
"description": "Datacenter
|
|
3615
|
+
"description": "Datacenter for the hosting account when the order does not have one yet. Omit to use the order's default datacenter. Ignored when the order already has a hosting account. Must be an available datacenter; list available datacenters to find valid codes."
|
|
3612
3616
|
}
|
|
3613
3617
|
},
|
|
3614
3618
|
"required": [
|
|
@@ -2888,7 +2888,7 @@ const tools: OpenApiTool[] = [
|
|
|
2888
2888
|
"readOnlyHint": false,
|
|
2889
2889
|
"destructiveHint": false
|
|
2890
2890
|
},
|
|
2891
|
-
"description": "Starts a website setup on a Web or Cloud hosting order and returns the created setup\nright away; the website itself is provisioned asynchronously. Poll the list website\nsetups endpoint with the `domain` filter every 10 to 15 seconds and wait for\n`status: completed` before uploading files, deploying or creating databases.\n\nOmit `type` for an empty website. `type: wordpress` installs WordPress in the website\nroot with the admin user, email and password from `wordpress`, the domain as the site\ntitle, and `en_US` when `wordpress.language` is omitted. The headless types\n(`headless_wordpress`, `headless_ecommerce`, `headless_pocketbase`) create a headless\nwebsite; `headless_wordpress` additionally installs WordPress into the `cms` directory\nof the website root with generated credentials.\n\nOmit `domain` to set the website up on a generated temporary free subdomain.\n\
|
|
2891
|
+
"description": "Starts a website setup on a Web or Cloud hosting order and returns the created setup\nright away; the website itself is provisioned asynchronously. Poll the list website\nsetups endpoint with the `domain` filter every 10 to 15 seconds and wait for\n`status: completed` before uploading files, deploying or creating databases.\n\nOmit `type` for an empty website. `type: wordpress` installs WordPress in the website\nroot with the admin user, email and password from `wordpress`, the domain as the site\ntitle, and `en_US` when `wordpress.language` is omitted. The headless types\n(`headless_wordpress`, `headless_ecommerce`, `headless_pocketbase`) create a headless\nwebsite; `headless_wordpress` additionally installs WordPress into the `cms` directory\nof the website root with generated credentials.\n\nOmit `domain` to set the website up on a generated temporary free subdomain.\n\nWhen the order has no hosting account yet, the setup creates one first, in the datacenter\ngiven by `datacenter_code` or the order's default datacenter when it is omitted.\nReturns 404 when the order does not exist or is not accessible to the authenticated\nclient, and 409 with a `Retry-After` header while a setup for the same domain is still\nrunning.",
|
|
2892
2892
|
"method": "POST",
|
|
2893
2893
|
"path": "/api/hosting/v1/orders/{order_id}/onboardings",
|
|
2894
2894
|
"inputSchema": {
|
|
@@ -2910,7 +2910,11 @@ const tools: OpenApiTool[] = [
|
|
|
2910
2910
|
},
|
|
2911
2911
|
"domain": {
|
|
2912
2912
|
"type": "string",
|
|
2913
|
-
"description": "Customer-owned domain. Cannot start with \"www.\". Omit or `null` to set the website up on a generated temporary free subdomain."
|
|
2913
|
+
"description": "Customer-owned domain. Cannot start with \"www.\" and can have at most one subdomain level, e.g. `blog.example.com`. Omit or `null` to set the website up on a generated temporary free subdomain."
|
|
2914
|
+
},
|
|
2915
|
+
"datacenter_code": {
|
|
2916
|
+
"type": "string",
|
|
2917
|
+
"description": "Datacenter for the hosting account when the order does not have one yet. Omit to use the order's default datacenter. Ignored when the order already has a hosting account. List available datacenters to find valid codes."
|
|
2914
2918
|
},
|
|
2915
2919
|
"wordpress": {
|
|
2916
2920
|
"type": "object",
|
|
@@ -3606,7 +3610,7 @@ const tools: OpenApiTool[] = [
|
|
|
3606
3610
|
"readOnlyHint": false,
|
|
3607
3611
|
"destructiveHint": false
|
|
3608
3612
|
},
|
|
3609
|
-
"description": "
|
|
3613
|
+
"description": "Deprecated: use `POST /api/hosting/v1/orders/{order_id}/onboardings` (start website setup)\ninstead. It takes the same `domain` and `datacenter_code`, can also install WordPress, and\nreturns the created setup.\n\nCreate a new website for the authenticated client.\n\nYou must choose which hosting order to create this website on. Pass that\norder as `order_id` together with the domain name. List orders to see\navailable IDs; the website is provisioned on that order's hosting plan.\n\nOnly Web and Cloud hosting orders are accepted. To create a website on an Agency\nPlan order, use `POST /api/agency-hosting/v1/orders/{order_id}/websites/setups`.\n\nWhen the order has no hosting account yet, a new hosting account is set up first, in the\ndatacenter given by `datacenter_code` or the order's default datacenter when it is omitted.\nSubsequent websites will be hosted on the same datacenter automatically.\n\nWebsite creation is asynchronous and takes up to a few minutes. Poll the list website\nsetups endpoint with the `domain` filter every 10 to 15 seconds and wait for `status:\ncompleted` before uploading files, deploying or creating databases. While the setup is\n`running`, endpoints that operate on the website may respond with `404` or `409`.\n`is_enabled` on the websites list reflects suspension, not readiness.",
|
|
3610
3614
|
"method": "POST",
|
|
3611
3615
|
"path": "/api/hosting/v1/websites",
|
|
3612
3616
|
"inputSchema": {
|
|
@@ -3614,7 +3618,7 @@ const tools: OpenApiTool[] = [
|
|
|
3614
3618
|
"properties": {
|
|
3615
3619
|
"domain": {
|
|
3616
3620
|
"type": "string",
|
|
3617
|
-
"description": "Domain name for the website. Cannot start with \"www.\""
|
|
3621
|
+
"description": "Domain name for the website. Cannot start with \"www.\" and can have at most one subdomain level, e.g. `blog.example.com`."
|
|
3618
3622
|
},
|
|
3619
3623
|
"order_id": {
|
|
3620
3624
|
"type": "integer",
|
|
@@ -3622,7 +3626,7 @@ const tools: OpenApiTool[] = [
|
|
|
3622
3626
|
},
|
|
3623
3627
|
"datacenter_code": {
|
|
3624
3628
|
"type": "string",
|
|
3625
|
-
"description": "Datacenter
|
|
3629
|
+
"description": "Datacenter for the hosting account when the order does not have one yet. Omit to use the order's default datacenter. Ignored when the order already has a hosting account. Must be an available datacenter; list available datacenters to find valid codes."
|
|
3626
3630
|
}
|
|
3627
3631
|
},
|
|
3628
3632
|
"required": [
|
|
@@ -8,7 +8,7 @@ export default [
|
|
|
8
8
|
"readOnlyHint": false,
|
|
9
9
|
"destructiveHint": false
|
|
10
10
|
},
|
|
11
|
-
"description": "
|
|
11
|
+
"description": "Start generating one or more images from a prompt and an image type for the specified\nWordPress installation. The generation runs asynchronously: the response is returned\nright away with `status: in-progress` and a `generation_id`. Poll\nGET /api/hosting/v1/accounts/{username}/wordpress/{software}/content/generations/{generation_id}\nevery few seconds until `status` is `completed` or `failed`.\n\nA completed generation returns temporary image URLs together with the time they expire;\ndownload the images before then. Images match the requested aspect ratio and are never\nsmaller than the requested size; logos are transparent images cropped to the mark.\n\nOnly one image generation can run per installation at a time: while one is still in\nprogress the endpoint returns 409 without the ID of the running generation, so a caller\nthat did not receive the `202` has to wait for it to finish (up to a few minutes) before\nstarting a new one. The endpoint is limited to 10 requests per minute.\n\nProvide the WordPress installation (software) identifier in the path. It can\nbe obtained from GET /api/hosting/v1/wordpress/installations (the `id` field).",
|
|
12
12
|
"method": "POST",
|
|
13
13
|
"path": "/api/hosting/v1/accounts/{username}/wordpress/{software}/content/images/generate",
|
|
14
14
|
"inputSchema": {
|
|
@@ -73,6 +73,54 @@ export default [
|
|
|
73
73
|
],
|
|
74
74
|
"group": "wordpress"
|
|
75
75
|
},
|
|
76
|
+
{
|
|
77
|
+
"name": "wordpress_ai-content_generation-result",
|
|
78
|
+
"title": "Get generation result",
|
|
79
|
+
"annotations": {
|
|
80
|
+
"title": "Get generation result",
|
|
81
|
+
"readOnlyHint": true,
|
|
82
|
+
"destructiveHint": false
|
|
83
|
+
},
|
|
84
|
+
"description": "Get the result of an AI content generation started for the specified WordPress\ninstallation, such as an image generation started with\nPOST /api/hosting/v1/accounts/{username}/wordpress/{software}/content/images/generate.\n\nWhile the generation is still running only `status: in-progress` is returned; poll every\nfew seconds. Once `completed`, `result` holds the generated content shaped according to\n`type`: temporary image URLs together with the time they expire for `image-generation`, or\nthe generated website document for `website-generation` (started from the Hostinger\nWordPress plugin). A `failed` generation has no `result`. Unknown or expired generation\nIDs return 404.\n\nProvide the WordPress installation (software) identifier in the path. It can\nbe obtained from GET /api/hosting/v1/wordpress/installations (the `id` field).",
|
|
85
|
+
"method": "GET",
|
|
86
|
+
"path": "/api/hosting/v1/accounts/{username}/wordpress/{software}/content/generations/{generation_id}",
|
|
87
|
+
"inputSchema": {
|
|
88
|
+
"type": "object",
|
|
89
|
+
"properties": {
|
|
90
|
+
"username": {
|
|
91
|
+
"type": "string",
|
|
92
|
+
"description": "username parameter"
|
|
93
|
+
},
|
|
94
|
+
"software": {
|
|
95
|
+
"type": "string",
|
|
96
|
+
"description": "WordPress installation (software) identifier"
|
|
97
|
+
},
|
|
98
|
+
"generation_id": {
|
|
99
|
+
"type": "string",
|
|
100
|
+
"description": "Generation ID returned when the generation was started"
|
|
101
|
+
},
|
|
102
|
+
"type": {
|
|
103
|
+
"type": "string",
|
|
104
|
+
"description": "Generation type to look up. When omitted, every generation type is checked.",
|
|
105
|
+
"enum": [
|
|
106
|
+
"website-generation",
|
|
107
|
+
"image-generation"
|
|
108
|
+
]
|
|
109
|
+
}
|
|
110
|
+
},
|
|
111
|
+
"required": [
|
|
112
|
+
"username",
|
|
113
|
+
"software",
|
|
114
|
+
"generation_id"
|
|
115
|
+
]
|
|
116
|
+
},
|
|
117
|
+
"security": [
|
|
118
|
+
{
|
|
119
|
+
"apiToken": []
|
|
120
|
+
}
|
|
121
|
+
],
|
|
122
|
+
"group": "wordpress"
|
|
123
|
+
},
|
|
76
124
|
{
|
|
77
125
|
"name": "wordpress_ai-tools_show-option-status",
|
|
78
126
|
"title": "Show AI option status",
|
|
@@ -22,7 +22,7 @@ const tools: OpenApiTool[] = [
|
|
|
22
22
|
"readOnlyHint": false,
|
|
23
23
|
"destructiveHint": false
|
|
24
24
|
},
|
|
25
|
-
"description": "
|
|
25
|
+
"description": "Start generating one or more images from a prompt and an image type for the specified\nWordPress installation. The generation runs asynchronously: the response is returned\nright away with `status: in-progress` and a `generation_id`. Poll\nGET /api/hosting/v1/accounts/{username}/wordpress/{software}/content/generations/{generation_id}\nevery few seconds until `status` is `completed` or `failed`.\n\nA completed generation returns temporary image URLs together with the time they expire;\ndownload the images before then. Images match the requested aspect ratio and are never\nsmaller than the requested size; logos are transparent images cropped to the mark.\n\nOnly one image generation can run per installation at a time: while one is still in\nprogress the endpoint returns 409 without the ID of the running generation, so a caller\nthat did not receive the `202` has to wait for it to finish (up to a few minutes) before\nstarting a new one. The endpoint is limited to 10 requests per minute.\n\nProvide the WordPress installation (software) identifier in the path. It can\nbe obtained from GET /api/hosting/v1/wordpress/installations (the `id` field).",
|
|
26
26
|
"method": "POST",
|
|
27
27
|
"path": "/api/hosting/v1/accounts/{username}/wordpress/{software}/content/images/generate",
|
|
28
28
|
"inputSchema": {
|
|
@@ -87,6 +87,54 @@ const tools: OpenApiTool[] = [
|
|
|
87
87
|
],
|
|
88
88
|
"group": "wordpress"
|
|
89
89
|
},
|
|
90
|
+
{
|
|
91
|
+
"name": "wordpress_ai-content_generation-result",
|
|
92
|
+
"title": "Get generation result",
|
|
93
|
+
"annotations": {
|
|
94
|
+
"title": "Get generation result",
|
|
95
|
+
"readOnlyHint": true,
|
|
96
|
+
"destructiveHint": false
|
|
97
|
+
},
|
|
98
|
+
"description": "Get the result of an AI content generation started for the specified WordPress\ninstallation, such as an image generation started with\nPOST /api/hosting/v1/accounts/{username}/wordpress/{software}/content/images/generate.\n\nWhile the generation is still running only `status: in-progress` is returned; poll every\nfew seconds. Once `completed`, `result` holds the generated content shaped according to\n`type`: temporary image URLs together with the time they expire for `image-generation`, or\nthe generated website document for `website-generation` (started from the Hostinger\nWordPress plugin). A `failed` generation has no `result`. Unknown or expired generation\nIDs return 404.\n\nProvide the WordPress installation (software) identifier in the path. It can\nbe obtained from GET /api/hosting/v1/wordpress/installations (the `id` field).",
|
|
99
|
+
"method": "GET",
|
|
100
|
+
"path": "/api/hosting/v1/accounts/{username}/wordpress/{software}/content/generations/{generation_id}",
|
|
101
|
+
"inputSchema": {
|
|
102
|
+
"type": "object",
|
|
103
|
+
"properties": {
|
|
104
|
+
"username": {
|
|
105
|
+
"type": "string",
|
|
106
|
+
"description": "username parameter"
|
|
107
|
+
},
|
|
108
|
+
"software": {
|
|
109
|
+
"type": "string",
|
|
110
|
+
"description": "WordPress installation (software) identifier"
|
|
111
|
+
},
|
|
112
|
+
"generation_id": {
|
|
113
|
+
"type": "string",
|
|
114
|
+
"description": "Generation ID returned when the generation was started"
|
|
115
|
+
},
|
|
116
|
+
"type": {
|
|
117
|
+
"type": "string",
|
|
118
|
+
"description": "Generation type to look up. When omitted, every generation type is checked.",
|
|
119
|
+
"enum": [
|
|
120
|
+
"website-generation",
|
|
121
|
+
"image-generation"
|
|
122
|
+
]
|
|
123
|
+
}
|
|
124
|
+
},
|
|
125
|
+
"required": [
|
|
126
|
+
"username",
|
|
127
|
+
"software",
|
|
128
|
+
"generation_id"
|
|
129
|
+
]
|
|
130
|
+
},
|
|
131
|
+
"security": [
|
|
132
|
+
{
|
|
133
|
+
"apiToken": []
|
|
134
|
+
}
|
|
135
|
+
],
|
|
136
|
+
"group": "wordpress"
|
|
137
|
+
},
|
|
90
138
|
{
|
|
91
139
|
"name": "wordpress_ai-tools_show-option-status",
|
|
92
140
|
"title": "Show AI option status",
|
|
@@ -4,4 +4,4 @@ import { startServer } from '../core/runtime.js';
|
|
|
4
4
|
import tools from '../core/tools/agency-hosting.js';
|
|
5
5
|
import instructions from '../core/instructions.js';
|
|
6
6
|
|
|
7
|
-
startServer({ name: 'hostinger-agency-hosting-mcp', version: '
|
|
7
|
+
startServer({ name: 'hostinger-agency-hosting-mcp', version: '3.0.0', tools, instructions });
|
|
@@ -4,4 +4,4 @@ import { startServer } from '../core/runtime.js';
|
|
|
4
4
|
import tools from '../core/tools/agency-hosting.js';
|
|
5
5
|
import instructions from '../core/instructions.js';
|
|
6
6
|
|
|
7
|
-
startServer({ name: 'hostinger-agency-hosting-mcp', version: '
|
|
7
|
+
startServer({ name: 'hostinger-agency-hosting-mcp', version: '3.0.0', tools, instructions });
|
|
@@ -3,4 +3,4 @@
|
|
|
3
3
|
import { startServer } from '../core/runtime.js';
|
|
4
4
|
import tools from '../core/tools/agent-readiness.js';
|
|
5
5
|
|
|
6
|
-
startServer({ name: 'hostinger-agent-readiness-mcp', version: '
|
|
6
|
+
startServer({ name: 'hostinger-agent-readiness-mcp', version: '3.0.0', tools });
|
|
@@ -3,4 +3,4 @@
|
|
|
3
3
|
import { startServer } from '../core/runtime.js';
|
|
4
4
|
import tools from '../core/tools/agent-readiness.js';
|
|
5
5
|
|
|
6
|
-
startServer({ name: 'hostinger-agent-readiness-mcp', version: '
|
|
6
|
+
startServer({ name: 'hostinger-agent-readiness-mcp', version: '3.0.0', tools });
|
package/src/servers/all.js
CHANGED
|
@@ -5,4 +5,4 @@ import tools from '../core/tools/all.js';
|
|
|
5
5
|
import instructions from '../core/instructions.js';
|
|
6
6
|
import skills from '../core/skills.js';
|
|
7
7
|
|
|
8
|
-
startServer({ name: 'hostinger-api-mcp', version: '
|
|
8
|
+
startServer({ name: 'hostinger-api-mcp', version: '3.0.0', tools, instructions, skills });
|
package/src/servers/all.ts
CHANGED
|
@@ -5,4 +5,4 @@ import tools from '../core/tools/all.js';
|
|
|
5
5
|
import instructions from '../core/instructions.js';
|
|
6
6
|
import skills from '../core/skills.js';
|
|
7
7
|
|
|
8
|
-
startServer({ name: 'hostinger-api-mcp', version: '
|
|
8
|
+
startServer({ name: 'hostinger-api-mcp', version: '3.0.0', tools, instructions, skills });
|
package/src/servers/billing.js
CHANGED
package/src/servers/billing.ts
CHANGED
package/src/servers/dns.js
CHANGED
package/src/servers/dns.ts
CHANGED
package/src/servers/domains.js
CHANGED
package/src/servers/domains.ts
CHANGED
package/src/servers/ecommerce.js
CHANGED
package/src/servers/ecommerce.ts
CHANGED
package/src/servers/horizons.js
CHANGED
package/src/servers/horizons.ts
CHANGED
package/src/servers/hosting.js
CHANGED
|
@@ -4,4 +4,4 @@ import { startServer } from '../core/runtime.js';
|
|
|
4
4
|
import tools from '../core/tools/hosting.js';
|
|
5
5
|
import instructions from '../core/instructions.js';
|
|
6
6
|
|
|
7
|
-
startServer({ name: 'hostinger-hosting-mcp', version: '
|
|
7
|
+
startServer({ name: 'hostinger-hosting-mcp', version: '3.0.0', tools, instructions });
|
package/src/servers/hosting.ts
CHANGED
|
@@ -4,4 +4,4 @@ import { startServer } from '../core/runtime.js';
|
|
|
4
4
|
import tools from '../core/tools/hosting.js';
|
|
5
5
|
import instructions from '../core/instructions.js';
|
|
6
6
|
|
|
7
|
-
startServer({ name: 'hostinger-hosting-mcp', version: '
|
|
7
|
+
startServer({ name: 'hostinger-hosting-mcp', version: '3.0.0', tools, instructions });
|
package/src/servers/mail.js
CHANGED
package/src/servers/mail.ts
CHANGED
package/src/servers/reach.js
CHANGED
package/src/servers/reach.ts
CHANGED
package/src/servers/vps.js
CHANGED
package/src/servers/vps.ts
CHANGED
package/src/servers/wordpress.js
CHANGED
package/src/servers/wordpress.ts
CHANGED
package/types.d.ts
CHANGED
|
@@ -4893,8 +4893,8 @@ of the website root with generated credentials.
|
|
|
4893
4893
|
|
|
4894
4894
|
Omit `domain` to set the website up on a generated temporary free subdomain.
|
|
4895
4895
|
|
|
4896
|
-
|
|
4897
|
-
|
|
4896
|
+
When the order has no hosting account yet, the setup creates one first, in the datacenter
|
|
4897
|
+
given by `datacenter_code` or the order's default datacenter when it is omitted.
|
|
4898
4898
|
Returns 404 when the order does not exist or is not accessible to the authenticated
|
|
4899
4899
|
client, and 409 with a `Retry-After` header while a setup for the same domain is still
|
|
4900
4900
|
running.
|
|
@@ -4910,9 +4910,13 @@ running.
|
|
|
4910
4910
|
*/
|
|
4911
4911
|
type?: string;
|
|
4912
4912
|
/**
|
|
4913
|
-
* Customer-owned domain. Cannot start with "www.". Omit or `null` to set the website up on a generated temporary free subdomain.
|
|
4913
|
+
* Customer-owned domain. Cannot start with "www." and can have at most one subdomain level, e.g. `blog.example.com`. Omit or `null` to set the website up on a generated temporary free subdomain.
|
|
4914
4914
|
*/
|
|
4915
4915
|
domain?: string;
|
|
4916
|
+
/**
|
|
4917
|
+
* Datacenter for the hosting account when the order does not have one yet. Omit to use the order's default datacenter. Ignored when the order already has a hosting account. List available datacenters to find valid codes.
|
|
4918
|
+
*/
|
|
4919
|
+
datacenter_code?: string;
|
|
4916
4920
|
/**
|
|
4917
4921
|
* WordPress install settings. Required when `type` is `wordpress`, not allowed otherwise. The site title is the domain.
|
|
4918
4922
|
*/
|
|
@@ -5320,7 +5324,11 @@ endpoint instead.
|
|
|
5320
5324
|
};
|
|
5321
5325
|
|
|
5322
5326
|
/**
|
|
5323
|
-
*
|
|
5327
|
+
* Deprecated: use `POST /api/hosting/v1/orders/{order_id}/onboardings` (start website setup)
|
|
5328
|
+
instead. It takes the same `domain` and `datacenter_code`, can also install WordPress, and
|
|
5329
|
+
returns the created setup.
|
|
5330
|
+
|
|
5331
|
+
Create a new website for the authenticated client.
|
|
5324
5332
|
|
|
5325
5333
|
You must choose which hosting order to create this website on. Pass that
|
|
5326
5334
|
order as `order_id` together with the domain name. List orders to see
|
|
@@ -5329,10 +5337,8 @@ available IDs; the website is provisioned on that order's hosting plan.
|
|
|
5329
5337
|
Only Web and Cloud hosting orders are accepted. To create a website on an Agency
|
|
5330
5338
|
Plan order, use `POST /api/agency-hosting/v1/orders/{order_id}/websites/setups`.
|
|
5331
5339
|
|
|
5332
|
-
|
|
5333
|
-
|
|
5334
|
-
in the selected datacenter.
|
|
5335
|
-
|
|
5340
|
+
When the order has no hosting account yet, a new hosting account is set up first, in the
|
|
5341
|
+
datacenter given by `datacenter_code` or the order's default datacenter when it is omitted.
|
|
5336
5342
|
Subsequent websites will be hosted on the same datacenter automatically.
|
|
5337
5343
|
|
|
5338
5344
|
Website creation is asynchronous and takes up to a few minutes. Poll the list website
|
|
@@ -5344,7 +5350,7 @@ completed` before uploading files, deploying or creating databases. While the se
|
|
|
5344
5350
|
"hosting_websites_create": {
|
|
5345
5351
|
params: {
|
|
5346
5352
|
/**
|
|
5347
|
-
* Domain name for the website. Cannot start with "www."
|
|
5353
|
+
* Domain name for the website. Cannot start with "www." and can have at most one subdomain level, e.g. `blog.example.com`.
|
|
5348
5354
|
*/
|
|
5349
5355
|
domain: string;
|
|
5350
5356
|
/**
|
|
@@ -5352,7 +5358,7 @@ completed` before uploading files, deploying or creating databases. While the se
|
|
|
5352
5358
|
*/
|
|
5353
5359
|
order_id: number;
|
|
5354
5360
|
/**
|
|
5355
|
-
* Datacenter
|
|
5361
|
+
* Datacenter for the hosting account when the order does not have one yet. Omit to use the order's default datacenter. Ignored when the order already has a hosting account. Must be an available datacenter; list available datacenters to find valid codes.
|
|
5356
5362
|
*/
|
|
5357
5363
|
datacenter_code?: string;
|
|
5358
5364
|
};
|
|
@@ -9307,13 +9313,20 @@ Use this endpoint to power off running VPS instances.
|
|
|
9307
9313
|
};
|
|
9308
9314
|
|
|
9309
9315
|
/**
|
|
9310
|
-
*
|
|
9311
|
-
WordPress installation.
|
|
9312
|
-
|
|
9313
|
-
|
|
9316
|
+
* Start generating one or more images from a prompt and an image type for the specified
|
|
9317
|
+
WordPress installation. The generation runs asynchronously: the response is returned
|
|
9318
|
+
right away with `status: in-progress` and a `generation_id`. Poll
|
|
9319
|
+
GET /api/hosting/v1/accounts/{username}/wordpress/{software}/content/generations/{generation_id}
|
|
9320
|
+
every few seconds until `status` is `completed` or `failed`.
|
|
9321
|
+
|
|
9322
|
+
A completed generation returns temporary image URLs together with the time they expire;
|
|
9323
|
+
download the images before then. Images match the requested aspect ratio and are never
|
|
9324
|
+
smaller than the requested size; logos are transparent images cropped to the mark.
|
|
9314
9325
|
|
|
9315
|
-
|
|
9316
|
-
|
|
9326
|
+
Only one image generation can run per installation at a time: while one is still in
|
|
9327
|
+
progress the endpoint returns 409 without the ID of the running generation, so a caller
|
|
9328
|
+
that did not receive the `202` has to wait for it to finish (up to a few minutes) before
|
|
9329
|
+
starting a new one. The endpoint is limited to 10 requests per minute.
|
|
9317
9330
|
|
|
9318
9331
|
Provide the WordPress installation (software) identifier in the path. It can
|
|
9319
9332
|
be obtained from GET /api/hosting/v1/wordpress/installations (the `id` field).
|
|
@@ -9360,6 +9373,43 @@ be obtained from GET /api/hosting/v1/wordpress/installations (the `id` field).
|
|
|
9360
9373
|
response: any; // Response structure will depend on the API
|
|
9361
9374
|
};
|
|
9362
9375
|
|
|
9376
|
+
/**
|
|
9377
|
+
* Get the result of an AI content generation started for the specified WordPress
|
|
9378
|
+
installation, such as an image generation started with
|
|
9379
|
+
POST /api/hosting/v1/accounts/{username}/wordpress/{software}/content/images/generate.
|
|
9380
|
+
|
|
9381
|
+
While the generation is still running only `status: in-progress` is returned; poll every
|
|
9382
|
+
few seconds. Once `completed`, `result` holds the generated content shaped according to
|
|
9383
|
+
`type`: temporary image URLs together with the time they expire for `image-generation`, or
|
|
9384
|
+
the generated website document for `website-generation` (started from the Hostinger
|
|
9385
|
+
WordPress plugin). A `failed` generation has no `result`. Unknown or expired generation
|
|
9386
|
+
IDs return 404.
|
|
9387
|
+
|
|
9388
|
+
Provide the WordPress installation (software) identifier in the path. It can
|
|
9389
|
+
be obtained from GET /api/hosting/v1/wordpress/installations (the `id` field).
|
|
9390
|
+
*/
|
|
9391
|
+
"wordpress_ai-content_generation-result": {
|
|
9392
|
+
params: {
|
|
9393
|
+
/**
|
|
9394
|
+
* username parameter
|
|
9395
|
+
*/
|
|
9396
|
+
username: string;
|
|
9397
|
+
/**
|
|
9398
|
+
* WordPress installation (software) identifier
|
|
9399
|
+
*/
|
|
9400
|
+
software: string;
|
|
9401
|
+
/**
|
|
9402
|
+
* Generation ID returned when the generation was started
|
|
9403
|
+
*/
|
|
9404
|
+
generation_id: string;
|
|
9405
|
+
/**
|
|
9406
|
+
* Generation type to look up. When omitted, every generation type is checked.
|
|
9407
|
+
*/
|
|
9408
|
+
type?: string;
|
|
9409
|
+
};
|
|
9410
|
+
response: any; // Response structure will depend on the API
|
|
9411
|
+
};
|
|
9412
|
+
|
|
9363
9413
|
/**
|
|
9364
9414
|
* Show the current AI option status for the Hostinger Tools plugin on the
|
|
9365
9415
|
specified WordPress installation. Filter by `option` to return a single
|