posterly-mcp-server 0.19.8 → 0.19.10

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.
Files changed (121) hide show
  1. package/README.md +37 -25
  2. package/dist/index.js +76 -73
  3. package/dist/lib/api-client.d.ts +7 -0
  4. package/dist/lib/api-client.js +18 -1
  5. package/dist/lib/format.d.ts +11 -0
  6. package/dist/lib/format.js +51 -0
  7. package/dist/lib/version.d.ts +1 -0
  8. package/dist/lib/version.js +1 -0
  9. package/dist/tools/audit-google-business-profile.js +12 -15
  10. package/dist/tools/create-connect-session.d.ts +4 -0
  11. package/dist/tools/create-connect-session.js +24 -17
  12. package/dist/tools/create-oauth-client.js +1 -7
  13. package/dist/tools/create-post.d.ts +453 -35
  14. package/dist/tools/create-post.js +44 -25
  15. package/dist/tools/create-posts-batch.d.ts +42 -31
  16. package/dist/tools/create-posts-batch.js +27 -25
  17. package/dist/tools/create-signed-upload.js +7 -10
  18. package/dist/tools/create-webhook.js +2 -7
  19. package/dist/tools/delete-google-business-review-reply.d.ts +1 -1
  20. package/dist/tools/delete-google-business-review-reply.js +1 -4
  21. package/dist/tools/delete-oauth-client.js +1 -4
  22. package/dist/tools/delete-post-group.js +1 -5
  23. package/dist/tools/delete-post.d.ts +4 -0
  24. package/dist/tools/delete-post.js +12 -4
  25. package/dist/tools/delete-webhook.js +1 -4
  26. package/dist/tools/disconnect-account.js +5 -7
  27. package/dist/tools/generate-captions.d.ts +2 -2
  28. package/dist/tools/generate-image.d.ts +4 -0
  29. package/dist/tools/generate-image.js +6 -1
  30. package/dist/tools/generate-video.d.ts +3 -0
  31. package/dist/tools/generate-video.js +15 -12
  32. package/dist/tools/get-account-analytics.d.ts +7 -0
  33. package/dist/tools/get-account-analytics.js +116 -54
  34. package/dist/tools/get-agent-signup-info.js +2 -1
  35. package/dist/tools/get-connect-link.d.ts +4 -0
  36. package/dist/tools/get-connect-link.js +14 -28
  37. package/dist/tools/get-connect-session.d.ts +4 -0
  38. package/dist/tools/get-connect-session.js +41 -15
  39. package/dist/tools/get-google-business-review-link.js +6 -6
  40. package/dist/tools/get-mcp-status.d.ts +8 -0
  41. package/dist/tools/get-mcp-status.js +89 -0
  42. package/dist/tools/get-platform-schema.js +16 -23
  43. package/dist/tools/get-post-analytics.d.ts +7 -0
  44. package/dist/tools/get-post-analytics.js +116 -40
  45. package/dist/tools/get-post-missing.js +1 -5
  46. package/dist/tools/get-post.js +16 -16
  47. package/dist/tools/get-video-job.d.ts +2 -2
  48. package/dist/tools/get-video-job.js +11 -28
  49. package/dist/tools/get-video-options.js +15 -21
  50. package/dist/tools/get-x-posting-quota.js +9 -12
  51. package/dist/tools/list-activity.js +18 -13
  52. package/dist/tools/list-google-business-reviews.js +11 -13
  53. package/dist/tools/list-oauth-clients.js +4 -10
  54. package/dist/tools/list-platforms.js +5 -12
  55. package/dist/tools/list-posts.js +13 -11
  56. package/dist/tools/list-webhooks.js +11 -13
  57. package/dist/tools/reply-google-business-review.d.ts +1 -1
  58. package/dist/tools/reply-google-business-review.js +1 -4
  59. package/dist/tools/run-video-function.js +4 -4
  60. package/dist/tools/suggest-google-business-review-reply.js +4 -5
  61. package/dist/tools/test-webhook.js +1 -7
  62. package/dist/tools/trigger-platform-helper.js +1 -5
  63. package/dist/tools/update-oauth-client.js +1 -8
  64. package/dist/tools/update-post-release-id.js +1 -5
  65. package/dist/tools/update-post-status.d.ts +2 -2
  66. package/dist/tools/update-post-status.js +1 -7
  67. package/dist/tools/update-post.d.ts +24 -20
  68. package/dist/tools/update-post.js +5 -1
  69. package/dist/tools/update-webhook.js +1 -7
  70. package/dist/tools/upload-media-from-url.js +9 -7
  71. package/package.json +1 -1
  72. package/src/index.ts +86 -78
  73. package/src/lib/api-client.ts +23 -1
  74. package/src/lib/format.ts +57 -0
  75. package/src/lib/version.ts +1 -0
  76. package/src/tools/audit-google-business-profile.ts +12 -18
  77. package/src/tools/create-connect-session.ts +25 -18
  78. package/src/tools/create-oauth-client.ts +2 -8
  79. package/src/tools/create-post.ts +51 -26
  80. package/src/tools/create-posts-batch.ts +35 -26
  81. package/src/tools/create-signed-upload.ts +7 -10
  82. package/src/tools/create-webhook.ts +2 -7
  83. package/src/tools/delete-google-business-review-reply.ts +1 -4
  84. package/src/tools/delete-oauth-client.ts +1 -4
  85. package/src/tools/delete-post-group.ts +1 -5
  86. package/src/tools/delete-post.ts +13 -5
  87. package/src/tools/delete-webhook.ts +1 -4
  88. package/src/tools/disconnect-account.ts +5 -7
  89. package/src/tools/generate-image.ts +7 -1
  90. package/src/tools/generate-video.ts +15 -12
  91. package/src/tools/get-account-analytics.ts +123 -60
  92. package/src/tools/get-agent-signup-info.ts +2 -1
  93. package/src/tools/get-connect-link.ts +15 -32
  94. package/src/tools/get-connect-session.ts +43 -16
  95. package/src/tools/get-google-business-review-link.ts +6 -6
  96. package/src/tools/get-mcp-status.ts +98 -0
  97. package/src/tools/get-platform-schema.ts +16 -29
  98. package/src/tools/get-post-analytics.ts +130 -55
  99. package/src/tools/get-post-missing.ts +1 -5
  100. package/src/tools/get-post.ts +15 -16
  101. package/src/tools/get-video-job.ts +11 -31
  102. package/src/tools/get-video-options.ts +15 -27
  103. package/src/tools/get-x-posting-quota.ts +9 -12
  104. package/src/tools/list-activity.ts +19 -16
  105. package/src/tools/list-google-business-reviews.ts +12 -16
  106. package/src/tools/list-oauth-clients.ts +4 -13
  107. package/src/tools/list-platforms.ts +5 -15
  108. package/src/tools/list-posts.ts +14 -14
  109. package/src/tools/list-webhooks.ts +11 -16
  110. package/src/tools/reply-google-business-review.ts +1 -4
  111. package/src/tools/run-video-function.ts +4 -4
  112. package/src/tools/suggest-google-business-review-reply.ts +4 -5
  113. package/src/tools/test-webhook.ts +1 -7
  114. package/src/tools/trigger-platform-helper.ts +1 -5
  115. package/src/tools/update-oauth-client.ts +2 -9
  116. package/src/tools/update-post-release-id.ts +1 -5
  117. package/src/tools/update-post-status.ts +1 -7
  118. package/src/tools/update-post.ts +6 -1
  119. package/src/tools/update-webhook.ts +1 -7
  120. package/src/tools/upload-media-from-url.ts +9 -7
  121. package/src/tools/webhook-events.ts +0 -1
package/README.md CHANGED
@@ -4,6 +4,8 @@ Use Posterly from any MCP-compatible AI client.
4
4
 
5
5
  This package gives Claude Desktop, Cursor, Windsurf, Cline, and other local MCP clients a `stdio` server that can:
6
6
 
7
+ - start paid Posterly signup before an API key exists
8
+ - poll signup progress while the user completes checkout and password setup
7
9
  - list connected social accounts
8
10
  - resolve brands/clients into the right accounts
9
11
  - schedule and manage posts
@@ -12,35 +14,39 @@ This package gives Claude Desktop, Cursor, Windsurf, Cline, and other local MCP
12
14
  - generate images
13
15
  - read account and post analytics
14
16
 
15
- Tool results are returned as Markdown-first chat summaries with headings, compact tables, short next-step notes, and occasional status icons. MCP clients may still rephrase the final answer, but the raw tool content is designed to look good directly in chat.
16
-
17
- Posterly also exposes the same toolset over HTTP at [poster.ly/mcp](https://www.poster.ly/mcp), but this npm package is the local `stdio` transport.
17
+ Posterly also exposes the same authenticated toolset over HTTP at [poster.ly/mcp](https://www.poster.ly/mcp), but this npm package is the local `stdio` transport.
18
18
 
19
19
  ## Requirements
20
20
 
21
21
  - Node.js `20+`
22
- - A Posterly account: [poster.ly/signup](https://www.poster.ly/signup)
23
- - The Posterly API add-on enabled: [poster.ly/dashboard/api](https://www.poster.ly/dashboard/api)
24
- - A Posterly API key
25
-
26
- No API key is required for the public signup tools: `get_agent_signup_info`, `start_signup`, and `get_signup_session`.
22
+ - No API key is required for the public setup tools: `get_mcp_status`, `get_agent_signup_info`, `start_signup`, and `get_signup_session`
23
+ - A Posterly account, API add-on, and API key are required for authenticated tools like `whoami`, `list_accounts`, `create_connect_session`, and `create_post`
27
24
 
28
25
  ## Install
29
26
 
30
- You can install globally:
27
+ Recommended: use it via `npx` in your MCP config so your client runs the current server without a global install.
31
28
 
32
- ```bash
33
- npm install -g posterly-mcp-server
29
+ To let an AI agent start signup before a Posterly API key exists, install the server without `POSTERLY_API_KEY`:
30
+
31
+ ```json
32
+ {
33
+ "mcpServers": {
34
+ "posterly": {
35
+ "command": "npx",
36
+ "args": ["-y", "posterly-mcp-server@latest"]
37
+ }
38
+ }
39
+ }
34
40
  ```
35
41
 
36
- Or just use it via `npx` in your MCP config:
42
+ After paid signup is complete and Posterly shows an API key, add `POSTERLY_API_KEY` to unlock the authenticated tools:
37
43
 
38
44
  ```json
39
45
  {
40
46
  "mcpServers": {
41
47
  "posterly": {
42
48
  "command": "npx",
43
- "args": ["-y", "posterly-mcp-server"],
49
+ "args": ["-y", "posterly-mcp-server@latest"],
44
50
  "env": {
45
51
  "POSTERLY_API_KEY": "pst_live_your_key_here"
46
52
  }
@@ -51,12 +57,16 @@ Or just use it via `npx` in your MCP config:
51
57
 
52
58
  ## Quick setup
53
59
 
54
- 1. Sign up at [poster.ly](https://www.poster.ly/signup)
55
- 2. Go to [Dashboard API & MCP](https://www.poster.ly/dashboard/api)
56
- 3. Enable the API add-on
57
- 4. Generate an API key
58
- 5. Paste it into your MCP client config as `POSTERLY_API_KEY`
59
- 6. Restart your AI client
60
+ 1. Add the Posterly MCP server to your AI client.
61
+ 2. If you do not have Posterly yet, ask the AI to call `start_signup`.
62
+ 3. Pay in Stripe Checkout and set your Posterly password in the browser.
63
+ 4. When Posterly shows your API key, add it as `POSTERLY_API_KEY`.
64
+ 5. Restart your AI client.
65
+ 6. Ask the AI to call `get_mcp_status`, then `whoami`, then continue by connecting your first social account.
66
+
67
+ The signup and connect tools return user-facing next steps by default, so agents should report progress in plain language instead of showing raw curl, HTTP payloads, or JSON. Pass `debug: true` to `start_signup`, `get_signup_session`, `get_connect_link`, `create_connect_session`, or `get_connect_session` only when troubleshooting.
68
+
69
+ Post tools return `View in Posterly` dashboard links. After scheduling, listing, reading, or deleting posts, share the returned link with the user. Current-month scheduled posts open in Calendar with the post selected; broader/future post views use Table.
60
70
 
61
71
  ## Example configs
62
72
 
@@ -69,7 +79,7 @@ Add this to your Claude Desktop MCP config:
69
79
  "mcpServers": {
70
80
  "posterly": {
71
81
  "command": "npx",
72
- "args": ["-y", "posterly-mcp-server"],
82
+ "args": ["-y", "posterly-mcp-server@latest"],
73
83
  "env": {
74
84
  "POSTERLY_API_KEY": "pst_live_your_key_here"
75
85
  }
@@ -87,7 +97,7 @@ Add the same server definition to your Cursor MCP settings:
87
97
  "mcpServers": {
88
98
  "posterly": {
89
99
  "command": "npx",
90
- "args": ["-y", "posterly-mcp-server"],
100
+ "args": ["-y", "posterly-mcp-server@latest"],
91
101
  "env": {
92
102
  "POSTERLY_API_KEY": "pst_live_your_key_here"
93
103
  }
@@ -98,15 +108,16 @@ Add the same server definition to your Cursor MCP settings:
98
108
 
99
109
  ## Available tools
100
110
 
101
- `posterly-mcp-server@0.19.8` exposes 55 tools: 3 public signup helpers plus the 52 authenticated API/MCP tools.
111
+ `posterly-mcp-server@0.19.10` exposes 56 tools.
102
112
 
103
- Public signup helpers:
113
+ Public setup tools work before `POSTERLY_API_KEY` exists:
104
114
 
115
+ - `get_mcp_status` (show the installed server version, latest npm version, API origin, API key presence, and update guidance)
105
116
  - `get_agent_signup_info`
106
117
  - `start_signup` (start paid signup and return a Posterly checkout handoff URL)
107
118
  - `get_signup_session` (poll checkout, payment, password, and agent-access status)
108
119
 
109
- Authenticated tools:
120
+ Authenticated tools require `POSTERLY_API_KEY`:
110
121
 
111
122
  - `whoami`
112
123
  - `list_accounts`
@@ -194,6 +205,7 @@ much more reliable than forcing the agent to guess from raw account handles alon
194
205
  - `Schedule this as an Instagram Story with a first comment and @partner as collaborator`
195
206
  - `Schedule this YouTube video as unlisted, add the thumbnail URL, and put it in our launch playlist`
196
207
  - `Post this TikTok with direct-post privacy set to public and stitch disabled`
208
+ - `Schedule these 5 photos as a TikTok` (image posts auto-detect as a photo slideshow of 1 to 35 images, no post type needed)
197
209
  - `How did Grassroots perform on Instagram in the last 30 days?`
198
210
 
199
211
  ## Pricing
@@ -230,5 +242,5 @@ npm start
230
242
 
231
243
  The package reads:
232
244
 
233
- - `POSTERLY_API_KEY`
245
+ - optional `POSTERLY_API_KEY` for authenticated Posterly tools
234
246
  - optional `POSTERLY_URL` if you need to point at a non-production environment