hostinger-api-mcp 1.30.0 → 1.31.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.
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/mail.js';
5
5
 
6
- startServer({ name: 'hostinger-mail-mcp', version: '1.30.0', tools });
6
+ startServer({ name: 'hostinger-mail-mcp', version: '1.31.0', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/mail.js';
5
5
 
6
- startServer({ name: 'hostinger-mail-mcp', version: '1.30.0', tools });
6
+ startServer({ name: 'hostinger-mail-mcp', version: '1.31.0', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/reach.js';
5
5
 
6
- startServer({ name: 'hostinger-reach-mcp', version: '1.30.0', tools });
6
+ startServer({ name: 'hostinger-reach-mcp', version: '1.31.0', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/reach.js';
5
5
 
6
- startServer({ name: 'hostinger-reach-mcp', version: '1.30.0', tools });
6
+ startServer({ name: 'hostinger-reach-mcp', version: '1.31.0', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/vps.js';
5
5
 
6
- startServer({ name: 'hostinger-vps-mcp', version: '1.30.0', tools });
6
+ startServer({ name: 'hostinger-vps-mcp', version: '1.31.0', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/vps.js';
5
5
 
6
- startServer({ name: 'hostinger-vps-mcp', version: '1.30.0', tools });
6
+ startServer({ name: 'hostinger-vps-mcp', version: '1.31.0', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/wordpress.js';
5
5
 
6
- startServer({ name: 'hostinger-wordpress-mcp', version: '1.30.0', tools });
6
+ startServer({ name: 'hostinger-wordpress-mcp', version: '1.31.0', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/wordpress.js';
5
5
 
6
- startServer({ name: 'hostinger-wordpress-mcp', version: '1.30.0', tools });
6
+ startServer({ name: 'hostinger-wordpress-mcp', version: '1.31.0', tools });
package/types.d.ts CHANGED
@@ -4182,6 +4182,10 @@ requests are rate limited upstream.
4182
4182
  * Delete a contact with the specified UUID.
4183
4183
 
4184
4184
  This endpoint permanently removes a contact from the email marketing system.
4185
+
4186
+ **Deprecated.** This endpoint cannot target a profile, so it always falls back to the
4187
+ client's default profile and cannot delete contacts of any other profile. Use
4188
+ `DELETE /api/reach/v1/profiles/{profileUuid}/contacts/{contactUuid}` instead.
4185
4189
  */
4186
4190
  "reach_deleteAContactV1": {
4187
4191
  params: {
@@ -4193,6 +4197,100 @@ This endpoint permanently removes a contact from the email marketing system.
4193
4197
  response: any; // Response structure will depend on the API
4194
4198
  };
4195
4199
 
4200
+ /**
4201
+ * Delete a custom contact field.
4202
+
4203
+ Every value contacts hold for the field is deleted with it, and for the choice types so
4204
+ are its options. The contacts themselves are not affected.
4205
+ */
4206
+ "reach_deleteAContactFieldV1": {
4207
+ params: {
4208
+ /**
4209
+ * Profile uuid parameter
4210
+ */
4211
+ profileUuid: string;
4212
+ /**
4213
+ * Contact field uuid parameter
4214
+ */
4215
+ fieldUuid: string;
4216
+ };
4217
+ response: any; // Response structure will depend on the API
4218
+ };
4219
+
4220
+ /**
4221
+ * Rename a custom contact field and, for the choice types, replace its option set.
4222
+
4223
+ Options carrying a uuid are kept and relabelled, options without one are created, and any
4224
+ existing option left out of the list is deleted along with the values contacts hold for
4225
+ it. The field type and slug cannot be changed.
4226
+ */
4227
+ "reach_updateAContactFieldV1": {
4228
+ params: {
4229
+ /**
4230
+ * Profile uuid parameter
4231
+ */
4232
+ profileUuid: string;
4233
+ /**
4234
+ * Contact field uuid parameter
4235
+ */
4236
+ fieldUuid: string;
4237
+ /**
4238
+ * label parameter
4239
+ */
4240
+ label: string;
4241
+ /**
4242
+ * Replaces the option set when provided. Entries carrying a uuid are kept and relabelled, entries without one are created, and any existing option missing from the list is deleted along with the values contacts hold for it.
4243
+ */
4244
+ options?: array;
4245
+ };
4246
+ response: any; // Response structure will depend on the API
4247
+ };
4248
+
4249
+ /**
4250
+ * Get the custom contact fields defined in a profile.
4251
+
4252
+ Custom fields let you store your own attributes on contacts. The returned uuids are what
4253
+ you pass to the contact update endpoint to set values, and choice fields also list the
4254
+ options available to pick from.
4255
+ */
4256
+ "reach_listContactFieldsV1": {
4257
+ params: {
4258
+ /**
4259
+ * Profile uuid parameter
4260
+ */
4261
+ profileUuid: string;
4262
+ };
4263
+ response: any; // Response structure will depend on the API
4264
+ };
4265
+
4266
+ /**
4267
+ * Define a new custom contact field in a profile.
4268
+
4269
+ The `slug` is derived from the label and, like the field type, cannot be changed later.
4270
+ Use the returned uuid to set values on contacts.
4271
+ */
4272
+ "reach_createAContactFieldV1": {
4273
+ params: {
4274
+ /**
4275
+ * Profile uuid parameter
4276
+ */
4277
+ profileUuid: string;
4278
+ /**
4279
+ * Immutable once the field exists
4280
+ */
4281
+ type: string;
4282
+ /**
4283
+ * label parameter
4284
+ */
4285
+ label: string;
4286
+ /**
4287
+ * Required for single_choice and multi_choice, ignored for the scalar types. Labels must be unique regardless of casing.
4288
+ */
4289
+ options?: array;
4290
+ };
4291
+ response: any; // Response structure will depend on the API
4292
+ };
4293
+
4196
4294
  /**
4197
4295
  * Get a list of all contact groups.
4198
4296
 
@@ -4210,6 +4308,11 @@ This endpoint returns a list of contact groups that can be used to organize cont
4210
4308
 
4211
4309
  This endpoint returns a paginated list of contacts with their basic information.
4212
4310
  You can filter contacts by group UUID and subscription status.
4311
+
4312
+ **Deprecated.** This endpoint cannot target a profile, so it always falls back to the
4313
+ client's default profile and cannot list contacts of any other profile. Use
4314
+ `GET /api/reach/v1/profiles/{profileUuid}/contacts` instead, which also replaces the
4315
+ group filter with a tag filter.
4213
4316
  */
4214
4317
  "reach_listContactsV1": {
4215
4318
  params: {
@@ -4263,6 +4366,201 @@ the contact will be created with a pending status and a confirmation email will
4263
4366
  response: any; // Response structure will depend on the API
4264
4367
  };
4265
4368
 
4369
+ /**
4370
+ * Get the full details of a single contact.
4371
+
4372
+ Alongside the contact's own attributes this returns the tags assigned to it and the
4373
+ values it holds for the profile's custom contact fields.
4374
+ */
4375
+ "reach_getContactDetailsV1": {
4376
+ params: {
4377
+ /**
4378
+ * Profile uuid parameter
4379
+ */
4380
+ profileUuid: string;
4381
+ /**
4382
+ * Contact uuid parameter
4383
+ */
4384
+ contactUuid: string;
4385
+ };
4386
+ response: any; // Response structure will depend on the API
4387
+ };
4388
+
4389
+ /**
4390
+ * Permanently delete a contact from a profile.
4391
+
4392
+ The contact is removed together with its custom field values and tag assignments.
4393
+ */
4394
+ "reach_deleteAProfileContactV1": {
4395
+ params: {
4396
+ /**
4397
+ * Profile uuid parameter
4398
+ */
4399
+ profileUuid: string;
4400
+ /**
4401
+ * Contact uuid parameter
4402
+ */
4403
+ contactUuid: string;
4404
+ };
4405
+ response: any; // Response structure will depend on the API
4406
+ };
4407
+
4408
+ /**
4409
+ * Update a contact's attributes and custom field values.
4410
+
4411
+ Only the properties present in the request body are changed, so a partial body is enough
4412
+ to change a single attribute. Sending a property as `null` clears it.
4413
+
4414
+ The response carries the contact's core attributes. Read back its tags, custom field
4415
+ values, source and note with `GET /api/reach/v1/profiles/{profileUuid}/contacts/{contactUuid}`.
4416
+ */
4417
+ "reach_updateAContactV1": {
4418
+ params: {
4419
+ /**
4420
+ * Profile uuid parameter
4421
+ */
4422
+ profileUuid: string;
4423
+ /**
4424
+ * Contact uuid parameter
4425
+ */
4426
+ contactUuid: string;
4427
+ /**
4428
+ * email parameter
4429
+ */
4430
+ email?: string;
4431
+ /**
4432
+ * name parameter
4433
+ */
4434
+ name?: string;
4435
+ /**
4436
+ * surname parameter
4437
+ */
4438
+ surname?: string;
4439
+ /**
4440
+ * Phone number in E.164 format (leading "+" then 7-15 digits)
4441
+ */
4442
+ phone?: string;
4443
+ /**
4444
+ * subscription_status parameter
4445
+ */
4446
+ subscription_status?: string;
4447
+ /**
4448
+ * note parameter
4449
+ */
4450
+ note?: string;
4451
+ /**
4452
+ * Set custom field values. Omit to leave untouched, send an empty array to clear them all.
4453
+ */
4454
+ fields?: array;
4455
+ };
4456
+ response: any; // Response structure will depend on the API
4457
+ };
4458
+
4459
+ /**
4460
+ * Create many contacts in a profile in a single call.
4461
+
4462
+ The contacts are imported in the background, so a success response means the import was
4463
+ accepted rather than finished. Contacts whose email already exists in the profile are
4464
+ left as they are. If double opt-in is enabled, new contacts start off pending and are
4465
+ sent a confirmation email.
4466
+ */
4467
+ "reach_createContactsInBulkV1": {
4468
+ params: {
4469
+ /**
4470
+ * Profile uuid parameter
4471
+ */
4472
+ profileUuid: string;
4473
+ /**
4474
+ * contacts parameter
4475
+ */
4476
+ contacts: array;
4477
+ /**
4478
+ * Existing tags to attach to every created contact
4479
+ */
4480
+ tag_uuids?: array;
4481
+ /**
4482
+ * Note applied to every created contact
4483
+ */
4484
+ note?: string;
4485
+ };
4486
+ response: any; // Response structure will depend on the API
4487
+ };
4488
+
4489
+ /**
4490
+ * Get a paginated list of contacts belonging to a profile.
4491
+
4492
+ Contacts can be filtered by subscription status, by tag, and by an email search term.
4493
+ The `meta.total` field of the response is the number of contacts matching the filters,
4494
+ so calling this endpoint without filters gives the profile's total contact count.
4495
+ */
4496
+ "reach_listProfileContactsV1": {
4497
+ params: {
4498
+ /**
4499
+ * Profile uuid parameter
4500
+ */
4501
+ profileUuid: string;
4502
+ /**
4503
+ * Filter contacts by subscription status
4504
+ */
4505
+ subscription_status?: string;
4506
+ /**
4507
+ * Filter contacts by tag UUID
4508
+ */
4509
+ tag_uuid?: string;
4510
+ /**
4511
+ * Search contacts by email
4512
+ */
4513
+ search?: string;
4514
+ /**
4515
+ * Page number
4516
+ */
4517
+ page?: number;
4518
+ /**
4519
+ * Number of items per page
4520
+ */
4521
+ per_page?: number;
4522
+ };
4523
+ response: any; // Response structure will depend on the API
4524
+ };
4525
+
4526
+ /**
4527
+ * Create a new contact in the email marketing system.
4528
+
4529
+ This endpoint allows you to create a new contact with basic information like name, email, and surname.
4530
+
4531
+ If double opt-in is enabled, the contact will be created with a pending status
4532
+ and a confirmation email will be sent.
4533
+ */
4534
+ "reach_createNewContactsV1": {
4535
+ params: {
4536
+ /**
4537
+ * Profile uuid parameter
4538
+ */
4539
+ profileUuid: string;
4540
+ /**
4541
+ * email parameter
4542
+ */
4543
+ email: string;
4544
+ /**
4545
+ * name parameter
4546
+ */
4547
+ name?: string;
4548
+ /**
4549
+ * surname parameter
4550
+ */
4551
+ surname?: string;
4552
+ /**
4553
+ * Phone number in E.164 format (leading "+" then 7-15 digits)
4554
+ */
4555
+ phone?: string;
4556
+ /**
4557
+ * note parameter
4558
+ */
4559
+ note?: string;
4560
+ };
4561
+ response: any; // Response structure will depend on the API
4562
+ };
4563
+
4266
4564
  /**
4267
4565
  * Get a list of all contact segments.
4268
4566
 
@@ -4367,44 +4665,6 @@ Segments are used to organize and group contacts based on specific criteria.
4367
4665
  response: any; // Response structure will depend on the API
4368
4666
  };
4369
4667
 
4370
- /**
4371
- * Create a new contact in the email marketing system.
4372
-
4373
- This endpoint allows you to create a new contact with basic information like name, email, and surname.
4374
-
4375
- If double opt-in is enabled, the contact will be created with a pending status
4376
- and a confirmation email will be sent.
4377
- */
4378
- "reach_createNewContactsV1": {
4379
- params: {
4380
- /**
4381
- * Profile uuid parameter
4382
- */
4383
- profileUuid: string;
4384
- /**
4385
- * email parameter
4386
- */
4387
- email: string;
4388
- /**
4389
- * name parameter
4390
- */
4391
- name?: string;
4392
- /**
4393
- * surname parameter
4394
- */
4395
- surname?: string;
4396
- /**
4397
- * Phone number in E.164 format (leading "+" then 7-15 digits)
4398
- */
4399
- phone?: string;
4400
- /**
4401
- * note parameter
4402
- */
4403
- note?: string;
4404
- };
4405
- response: any; // Response structure will depend on the API
4406
- };
4407
-
4408
4668
  /**
4409
4669
  * Retrieve the DNS configuration status for a profile's domain.
4410
4670