hostinger-api-mcp 0.1.37 → 0.1.41

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.
@@ -0,0 +1,163 @@
1
+ // Auto-generated tool list for group: billing
2
+ export default [
3
+ {
4
+ "name": "billing_getCatalogItemListV1",
5
+ "description": "Retrieve catalog items available for order.\n\nPrices in catalog items is displayed as cents (without floating point),\ne.g: float `17.99` is displayed as integer `1799`.\n\nUse this endpoint to view available services and pricing before placing orders.",
6
+ "method": "GET",
7
+ "path": "/api/billing/v1/catalog",
8
+ "inputSchema": {
9
+ "type": "object",
10
+ "properties": {
11
+ "category": {
12
+ "type": "string",
13
+ "description": "Filter catalog items by category",
14
+ "enum": [
15
+ "DOMAIN",
16
+ "VPS"
17
+ ]
18
+ },
19
+ "name": {
20
+ "type": "string",
21
+ "description": "Filter catalog items by name. Use `*` for wildcard search, e.g. `.COM*` to find .com domain"
22
+ }
23
+ },
24
+ "required": []
25
+ },
26
+ "security": [
27
+ {
28
+ "apiToken": []
29
+ }
30
+ ],
31
+ "group": "billing"
32
+ },
33
+ {
34
+ "name": "billing_setDefaultPaymentMethodV1",
35
+ "description": "Set the default payment method for your account.\n\nUse this endpoint to configure the primary payment method for future orders.",
36
+ "method": "POST",
37
+ "path": "/api/billing/v1/payment-methods/{paymentMethodId}",
38
+ "inputSchema": {
39
+ "type": "object",
40
+ "properties": {
41
+ "paymentMethodId": {
42
+ "type": "integer",
43
+ "description": "Payment method ID"
44
+ }
45
+ },
46
+ "required": [
47
+ "paymentMethodId"
48
+ ]
49
+ },
50
+ "security": [
51
+ {
52
+ "apiToken": []
53
+ }
54
+ ],
55
+ "group": "billing"
56
+ },
57
+ {
58
+ "name": "billing_deletePaymentMethodV1",
59
+ "description": "Delete a payment method from your account.\n\nUse this endpoint to remove unused payment methods from user accounts.",
60
+ "method": "DELETE",
61
+ "path": "/api/billing/v1/payment-methods/{paymentMethodId}",
62
+ "inputSchema": {
63
+ "type": "object",
64
+ "properties": {
65
+ "paymentMethodId": {
66
+ "type": "integer",
67
+ "description": "Payment method ID"
68
+ }
69
+ },
70
+ "required": [
71
+ "paymentMethodId"
72
+ ]
73
+ },
74
+ "security": [
75
+ {
76
+ "apiToken": []
77
+ }
78
+ ],
79
+ "group": "billing"
80
+ },
81
+ {
82
+ "name": "billing_getPaymentMethodListV1",
83
+ "description": "Retrieve available payment methods that can be used for placing new orders.\n\nIf you want to add new payment method,\nplease use [hPanel](https://hpanel.hostinger.com/billing/payment-methods).\n\nUse this endpoint to view available payment options before creating orders.",
84
+ "method": "GET",
85
+ "path": "/api/billing/v1/payment-methods",
86
+ "inputSchema": {
87
+ "type": "object",
88
+ "properties": {},
89
+ "required": []
90
+ },
91
+ "security": [
92
+ {
93
+ "apiToken": []
94
+ }
95
+ ],
96
+ "group": "billing"
97
+ },
98
+ {
99
+ "name": "billing_getSubscriptionListV1",
100
+ "description": "Retrieve a list of all subscriptions associated with your account.\n\nUse this endpoint to monitor active services and billing status.",
101
+ "method": "GET",
102
+ "path": "/api/billing/v1/subscriptions",
103
+ "inputSchema": {
104
+ "type": "object",
105
+ "properties": {},
106
+ "required": []
107
+ },
108
+ "security": [
109
+ {
110
+ "apiToken": []
111
+ }
112
+ ],
113
+ "group": "billing"
114
+ },
115
+ {
116
+ "name": "billing_disableAutoRenewalV1",
117
+ "description": "Disable auto-renewal for a subscription.\n\nUse this endpoint when disable auto-renewal for a subscription.",
118
+ "method": "DELETE",
119
+ "path": "/api/billing/v1/subscriptions/{subscriptionId}/auto-renewal/disable",
120
+ "inputSchema": {
121
+ "type": "object",
122
+ "properties": {
123
+ "subscriptionId": {
124
+ "type": "string",
125
+ "description": "Subscription ID"
126
+ }
127
+ },
128
+ "required": [
129
+ "subscriptionId"
130
+ ]
131
+ },
132
+ "security": [
133
+ {
134
+ "apiToken": []
135
+ }
136
+ ],
137
+ "group": "billing"
138
+ },
139
+ {
140
+ "name": "billing_enableAutoRenewalV1",
141
+ "description": "Enable auto-renewal for a subscription.\n\nUse this endpoint when enable auto-renewal for a subscription.",
142
+ "method": "PATCH",
143
+ "path": "/api/billing/v1/subscriptions/{subscriptionId}/auto-renewal/enable",
144
+ "inputSchema": {
145
+ "type": "object",
146
+ "properties": {
147
+ "subscriptionId": {
148
+ "type": "string",
149
+ "description": "Subscription ID"
150
+ }
151
+ },
152
+ "required": [
153
+ "subscriptionId"
154
+ ]
155
+ },
156
+ "security": [
157
+ {
158
+ "apiToken": []
159
+ }
160
+ ],
161
+ "group": "billing"
162
+ }
163
+ ];
@@ -0,0 +1,174 @@
1
+ // Auto-generated tool list for group: billing
2
+ import type { Tool } from "@modelcontextprotocol/sdk/types.js";
3
+
4
+ export interface OpenApiTool extends Tool {
5
+ method: string;
6
+ path: string;
7
+ security: unknown[];
8
+ custom?: boolean;
9
+ group?: string;
10
+ }
11
+
12
+ const tools: OpenApiTool[] = [
13
+ {
14
+ "name": "billing_getCatalogItemListV1",
15
+ "description": "Retrieve catalog items available for order.\n\nPrices in catalog items is displayed as cents (without floating point),\ne.g: float `17.99` is displayed as integer `1799`.\n\nUse this endpoint to view available services and pricing before placing orders.",
16
+ "method": "GET",
17
+ "path": "/api/billing/v1/catalog",
18
+ "inputSchema": {
19
+ "type": "object",
20
+ "properties": {
21
+ "category": {
22
+ "type": "string",
23
+ "description": "Filter catalog items by category",
24
+ "enum": [
25
+ "DOMAIN",
26
+ "VPS"
27
+ ]
28
+ },
29
+ "name": {
30
+ "type": "string",
31
+ "description": "Filter catalog items by name. Use `*` for wildcard search, e.g. `.COM*` to find .com domain"
32
+ }
33
+ },
34
+ "required": []
35
+ },
36
+ "security": [
37
+ {
38
+ "apiToken": []
39
+ }
40
+ ],
41
+ "group": "billing"
42
+ },
43
+ {
44
+ "name": "billing_setDefaultPaymentMethodV1",
45
+ "description": "Set the default payment method for your account.\n\nUse this endpoint to configure the primary payment method for future orders.",
46
+ "method": "POST",
47
+ "path": "/api/billing/v1/payment-methods/{paymentMethodId}",
48
+ "inputSchema": {
49
+ "type": "object",
50
+ "properties": {
51
+ "paymentMethodId": {
52
+ "type": "integer",
53
+ "description": "Payment method ID"
54
+ }
55
+ },
56
+ "required": [
57
+ "paymentMethodId"
58
+ ]
59
+ },
60
+ "security": [
61
+ {
62
+ "apiToken": []
63
+ }
64
+ ],
65
+ "group": "billing"
66
+ },
67
+ {
68
+ "name": "billing_deletePaymentMethodV1",
69
+ "description": "Delete a payment method from your account.\n\nUse this endpoint to remove unused payment methods from user accounts.",
70
+ "method": "DELETE",
71
+ "path": "/api/billing/v1/payment-methods/{paymentMethodId}",
72
+ "inputSchema": {
73
+ "type": "object",
74
+ "properties": {
75
+ "paymentMethodId": {
76
+ "type": "integer",
77
+ "description": "Payment method ID"
78
+ }
79
+ },
80
+ "required": [
81
+ "paymentMethodId"
82
+ ]
83
+ },
84
+ "security": [
85
+ {
86
+ "apiToken": []
87
+ }
88
+ ],
89
+ "group": "billing"
90
+ },
91
+ {
92
+ "name": "billing_getPaymentMethodListV1",
93
+ "description": "Retrieve available payment methods that can be used for placing new orders.\n\nIf you want to add new payment method,\nplease use [hPanel](https://hpanel.hostinger.com/billing/payment-methods).\n\nUse this endpoint to view available payment options before creating orders.",
94
+ "method": "GET",
95
+ "path": "/api/billing/v1/payment-methods",
96
+ "inputSchema": {
97
+ "type": "object",
98
+ "properties": {},
99
+ "required": []
100
+ },
101
+ "security": [
102
+ {
103
+ "apiToken": []
104
+ }
105
+ ],
106
+ "group": "billing"
107
+ },
108
+ {
109
+ "name": "billing_getSubscriptionListV1",
110
+ "description": "Retrieve a list of all subscriptions associated with your account.\n\nUse this endpoint to monitor active services and billing status.",
111
+ "method": "GET",
112
+ "path": "/api/billing/v1/subscriptions",
113
+ "inputSchema": {
114
+ "type": "object",
115
+ "properties": {},
116
+ "required": []
117
+ },
118
+ "security": [
119
+ {
120
+ "apiToken": []
121
+ }
122
+ ],
123
+ "group": "billing"
124
+ },
125
+ {
126
+ "name": "billing_disableAutoRenewalV1",
127
+ "description": "Disable auto-renewal for a subscription.\n\nUse this endpoint when disable auto-renewal for a subscription.",
128
+ "method": "DELETE",
129
+ "path": "/api/billing/v1/subscriptions/{subscriptionId}/auto-renewal/disable",
130
+ "inputSchema": {
131
+ "type": "object",
132
+ "properties": {
133
+ "subscriptionId": {
134
+ "type": "string",
135
+ "description": "Subscription ID"
136
+ }
137
+ },
138
+ "required": [
139
+ "subscriptionId"
140
+ ]
141
+ },
142
+ "security": [
143
+ {
144
+ "apiToken": []
145
+ }
146
+ ],
147
+ "group": "billing"
148
+ },
149
+ {
150
+ "name": "billing_enableAutoRenewalV1",
151
+ "description": "Enable auto-renewal for a subscription.\n\nUse this endpoint when enable auto-renewal for a subscription.",
152
+ "method": "PATCH",
153
+ "path": "/api/billing/v1/subscriptions/{subscriptionId}/auto-renewal/enable",
154
+ "inputSchema": {
155
+ "type": "object",
156
+ "properties": {
157
+ "subscriptionId": {
158
+ "type": "string",
159
+ "description": "Subscription ID"
160
+ }
161
+ },
162
+ "required": [
163
+ "subscriptionId"
164
+ ]
165
+ },
166
+ "security": [
167
+ {
168
+ "apiToken": []
169
+ }
170
+ ],
171
+ "group": "billing"
172
+ }
173
+ ];
174
+ export default tools;
@@ -0,0 +1,343 @@
1
+ // Auto-generated tool list for group: dns
2
+ export default [
3
+ {
4
+ "name": "DNS_getDNSSnapshotV1",
5
+ "description": "Retrieve particular DNS snapshot with contents of DNS zone records.\n\nUse this endpoint to view historical DNS configurations for domains.",
6
+ "method": "GET",
7
+ "path": "/api/dns/v1/snapshots/{domain}/{snapshotId}",
8
+ "inputSchema": {
9
+ "type": "object",
10
+ "properties": {
11
+ "domain": {
12
+ "type": "string",
13
+ "description": "Domain name"
14
+ },
15
+ "snapshotId": {
16
+ "type": "integer",
17
+ "description": "Snapshot ID"
18
+ }
19
+ },
20
+ "required": [
21
+ "domain",
22
+ "snapshotId"
23
+ ]
24
+ },
25
+ "security": [
26
+ {
27
+ "apiToken": []
28
+ }
29
+ ],
30
+ "group": "dns"
31
+ },
32
+ {
33
+ "name": "DNS_getDNSSnapshotListV1",
34
+ "description": "Retrieve DNS snapshots for a domain.\n\nUse this endpoint to view available DNS backup points for restoration.",
35
+ "method": "GET",
36
+ "path": "/api/dns/v1/snapshots/{domain}",
37
+ "inputSchema": {
38
+ "type": "object",
39
+ "properties": {
40
+ "domain": {
41
+ "type": "string",
42
+ "description": "Domain name"
43
+ }
44
+ },
45
+ "required": [
46
+ "domain"
47
+ ]
48
+ },
49
+ "security": [
50
+ {
51
+ "apiToken": []
52
+ }
53
+ ],
54
+ "group": "dns"
55
+ },
56
+ {
57
+ "name": "DNS_restoreDNSSnapshotV1",
58
+ "description": "Restore DNS zone to the selected snapshot.\n\nUse this endpoint to revert domain DNS to a previous configuration.",
59
+ "method": "POST",
60
+ "path": "/api/dns/v1/snapshots/{domain}/{snapshotId}/restore",
61
+ "inputSchema": {
62
+ "type": "object",
63
+ "properties": {
64
+ "domain": {
65
+ "type": "string",
66
+ "description": "Domain name"
67
+ },
68
+ "snapshotId": {
69
+ "type": "integer",
70
+ "description": "Snapshot ID"
71
+ }
72
+ },
73
+ "required": [
74
+ "domain",
75
+ "snapshotId"
76
+ ]
77
+ },
78
+ "security": [
79
+ {
80
+ "apiToken": []
81
+ }
82
+ ],
83
+ "group": "dns"
84
+ },
85
+ {
86
+ "name": "DNS_getDNSRecordsV1",
87
+ "description": "Retrieve DNS zone records for a specific domain.\n\nUse this endpoint to view current DNS configuration for domain management.",
88
+ "method": "GET",
89
+ "path": "/api/dns/v1/zones/{domain}",
90
+ "inputSchema": {
91
+ "type": "object",
92
+ "properties": {
93
+ "domain": {
94
+ "type": "string",
95
+ "description": "Domain name"
96
+ }
97
+ },
98
+ "required": [
99
+ "domain"
100
+ ]
101
+ },
102
+ "security": [
103
+ {
104
+ "apiToken": []
105
+ }
106
+ ],
107
+ "group": "dns"
108
+ },
109
+ {
110
+ "name": "DNS_updateDNSRecordsV1",
111
+ "description": "Update DNS records for the selected domain.\n\nUsing `overwrite = true` will replace existing records with the provided ones. \nOtherwise existing records will be updated and new records will be added.\n\nUse this endpoint to modify domain DNS configuration.",
112
+ "method": "PUT",
113
+ "path": "/api/dns/v1/zones/{domain}",
114
+ "inputSchema": {
115
+ "type": "object",
116
+ "properties": {
117
+ "domain": {
118
+ "type": "string",
119
+ "description": "Domain name"
120
+ },
121
+ "overwrite": {
122
+ "type": "boolean",
123
+ "description": "If `true`, resource records (RRs) matching name and type will be deleted and new RRs will be created,\notherwise resource records' ttl's are updated and new records are appended.\nIf no matching RRs are found, they are created."
124
+ },
125
+ "zone": {
126
+ "type": "array",
127
+ "description": "zone parameter",
128
+ "items": {
129
+ "type": "object",
130
+ "description": "zone parameter",
131
+ "properties": {
132
+ "name": {
133
+ "type": "string",
134
+ "description": "Name of the record (use `@` for wildcard name)"
135
+ },
136
+ "records": {
137
+ "type": "array",
138
+ "description": "Records assigned to the name",
139
+ "items": {
140
+ "type": "object",
141
+ "description": "records parameter",
142
+ "properties": {
143
+ "content": {
144
+ "type": "string",
145
+ "description": "Content of the name record"
146
+ }
147
+ },
148
+ "required": [
149
+ "content"
150
+ ]
151
+ }
152
+ },
153
+ "ttl": {
154
+ "type": "integer",
155
+ "description": "TTL (Time-To-Live) of the record"
156
+ },
157
+ "type": {
158
+ "type": "string",
159
+ "description": "Type of the record",
160
+ "enum": [
161
+ "A",
162
+ "AAAA",
163
+ "CNAME",
164
+ "ALIAS",
165
+ "MX",
166
+ "TXT",
167
+ "NS",
168
+ "SOA",
169
+ "SRV",
170
+ "CAA"
171
+ ]
172
+ }
173
+ },
174
+ "required": [
175
+ "name",
176
+ "records",
177
+ "type"
178
+ ]
179
+ }
180
+ }
181
+ },
182
+ "required": [
183
+ "domain",
184
+ "zone"
185
+ ]
186
+ },
187
+ "security": [
188
+ {
189
+ "apiToken": []
190
+ }
191
+ ],
192
+ "group": "dns"
193
+ },
194
+ {
195
+ "name": "DNS_deleteDNSRecordsV1",
196
+ "description": "Delete DNS records for the selected domain.\n\nTo filter which records to delete, add the `name` of the record and `type` to the filter. \nMultiple filters can be provided with single request.\n\nIf you have multiple records with the same name and type, and you want to delete only part of them,\nrefer to the `Update zone records` endpoint.\n\nUse this endpoint to remove specific DNS records from domains.",
197
+ "method": "DELETE",
198
+ "path": "/api/dns/v1/zones/{domain}",
199
+ "inputSchema": {
200
+ "type": "object",
201
+ "properties": {
202
+ "domain": {
203
+ "type": "string",
204
+ "description": "Domain name"
205
+ }
206
+ },
207
+ "required": [
208
+ "domain"
209
+ ]
210
+ },
211
+ "security": [
212
+ {
213
+ "apiToken": []
214
+ }
215
+ ],
216
+ "group": "dns"
217
+ },
218
+ {
219
+ "name": "DNS_resetDNSRecordsV1",
220
+ "description": "Reset DNS zone to the default records.\n\nUse this endpoint to restore domain DNS to original configuration.",
221
+ "method": "POST",
222
+ "path": "/api/dns/v1/zones/{domain}/reset",
223
+ "inputSchema": {
224
+ "type": "object",
225
+ "properties": {
226
+ "domain": {
227
+ "type": "string",
228
+ "description": "Domain name"
229
+ },
230
+ "sync": {
231
+ "type": "boolean",
232
+ "description": "Determines if operation should be run synchronously"
233
+ },
234
+ "reset_email_records": {
235
+ "type": "boolean",
236
+ "description": "Determines if email records should be reset"
237
+ },
238
+ "whitelisted_record_types": {
239
+ "type": "array",
240
+ "description": "Specifies which record types to not reset",
241
+ "items": {
242
+ "type": "string",
243
+ "description": "whitelisted_record_types parameter"
244
+ }
245
+ }
246
+ },
247
+ "required": [
248
+ "domain"
249
+ ]
250
+ },
251
+ "security": [
252
+ {
253
+ "apiToken": []
254
+ }
255
+ ],
256
+ "group": "dns"
257
+ },
258
+ {
259
+ "name": "DNS_validateDNSRecordsV1",
260
+ "description": "Validate DNS records prior to update for the selected domain.\n\nIf the validation is successful, the response will contain `200 Success` code.\nIf there is validation error, the response will fail with `422 Validation error` code.\n\nUse this endpoint to verify DNS record validity before applying changes.",
261
+ "method": "POST",
262
+ "path": "/api/dns/v1/zones/{domain}/validate",
263
+ "inputSchema": {
264
+ "type": "object",
265
+ "properties": {
266
+ "domain": {
267
+ "type": "string",
268
+ "description": "Domain name"
269
+ },
270
+ "overwrite": {
271
+ "type": "boolean",
272
+ "description": "If `true`, resource records (RRs) matching name and type will be deleted and new RRs will be created,\notherwise resource records' ttl's are updated and new records are appended.\nIf no matching RRs are found, they are created."
273
+ },
274
+ "zone": {
275
+ "type": "array",
276
+ "description": "zone parameter",
277
+ "items": {
278
+ "type": "object",
279
+ "description": "zone parameter",
280
+ "properties": {
281
+ "name": {
282
+ "type": "string",
283
+ "description": "Name of the record (use `@` for wildcard name)"
284
+ },
285
+ "records": {
286
+ "type": "array",
287
+ "description": "Records assigned to the name",
288
+ "items": {
289
+ "type": "object",
290
+ "description": "records parameter",
291
+ "properties": {
292
+ "content": {
293
+ "type": "string",
294
+ "description": "Content of the name record"
295
+ }
296
+ },
297
+ "required": [
298
+ "content"
299
+ ]
300
+ }
301
+ },
302
+ "ttl": {
303
+ "type": "integer",
304
+ "description": "TTL (Time-To-Live) of the record"
305
+ },
306
+ "type": {
307
+ "type": "string",
308
+ "description": "Type of the record",
309
+ "enum": [
310
+ "A",
311
+ "AAAA",
312
+ "CNAME",
313
+ "ALIAS",
314
+ "MX",
315
+ "TXT",
316
+ "NS",
317
+ "SOA",
318
+ "SRV",
319
+ "CAA"
320
+ ]
321
+ }
322
+ },
323
+ "required": [
324
+ "name",
325
+ "records",
326
+ "type"
327
+ ]
328
+ }
329
+ }
330
+ },
331
+ "required": [
332
+ "domain",
333
+ "zone"
334
+ ]
335
+ },
336
+ "security": [
337
+ {
338
+ "apiToken": []
339
+ }
340
+ ],
341
+ "group": "dns"
342
+ }
343
+ ];