shipmail-mcp 0.5.7 → 0.5.8

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/dist/index.js CHANGED
@@ -902,6 +902,7 @@ var NEWSLETTER_DOMAIN_STATUSES = [
902
902
  ];
903
903
  var NEWSLETTER_DOMAIN_RECORD_STATUSES = ["pending", "verified", "failed"];
904
904
  var NEWSLETTER_ARCHIVE_VISIBILITIES = ["private", "public"];
905
+ var NEWSLETTER_STYLING_MODES = ["styled", "plain"];
905
906
  var NEWSLETTER_PREFLIGHT_STATUSES = ["not_run", "passed", "warning", "failed"];
906
907
  var NEWSLETTER_PREFLIGHT_ITEM_STATUSES = ["pass", "warn", "fail"];
907
908
  var NEWSLETTER_TEST_SEND_STATUSES = ["pending", "sent", "failed"];
@@ -2396,6 +2397,9 @@ var newsletterSchema = z.object({
2396
2397
  body_text: z.string().nullable(),
2397
2398
  status: z.enum(NEWSLETTER_STATUSES),
2398
2399
  archive_visibility: z.enum(NEWSLETTER_ARCHIVE_VISIBILITIES),
2400
+ styling_mode: z.enum(NEWSLETTER_STYLING_MODES).describe(
2401
+ "styled applies Shipmail's email theme. plain sends your HTML without injected styles, width, or centering, so the reader's email client styles it."
2402
+ ),
2399
2403
  preflight_status: z.enum(NEWSLETTER_PREFLIGHT_STATUSES),
2400
2404
  preflight_results: z.record(z.string(), z.unknown()),
2401
2405
  send_window_hours: z.number().int(),
@@ -2633,7 +2637,10 @@ var newsletterDraftFieldsInputSchema = {
2633
2637
  body_text: z.string().max(25e4).nullish(),
2634
2638
  blocks: z.array(newsletterBlockInputSchema).min(1).max(200).optional(),
2635
2639
  send_window_hours: z.number().int().min(1).max(24).optional(),
2636
- archive_visibility: z.enum(NEWSLETTER_ARCHIVE_VISIBILITIES).optional()
2640
+ archive_visibility: z.enum(NEWSLETTER_ARCHIVE_VISIBILITIES).optional(),
2641
+ styling_mode: z.enum(NEWSLETTER_STYLING_MODES).optional().describe(
2642
+ "styled applies Shipmail's email theme. plain sends your HTML without injected styles, width, or centering, so the reader's email client styles it."
2643
+ )
2637
2644
  };
2638
2645
  var createNewsletterInputSchema = z.object({
2639
2646
  ...newsletterDraftFieldsInputSchema,
@@ -2684,6 +2691,9 @@ var createNewsletterFromChangelogInputSchema = z.object({
2684
2691
  }).optional(),
2685
2692
  send_window_hours: z.number().int().min(1).max(24).optional(),
2686
2693
  archive_visibility: z.enum(NEWSLETTER_ARCHIVE_VISIBILITIES).optional(),
2694
+ styling_mode: z.enum(NEWSLETTER_STYLING_MODES).optional().describe(
2695
+ "styled applies Shipmail's email theme. plain sends your HTML without injected styles, width, or centering, so the reader's email client styles it."
2696
+ ),
2687
2697
  idempotency_key: idempotencyKeySchema
2688
2698
  });
2689
2699
  var updateNewsletterInputSchema = z.object({
@@ -2699,9 +2709,10 @@ var updateNewsletterInputSchema = z.object({
2699
2709
  blocks: newsletterDraftFieldsInputSchema.blocks,
2700
2710
  send_window_hours: newsletterDraftFieldsInputSchema.send_window_hours,
2701
2711
  archive_visibility: newsletterDraftFieldsInputSchema.archive_visibility,
2712
+ styling_mode: newsletterDraftFieldsInputSchema.styling_mode,
2702
2713
  idempotency_key: idempotencyKeySchema
2703
2714
  }).refine(
2704
- (value) => value.audience_id !== void 0 || value.newsletter_domain_id !== void 0 || value.name !== void 0 || value.subject !== void 0 || value.preview_text !== void 0 || value.from_name !== void 0 || value.body_html !== void 0 || value.body_text !== void 0 || value.blocks !== void 0 || value.send_window_hours !== void 0 || value.archive_visibility !== void 0,
2715
+ (value) => value.audience_id !== void 0 || value.newsletter_domain_id !== void 0 || value.name !== void 0 || value.subject !== void 0 || value.preview_text !== void 0 || value.from_name !== void 0 || value.body_html !== void 0 || value.body_text !== void 0 || value.blocks !== void 0 || value.send_window_hours !== void 0 || value.archive_visibility !== void 0 || value.styling_mode !== void 0,
2705
2716
  {
2706
2717
  message: "Provide at least one newsletter field to update."
2707
2718
  }
@@ -5993,7 +6004,7 @@ function registerTools(rawServer, client, allowedTools, grantedOrganizations = [
5993
6004
  "shipmail_create_newsletter",
5994
6005
  {
5995
6006
  title: "Create Newsletter",
5996
- description: "Create a newsletter draft for an audience and sending domain. Prefer blocks for body content; Shipmail renders them to email-safe HTML and text. Provide at least one of blocks, body_html, or body_text. Drafts must pass preflight before scheduling.",
6007
+ description: "Create a newsletter draft for an audience and sending domain. Prefer blocks for body content; Shipmail renders them to email-safe HTML and text. Provide at least one of blocks, body_html, or body_text. Drafts must pass preflight before scheduling. styled applies Shipmail's email theme. plain sends your HTML without injected styles, width, or centering, so the reader's email client styles it.",
5997
6008
  inputSchema: createNewsletterInputSchema,
5998
6009
  outputSchema: newsletterOutputSchema,
5999
6010
  annotations: {
@@ -6016,7 +6027,7 @@ function registerTools(rawServer, client, allowedTools, grantedOrganizations = [
6016
6027
  "shipmail_create_newsletter_from_changelog",
6017
6028
  {
6018
6029
  title: "Create Newsletter From Changelog",
6019
- description: "Create a newsletter draft from changelog entries, attached media, tone, and an optional final CTA. ShipMail renders the entries into email-safe blocks.",
6030
+ description: "Create a newsletter draft from changelog entries, attached media, tone, and an optional final CTA. ShipMail renders the entries into email-safe blocks. styled applies Shipmail's email theme. plain sends your HTML without injected styles, width, or centering, so the reader's email client styles it.",
6020
6031
  inputSchema: createNewsletterFromChangelogInputSchema,
6021
6032
  outputSchema: newsletterOutputSchema,
6022
6033
  annotations: {
@@ -6039,7 +6050,7 @@ function registerTools(rawServer, client, allowedTools, grantedOrganizations = [
6039
6050
  "shipmail_update_newsletter",
6040
6051
  {
6041
6052
  title: "Update Newsletter",
6042
- description: "Update an editable newsletter draft or future scheduled newsletter. Prefer blocks for body content. When blocks already exist, body_text alone updates the plain-text override. Sending and sent newsletters cannot be edited. A concurrent save returns conflict (409); read the latest newsletter before retrying.",
6053
+ description: "Update an editable newsletter draft or future scheduled newsletter. Prefer blocks for body content. When blocks already exist, body_text alone updates the plain-text override. Sending and sent newsletters cannot be edited. A concurrent save returns conflict (409); read the latest newsletter before retrying. styled applies Shipmail's email theme. plain sends your HTML without injected styles, width, or centering, so the reader's email client styles it.",
6043
6054
  inputSchema: updateNewsletterInputSchema,
6044
6055
  outputSchema: newsletterOutputSchema,
6045
6056
  annotations: {
@@ -6065,7 +6076,8 @@ function registerTools(rawServer, client, allowedTools, grantedOrganizations = [
6065
6076
  ...rest.body_text !== void 0 ? { body_text: rest.body_text } : {},
6066
6077
  ...rest.blocks !== void 0 ? { blocks: rest.blocks } : {},
6067
6078
  ...rest.send_window_hours !== void 0 ? { send_window_hours: rest.send_window_hours } : {},
6068
- ...rest.archive_visibility !== void 0 ? { archive_visibility: rest.archive_visibility } : {}
6079
+ ...rest.archive_visibility !== void 0 ? { archive_visibility: rest.archive_visibility } : {},
6080
+ ...rest.styling_mode !== void 0 ? { styling_mode: rest.styling_mode } : {}
6069
6081
  },
6070
6082
  mutationOptions(args)
6071
6083
  )
@@ -6903,7 +6915,7 @@ function registerTools(rawServer, client, allowedTools, grantedOrganizations = [
6903
6915
  }
6904
6916
 
6905
6917
  // src/version.ts
6906
- var VERSION = "0.5.7";
6918
+ var VERSION = "0.5.8";
6907
6919
 
6908
6920
  // src/server.ts
6909
6921
  var INSTRUCTIONS = `ShipMail MCP exposes the business email and calendar tools authorized by the connection's current ShipMail permissions.
package/dist/server.js CHANGED
@@ -805,6 +805,7 @@ var NEWSLETTER_DOMAIN_STATUSES = [
805
805
  ];
806
806
  var NEWSLETTER_DOMAIN_RECORD_STATUSES = ["pending", "verified", "failed"];
807
807
  var NEWSLETTER_ARCHIVE_VISIBILITIES = ["private", "public"];
808
+ var NEWSLETTER_STYLING_MODES = ["styled", "plain"];
808
809
  var NEWSLETTER_PREFLIGHT_STATUSES = ["not_run", "passed", "warning", "failed"];
809
810
  var NEWSLETTER_PREFLIGHT_ITEM_STATUSES = ["pass", "warn", "fail"];
810
811
  var NEWSLETTER_TEST_SEND_STATUSES = ["pending", "sent", "failed"];
@@ -2299,6 +2300,9 @@ var newsletterSchema = z.object({
2299
2300
  body_text: z.string().nullable(),
2300
2301
  status: z.enum(NEWSLETTER_STATUSES),
2301
2302
  archive_visibility: z.enum(NEWSLETTER_ARCHIVE_VISIBILITIES),
2303
+ styling_mode: z.enum(NEWSLETTER_STYLING_MODES).describe(
2304
+ "styled applies Shipmail's email theme. plain sends your HTML without injected styles, width, or centering, so the reader's email client styles it."
2305
+ ),
2302
2306
  preflight_status: z.enum(NEWSLETTER_PREFLIGHT_STATUSES),
2303
2307
  preflight_results: z.record(z.string(), z.unknown()),
2304
2308
  send_window_hours: z.number().int(),
@@ -2536,7 +2540,10 @@ var newsletterDraftFieldsInputSchema = {
2536
2540
  body_text: z.string().max(25e4).nullish(),
2537
2541
  blocks: z.array(newsletterBlockInputSchema).min(1).max(200).optional(),
2538
2542
  send_window_hours: z.number().int().min(1).max(24).optional(),
2539
- archive_visibility: z.enum(NEWSLETTER_ARCHIVE_VISIBILITIES).optional()
2543
+ archive_visibility: z.enum(NEWSLETTER_ARCHIVE_VISIBILITIES).optional(),
2544
+ styling_mode: z.enum(NEWSLETTER_STYLING_MODES).optional().describe(
2545
+ "styled applies Shipmail's email theme. plain sends your HTML without injected styles, width, or centering, so the reader's email client styles it."
2546
+ )
2540
2547
  };
2541
2548
  var createNewsletterInputSchema = z.object({
2542
2549
  ...newsletterDraftFieldsInputSchema,
@@ -2587,6 +2594,9 @@ var createNewsletterFromChangelogInputSchema = z.object({
2587
2594
  }).optional(),
2588
2595
  send_window_hours: z.number().int().min(1).max(24).optional(),
2589
2596
  archive_visibility: z.enum(NEWSLETTER_ARCHIVE_VISIBILITIES).optional(),
2597
+ styling_mode: z.enum(NEWSLETTER_STYLING_MODES).optional().describe(
2598
+ "styled applies Shipmail's email theme. plain sends your HTML without injected styles, width, or centering, so the reader's email client styles it."
2599
+ ),
2590
2600
  idempotency_key: idempotencyKeySchema
2591
2601
  });
2592
2602
  var updateNewsletterInputSchema = z.object({
@@ -2602,9 +2612,10 @@ var updateNewsletterInputSchema = z.object({
2602
2612
  blocks: newsletterDraftFieldsInputSchema.blocks,
2603
2613
  send_window_hours: newsletterDraftFieldsInputSchema.send_window_hours,
2604
2614
  archive_visibility: newsletterDraftFieldsInputSchema.archive_visibility,
2615
+ styling_mode: newsletterDraftFieldsInputSchema.styling_mode,
2605
2616
  idempotency_key: idempotencyKeySchema
2606
2617
  }).refine(
2607
- (value) => value.audience_id !== void 0 || value.newsletter_domain_id !== void 0 || value.name !== void 0 || value.subject !== void 0 || value.preview_text !== void 0 || value.from_name !== void 0 || value.body_html !== void 0 || value.body_text !== void 0 || value.blocks !== void 0 || value.send_window_hours !== void 0 || value.archive_visibility !== void 0,
2618
+ (value) => value.audience_id !== void 0 || value.newsletter_domain_id !== void 0 || value.name !== void 0 || value.subject !== void 0 || value.preview_text !== void 0 || value.from_name !== void 0 || value.body_html !== void 0 || value.body_text !== void 0 || value.blocks !== void 0 || value.send_window_hours !== void 0 || value.archive_visibility !== void 0 || value.styling_mode !== void 0,
2608
2619
  {
2609
2620
  message: "Provide at least one newsletter field to update."
2610
2621
  }
@@ -5896,7 +5907,7 @@ function registerTools(rawServer, client, allowedTools, grantedOrganizations = [
5896
5907
  "shipmail_create_newsletter",
5897
5908
  {
5898
5909
  title: "Create Newsletter",
5899
- description: "Create a newsletter draft for an audience and sending domain. Prefer blocks for body content; Shipmail renders them to email-safe HTML and text. Provide at least one of blocks, body_html, or body_text. Drafts must pass preflight before scheduling.",
5910
+ description: "Create a newsletter draft for an audience and sending domain. Prefer blocks for body content; Shipmail renders them to email-safe HTML and text. Provide at least one of blocks, body_html, or body_text. Drafts must pass preflight before scheduling. styled applies Shipmail's email theme. plain sends your HTML without injected styles, width, or centering, so the reader's email client styles it.",
5900
5911
  inputSchema: createNewsletterInputSchema,
5901
5912
  outputSchema: newsletterOutputSchema,
5902
5913
  annotations: {
@@ -5919,7 +5930,7 @@ function registerTools(rawServer, client, allowedTools, grantedOrganizations = [
5919
5930
  "shipmail_create_newsletter_from_changelog",
5920
5931
  {
5921
5932
  title: "Create Newsletter From Changelog",
5922
- description: "Create a newsletter draft from changelog entries, attached media, tone, and an optional final CTA. ShipMail renders the entries into email-safe blocks.",
5933
+ description: "Create a newsletter draft from changelog entries, attached media, tone, and an optional final CTA. ShipMail renders the entries into email-safe blocks. styled applies Shipmail's email theme. plain sends your HTML without injected styles, width, or centering, so the reader's email client styles it.",
5923
5934
  inputSchema: createNewsletterFromChangelogInputSchema,
5924
5935
  outputSchema: newsletterOutputSchema,
5925
5936
  annotations: {
@@ -5942,7 +5953,7 @@ function registerTools(rawServer, client, allowedTools, grantedOrganizations = [
5942
5953
  "shipmail_update_newsletter",
5943
5954
  {
5944
5955
  title: "Update Newsletter",
5945
- description: "Update an editable newsletter draft or future scheduled newsletter. Prefer blocks for body content. When blocks already exist, body_text alone updates the plain-text override. Sending and sent newsletters cannot be edited. A concurrent save returns conflict (409); read the latest newsletter before retrying.",
5956
+ description: "Update an editable newsletter draft or future scheduled newsletter. Prefer blocks for body content. When blocks already exist, body_text alone updates the plain-text override. Sending and sent newsletters cannot be edited. A concurrent save returns conflict (409); read the latest newsletter before retrying. styled applies Shipmail's email theme. plain sends your HTML without injected styles, width, or centering, so the reader's email client styles it.",
5946
5957
  inputSchema: updateNewsletterInputSchema,
5947
5958
  outputSchema: newsletterOutputSchema,
5948
5959
  annotations: {
@@ -5968,7 +5979,8 @@ function registerTools(rawServer, client, allowedTools, grantedOrganizations = [
5968
5979
  ...rest.body_text !== void 0 ? { body_text: rest.body_text } : {},
5969
5980
  ...rest.blocks !== void 0 ? { blocks: rest.blocks } : {},
5970
5981
  ...rest.send_window_hours !== void 0 ? { send_window_hours: rest.send_window_hours } : {},
5971
- ...rest.archive_visibility !== void 0 ? { archive_visibility: rest.archive_visibility } : {}
5982
+ ...rest.archive_visibility !== void 0 ? { archive_visibility: rest.archive_visibility } : {},
5983
+ ...rest.styling_mode !== void 0 ? { styling_mode: rest.styling_mode } : {}
5972
5984
  },
5973
5985
  mutationOptions(args)
5974
5986
  )
@@ -6806,7 +6818,7 @@ function registerTools(rawServer, client, allowedTools, grantedOrganizations = [
6806
6818
  }
6807
6819
 
6808
6820
  // src/version.ts
6809
- var VERSION = "0.5.7";
6821
+ var VERSION = "0.5.8";
6810
6822
 
6811
6823
  // src/server.ts
6812
6824
  var INSTRUCTIONS = `ShipMail MCP exposes the business email and calendar tools authorized by the connection's current ShipMail permissions.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "shipmail-mcp",
3
- "version": "0.5.7",
3
+ "version": "0.5.8",
4
4
  "mcpName": "io.github.jcoulaud/shipmail-mcp",
5
5
  "description": "Official Model Context Protocol (MCP) server for Shipmail, a business email provider with REST API, webhooks, and custom-domain inboxes for AI agents.",
6
6
  "type": "module",
@@ -59,7 +59,7 @@
59
59
  },
60
60
  "dependencies": {
61
61
  "@modelcontextprotocol/sdk": "1.29.0",
62
- "shipmail": "0.4.3",
62
+ "shipmail": "0.4.4",
63
63
  "zod": "4.4.3"
64
64
  },
65
65
  "devDependencies": {
package/server.json CHANGED
@@ -6,7 +6,7 @@
6
6
  "url": "https://github.com/jcoulaud/shipmail-mcp",
7
7
  "source": "github"
8
8
  },
9
- "version": "0.5.7",
9
+ "version": "0.5.8",
10
10
  "websiteUrl": "https://shipmail.to/docs/mcp",
11
11
  "remotes": [
12
12
  {
@@ -27,7 +27,7 @@
27
27
  "registryType": "npm",
28
28
  "registryBaseUrl": "https://registry.npmjs.org",
29
29
  "identifier": "shipmail-mcp",
30
- "version": "0.5.7",
30
+ "version": "0.5.8",
31
31
  "transport": {
32
32
  "type": "stdio"
33
33
  },
package/smithery.yaml CHANGED
@@ -1,6 +1,6 @@
1
1
  # Smithery configuration file: https://smithery.ai/docs/build/project-config/smithery-yaml
2
2
  name: shipmail-mcp
3
- version: 0.5.7
3
+ version: 0.5.8
4
4
  description: Official Shipmail MCP server for AI-agent custom-domain business email inboxes with REST API and webhooks.
5
5
  author: ShipMail
6
6
  repository: https://github.com/jcoulaud/shipmail-mcp