social-mcp 2.6.0 → 2.7.1
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/README.md +46 -28
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/services/bluesky-service.d.ts +7 -1
- package/dist/services/bluesky-service.js +17 -2
- package/dist/services/bluesky-service.js.map +1 -1
- package/dist/services/facebook-service.d.ts +17 -1
- package/dist/services/facebook-service.js +63 -5
- package/dist/services/facebook-service.js.map +1 -1
- package/dist/services/ghost-service.d.ts +4 -1
- package/dist/services/ghost-service.js +55 -9
- package/dist/services/ghost-service.js.map +1 -1
- package/dist/services/instagram-service.d.ts +6 -1
- package/dist/services/instagram-service.js +40 -3
- package/dist/services/instagram-service.js.map +1 -1
- package/dist/services/linkedin-service.d.ts +9 -1
- package/dist/services/linkedin-service.js +65 -8
- package/dist/services/linkedin-service.js.map +1 -1
- package/dist/services/mastodon-service.d.ts +10 -1
- package/dist/services/mastodon-service.js +35 -6
- package/dist/services/mastodon-service.js.map +1 -1
- package/dist/services/medium-service.d.ts +2 -0
- package/dist/services/medium-service.js +5 -1
- package/dist/services/medium-service.js.map +1 -1
- package/dist/services/pinterest-service.d.ts +28 -2
- package/dist/services/pinterest-service.js +32 -8
- package/dist/services/pinterest-service.js.map +1 -1
- package/dist/services/reddit-service.d.ts +10 -1
- package/dist/services/reddit-service.js +62 -5
- package/dist/services/reddit-service.js.map +1 -1
- package/dist/services/threads-service.d.ts +8 -1
- package/dist/services/threads-service.js +46 -7
- package/dist/services/threads-service.js.map +1 -1
- package/dist/services/tiktok-service.d.ts +2 -0
- package/dist/services/tiktok-service.js +23 -4
- package/dist/services/tiktok-service.js.map +1 -1
- package/dist/services/tumblr-service.d.ts +25 -5
- package/dist/services/tumblr-service.js +51 -8
- package/dist/services/tumblr-service.js.map +1 -1
- package/dist/services/twitter-service.d.ts +13 -5
- package/dist/services/twitter-service.js +24 -3
- package/dist/services/twitter-service.js.map +1 -1
- package/dist/services/whatsapp-service.d.ts +10 -1
- package/dist/services/whatsapp-service.js +60 -9
- package/dist/services/whatsapp-service.js.map +1 -1
- package/dist/services/youtube-service.d.ts +21 -0
- package/dist/services/youtube-service.js +57 -7
- package/dist/services/youtube-service.js.map +1 -1
- package/dist/tools/bluesky-tools/create-post.d.ts +11 -1
- package/dist/tools/bluesky-tools/create-post.js +11 -2
- package/dist/tools/bluesky-tools/create-post.js.map +1 -1
- package/dist/tools/facebook-tools/create-post.d.ts +5 -1
- package/dist/tools/facebook-tools/create-post.js +12 -2
- package/dist/tools/facebook-tools/create-post.js.map +1 -1
- package/dist/tools/facebook-tools/create-video-post.d.ts +20 -0
- package/dist/tools/facebook-tools/create-video-post.js +31 -0
- package/dist/tools/facebook-tools/create-video-post.js.map +1 -0
- package/dist/tools/ghost-tools/create-post.d.ts +4 -0
- package/dist/tools/ghost-tools/create-post.js +27 -4
- package/dist/tools/ghost-tools/create-post.js.map +1 -1
- package/dist/tools/instagram-tools/create-post.d.ts +11 -1
- package/dist/tools/instagram-tools/create-post.js +8 -3
- package/dist/tools/instagram-tools/create-post.js.map +1 -1
- package/dist/tools/linkedin-tools/create-post.d.ts +5 -1
- package/dist/tools/linkedin-tools/create-post.js +9 -2
- package/dist/tools/linkedin-tools/create-post.js.map +1 -1
- package/dist/tools/mastodon-tools/create-post.d.ts +11 -1
- package/dist/tools/mastodon-tools/create-post.js +18 -2
- package/dist/tools/mastodon-tools/create-post.js.map +1 -1
- package/dist/tools/pinterest-tools/create-pin.d.ts +4 -2
- package/dist/tools/pinterest-tools/create-pin.js +8 -2
- package/dist/tools/pinterest-tools/create-pin.js.map +1 -1
- package/dist/tools/reddit-tools/submit-post.d.ts +9 -1
- package/dist/tools/reddit-tools/submit-post.js +19 -4
- package/dist/tools/reddit-tools/submit-post.js.map +1 -1
- package/dist/tools/threads-tools/create-post.d.ts +13 -1
- package/dist/tools/threads-tools/create-post.js +14 -2
- package/dist/tools/threads-tools/create-post.js.map +1 -1
- package/dist/tools/tumblr-tools/create-post.d.ts +4 -0
- package/dist/tools/tumblr-tools/create-post.js +39 -8
- package/dist/tools/tumblr-tools/create-post.js.map +1 -1
- package/dist/tools/twitter-tools/send-tweet.d.ts +9 -1
- package/dist/tools/twitter-tools/send-tweet.js +10 -2
- package/dist/tools/twitter-tools/send-tweet.js.map +1 -1
- package/dist/tools/whatsapp-tools/send-message.d.ts +19 -3
- package/dist/tools/whatsapp-tools/send-message.js +29 -3
- package/dist/tools/whatsapp-tools/send-message.js.map +1 -1
- package/dist/tools/youtube-tools/upload-video.d.ts +34 -0
- package/dist/tools/youtube-tools/upload-video.js +39 -0
- package/dist/tools/youtube-tools/upload-video.js.map +1 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -348,13 +348,15 @@ Set `MAIL_MAILER` to select your provider (`smtp`, `sendgrid`, `mailgun`, or `se
|
|
|
348
348
|
|
|
349
349
|
### Twitter / X
|
|
350
350
|
|
|
351
|
-
- **SEND_TWEET** — Post a tweet (`text`, max 280 chars)
|
|
351
|
+
- **SEND_TWEET** — Post a tweet, optionally with up to 4 image attachments or 1 gif/video (`text`, max 280 chars, `media`)
|
|
352
352
|
- **REPLY_TWEET** — Reply to a tweet (`tweetId`, `text`)
|
|
353
353
|
- **LIKE_TWEET** — Like a tweet (`tweetId`)
|
|
354
354
|
- **DELETE_TWEET** — Delete a tweet (`tweetId`)
|
|
355
355
|
- **GET_TWITTER_USER_INFO** — Get a user's profile and metrics (`username`)
|
|
356
356
|
- **SEARCH_TWEETS** — Search recent tweets (`query`, `maxResults`)
|
|
357
357
|
|
|
358
|
+
> **Note:** `media` takes `{ content, mimeType }[]` with `content` as base64, uploaded via `twitter-api-v2`'s `uploadMedia` (picks simple vs. chunked upload based on file size, so video is supported). `TwitterCredentials` also accepts a `bearerToken` in place of the four OAuth 1.0a fields (`appKey`/`appSecret`/`accessToken`/`accessSecret`) for callers that only have an OAuth 2.0 user-context token — X accepts it on both v2 and v1.1 media upload endpoints.
|
|
359
|
+
|
|
358
360
|
### Discord
|
|
359
361
|
|
|
360
362
|
- **SEND_DISCORD_MESSAGE** — Send a message to a channel, optionally with file attachments (`channelId`, `content`, `attachments`)
|
|
@@ -364,19 +366,24 @@ Set `MAIL_MAILER` to select your provider (`smtp`, `sendgrid`, `mailgun`, or `se
|
|
|
364
366
|
|
|
365
367
|
### WhatsApp
|
|
366
368
|
|
|
367
|
-
- **SEND_WHATSAPP_MESSAGE** — Send a
|
|
369
|
+
- **SEND_WHATSAPP_MESSAGE** — Send a text, image, video, or document message (`to`, `text`, `media`, `mediaKind`, `mediaContentType`, `mediaFilename`)
|
|
368
370
|
|
|
369
|
-
> **Note:** WhatsApp message retrieval requires webhook setup and cannot be polled via the API.
|
|
371
|
+
> **Note:** `media` is a public URL (sent as `link`) or base64-encoded bytes — base64 is uploaded to WhatsApp's media store first (`/media`) and referenced by the returned ID, since messages can't carry bytes inline. WhatsApp message retrieval requires webhook setup and cannot be polled via the API.
|
|
370
372
|
|
|
371
373
|
### Facebook
|
|
372
374
|
|
|
373
|
-
- **CREATE_FACEBOOK_POST** — Create a post on a Facebook page (`pageId`, `message`)
|
|
375
|
+
- **CREATE_FACEBOOK_POST** — Create a post on a Facebook page, optionally with a photo (`pageId`, `message`, `image`, `imageFilename`)
|
|
376
|
+
- **CREATE_FACEBOOK_VIDEO_POST** — Upload and publish a video on a page (`pageId`, `description`, `video`, `filename`)
|
|
374
377
|
- **GET_FACEBOOK_POSTS** — Retrieve recent posts from a page (`pageId`, `limit`)
|
|
375
378
|
|
|
379
|
+
> **Note:** `image`/`video` take either a public URL (fetched server-side via `/photos`' `url` / `/videos`' `file_url`) or base64-encoded bytes (uploaded as a real multipart `source`).
|
|
380
|
+
|
|
376
381
|
### Instagram
|
|
377
382
|
|
|
378
|
-
- **CREATE_INSTAGRAM_POST** — Publish an image post (`userId`, `imageUrl`, `caption`)
|
|
379
|
-
- **GET_INSTAGRAM_POSTS** — Retrieve recent posts from an account (`userId`, `limit`)
|
|
383
|
+
- **CREATE_INSTAGRAM_POST** — Publish an image, video, or Reels post (`userId`, `imageUrl`, `caption`, `mediaType`: IMAGE/VIDEO/REELS)
|
|
384
|
+
- **GET_INSTAGRAM_POSTS** — Retrieve recent posts from an account, including `media_url`/`permalink` (`userId`, `limit`)
|
|
385
|
+
|
|
386
|
+
> **Note:** `imageUrl` must be a publicly reachable URL for all media types — Instagram's Content Publishing API has no direct byte-upload path. For VIDEO/REELS, the container is polled until Meta finishes processing before publishing (previously publishing immediately could fail while the video was still processing).
|
|
380
387
|
|
|
381
388
|
### Slack
|
|
382
389
|
|
|
@@ -389,54 +396,60 @@ Set `MAIL_MAILER` to select your provider (`smtp`, `sendgrid`, `mailgun`, or `se
|
|
|
389
396
|
### LinkedIn
|
|
390
397
|
|
|
391
398
|
- **GET_LINKEDIN_PROFILE** — Get the authenticated user's profile information
|
|
392
|
-
- **CREATE_LINKEDIN_POST** — Create a UGC post (`authorUrn`, `text`, `visibility`)
|
|
399
|
+
- **CREATE_LINKEDIN_POST** — Create a UGC post, optionally with an image (`authorUrn`, `text`, `visibility`, `image`, `imageTitle`)
|
|
393
400
|
- **GET_LINKEDIN_POSTS** — Retrieve recent posts by a member or organization (`authorUrn`, `count`)
|
|
394
401
|
- **DELETE_LINKEDIN_POST** — Delete a UGC post (`ugcPostUrn`)
|
|
395
402
|
- **LIKE_LINKEDIN_POST** — Like a post (`actorUrn`, `ugcPostUrn`)
|
|
396
403
|
- **ADD_LINKEDIN_COMMENT** — Comment on a post (`actorUrn`, `ugcPostUrn`, `text`)
|
|
397
404
|
- **SEARCH_LINKEDIN_PEOPLE** — Search for people by keywords (`keywords`, `count`)
|
|
398
405
|
|
|
399
|
-
> **Note:** `SEARCH_LINKEDIN_PEOPLE` uses the LinkedIn People Search API which requires [Partner Program](https://learn.microsoft.com/en-us/linkedin/talent/recruiter-system-connect/getting-access) access. Most developer apps will receive a 403. All other tools work with a standard OAuth 2.0 token.
|
|
406
|
+
> **Note:** `SEARCH_LINKEDIN_PEOPLE` uses the LinkedIn People Search API which requires [Partner Program](https://learn.microsoft.com/en-us/linkedin/talent/recruiter-system-connect/getting-access) access. Most developer apps will receive a 403. All other tools work with a standard OAuth 2.0 token. `image` is base64-encoded bytes — LinkedIn's UGC API has no URL-reference option, so it always goes through the register-upload → PUT bytes → reference-asset-URN flow.
|
|
400
407
|
|
|
401
408
|
### Reddit
|
|
402
409
|
|
|
403
|
-
- **REDDIT_SUBMIT_POST** — Submit a text or
|
|
410
|
+
- **REDDIT_SUBMIT_POST** — Submit a text, link, or image post to a subreddit (`subreddit`, `title`, `kind`, `text`, `url`, `image`, `imageFilename`, `imageMimeType`)
|
|
404
411
|
- **REDDIT_GET_POSTS** — Get posts from a subreddit (`subreddit`, `sort`, `limit`)
|
|
405
412
|
- **REDDIT_COMMENT** — Comment on a post or reply to a comment (`parentId`, `text`)
|
|
406
413
|
- **REDDIT_VOTE** — Upvote, downvote, or remove a vote (`id`, `direction`)
|
|
407
414
|
- **REDDIT_SEARCH** — Search Reddit across all or a specific subreddit (`query`, `subreddit`, `sort`, `limit`)
|
|
408
415
|
- **REDDIT_GET_USER_INFO** — Get public info about a Reddit user (`username`)
|
|
409
416
|
|
|
410
|
-
> **Note:** Reddit requires a "script" type app in [reddit.com/prefs/apps](https://www.reddit.com/prefs/apps). The password grant flow is used — 2FA must be disabled on the account.
|
|
417
|
+
> **Note:** Reddit requires a "script" type app in [reddit.com/prefs/apps](https://www.reddit.com/prefs/apps). The password grant flow is used — 2FA must be disabled on the account. For `kind: "image"`, base64 bytes go through Reddit's lease-then-S3-upload flow (`/api/media/asset.json`) and the post links to the resulting `i.redd.it` asset.
|
|
411
418
|
|
|
412
419
|
### Threads
|
|
413
420
|
|
|
414
421
|
- **THREADS_GET_PROFILE** — Get your Threads profile information
|
|
415
|
-
- **THREADS_CREATE_POST** — Create a new
|
|
422
|
+
- **THREADS_CREATE_POST** — Create a new post, optionally with an image or video (`text`, `replyToId`, `mediaUrl`, `mediaType`: IMAGE/VIDEO)
|
|
416
423
|
- **THREADS_REPLY** — Reply to a Threads post (`replyToId`, `text`)
|
|
417
|
-
- **THREADS_GET_POSTS** — Get recent posts from your account (`limit`)
|
|
424
|
+
- **THREADS_GET_POSTS** — Get recent posts from your account, including `media_url` (`limit`)
|
|
418
425
|
- **THREADS_DELETE_POST** — Delete a post by ID (`mediaId`)
|
|
419
426
|
|
|
427
|
+
> **Note:** `mediaUrl` must be a publicly reachable URL, same as Instagram (shared Meta infrastructure). IMAGE/VIDEO containers are polled until processing finishes before publishing.
|
|
428
|
+
|
|
420
429
|
### Bluesky
|
|
421
430
|
|
|
422
431
|
- **BLUESKY_GET_PROFILE** — Get your Bluesky profile information
|
|
423
|
-
- **BLUESKY_CREATE_POST** — Create a new
|
|
432
|
+
- **BLUESKY_CREATE_POST** — Create a new post, optionally with up to 4 images (`text`, `images`)
|
|
424
433
|
- **BLUESKY_REPLY_TO_POST** — Reply to a Bluesky post (`text`, `parentUri`, `parentCid`, `rootUri`, `rootCid`)
|
|
425
434
|
- **BLUESKY_GET_POSTS** — Get recent posts from your feed (`limit`)
|
|
426
435
|
- **BLUESKY_DELETE_POST** — Delete a post by URI (`uri`, `cid`)
|
|
427
436
|
- **BLUESKY_LIKE_POST** — Like a post (`uri`, `cid`)
|
|
428
437
|
- **BLUESKY_SEARCH_POSTS** — Search for posts on Bluesky (`query`, `limit`)
|
|
429
438
|
|
|
439
|
+
> **Note:** `images` take `{ content, mimeType, alt? }[]` with `content` as base64 — AT Proto has no URL-reference option, every image is uploaded as a blob (`uploadBlob`) and referenced in the post's embed.
|
|
440
|
+
|
|
430
441
|
### Mastodon
|
|
431
442
|
|
|
432
443
|
- **MASTODON_GET_PROFILE** — Get your Mastodon profile information
|
|
433
|
-
- **MASTODON_CREATE_POST** — Create a new post (`status`, `inReplyToId` optional, `visibility`)
|
|
444
|
+
- **MASTODON_CREATE_POST** — Create a new post, optionally with up to 4 media attachments (`status`, `inReplyToId` optional, `visibility`, `media`)
|
|
434
445
|
- **MASTODON_REPLY_TO_POST** — Reply to a Mastodon post (`status`, `inReplyToId`)
|
|
435
446
|
- **MASTODON_SEARCH_POSTS** — Search for posts on your instance (`query`, `limit`)
|
|
436
447
|
- **MASTODON_BOOST_POST** — Reblog/boost a post (`statusId`)
|
|
437
448
|
- **MASTODON_FAVOURITE_POST** — Favorite/like a post (`statusId`)
|
|
438
449
|
- **MASTODON_DELETE_POST** — Delete a post (`statusId`)
|
|
439
450
|
|
|
451
|
+
> **Note:** `media` take `{ content, filename?, description? }[]` with `content` as base64, uploaded via `/api/v2/media` and attached by ID.
|
|
452
|
+
|
|
440
453
|
### TikTok
|
|
441
454
|
|
|
442
455
|
- **TIKTOK_QUERY_CREATOR_INFO** — Query creator info including posting permissions and privacy options
|
|
@@ -445,7 +458,7 @@ Set `MAIL_MAILER` to select your provider (`smtp`, `sendgrid`, `mailgun`, or `se
|
|
|
445
458
|
- **TIKTOK_PHOTO_POST** — Create a photo/carousel post (`photoUrls`, `title`, `description`, `privacyLevel`)
|
|
446
459
|
- **TIKTOK_GET_POST_STATUS** — Check the publishing status of a video or photo post (`publishId`)
|
|
447
460
|
|
|
448
|
-
> **Note:** TikTok's Content Posting API requires app approval from [TikTok for Developers](https://developers.tiktok.com). Videos are pulled from a public URL by TikTok's servers rather than uploaded directly.
|
|
461
|
+
> **Note:** TikTok's Content Posting API requires app approval from [TikTok for Developers](https://developers.tiktok.com). Videos are pulled from a public URL by TikTok's servers (`PULL_FROM_URL`) rather than uploaded directly — TikTok's alternative `FILE_UPLOAD` mode (chunked byte upload for base64/local content) is not yet implemented here; if you need it, it's the same style of lease-then-PUT flow used for LinkedIn/Reddit media above.
|
|
449
462
|
|
|
450
463
|
### YouTube
|
|
451
464
|
|
|
@@ -456,18 +469,21 @@ Set `MAIL_MAILER` to select your provider (`smtp`, `sendgrid`, `mailgun`, or `se
|
|
|
456
469
|
- **YOUTUBE_GET_COMMENTS** — Get top-level comments on a video (`videoId`, `maxResults`)
|
|
457
470
|
- **YOUTUBE_POST_COMMENT** — Post a comment on a video (`videoId`, `text`)
|
|
458
471
|
- **YOUTUBE_UPDATE_VIDEO** — Update a video's title, description, and tags (`videoId`, `title`, `description`, `tags`, `categoryId`)
|
|
472
|
+
- **YOUTUBE_UPLOAD_VIDEO** — Upload a video to the authenticated user's channel (`content`, `contentType`, `title`, `description`, `tags`, `categoryId`, `privacyStatus`)
|
|
459
473
|
|
|
460
|
-
> **Note:** YouTube requires an OAuth 2.0 access token with the `https://www.googleapis.com/auth/youtube` scope. Enable the **YouTube Data API v3** in your [Google Cloud Console](https://console.cloud.google.com) project.
|
|
474
|
+
> **Note:** YouTube requires an OAuth 2.0 access token with the `https://www.googleapis.com/auth/youtube` scope (or `.upload` for uploads). Enable the **YouTube Data API v3** in your [Google Cloud Console](https://console.cloud.google.com) project. `YOUTUBE_UPLOAD_VIDEO` uses a single-request multipart upload (not YouTube's resumable/chunked protocol) — appropriate since `content` arrives as one base64 tool argument rather than a large local file; very large videos may need the resumable flow instead.
|
|
461
475
|
|
|
462
476
|
### Pinterest
|
|
463
477
|
|
|
464
478
|
- **PINTEREST_GET_BOARDS** — List all boards on your Pinterest account (`pageSize`)
|
|
465
479
|
- **PINTEREST_CREATE_BOARD** — Create a new board (`name`, `description`)
|
|
466
|
-
- **PINTEREST_CREATE_PIN** — Create a pin on a board (`boardId`, `title`, `description`, `
|
|
467
|
-
- **PINTEREST_GET_PIN** — Get details of a specific pin (`pinId`)
|
|
480
|
+
- **PINTEREST_CREATE_PIN** — Create a pin on a board (`boardId`, `title`, `description`, `image`, `imageContentType`, `link`)
|
|
481
|
+
- **PINTEREST_GET_PIN** — Get details of a specific pin, including media URLs (`pinId`)
|
|
468
482
|
- **PINTEREST_GET_BOARD_PINS** — List all pins on a board (`boardId`, `pageSize`)
|
|
469
483
|
- **PINTEREST_DELETE_PIN** — Delete a pin by ID (`pinId`)
|
|
470
484
|
|
|
485
|
+
> **Note:** `image` takes either a public URL or base64-encoded bytes — unlike most platforms, Pinterest's v5 API accepts base64 directly in the pin body (`image_base64`), no separate upload step needed.
|
|
486
|
+
|
|
471
487
|
### Medium
|
|
472
488
|
|
|
473
489
|
- **MEDIUM_GET_USER** — Get your Medium profile and user ID (required for publishing)
|
|
@@ -489,7 +505,7 @@ Set `MAIL_MAILER` to select your provider (`smtp`, `sendgrid`, `mailgun`, or `se
|
|
|
489
505
|
- **DEVTO_GET_ARTICLE** — Get a specific article by ID including its full Markdown body (`id`)
|
|
490
506
|
- **DEVTO_UPDATE_ARTICLE** — Update an existing article (`id`, `title`, `bodyMarkdown`, `published`, `tags`, `description`, `canonicalUrl`)
|
|
491
507
|
|
|
492
|
-
> **Note:** Get your API key at [dev.to/settings/extensions](https://dev.to/settings/extensions). Set `published: false` to save as a draft.
|
|
508
|
+
> **Note:** Get your API key at [dev.to/settings/extensions](https://dev.to/settings/extensions). Set `published: false` to save as a draft. `mainImage` is a URL only — Dev.to's public API has no image upload endpoint; body images must already be hosted and linked in the Markdown.
|
|
493
509
|
|
|
494
510
|
### Hashnode
|
|
495
511
|
|
|
@@ -497,7 +513,7 @@ Set `MAIL_MAILER` to select your provider (`smtp`, `sendgrid`, `mailgun`, or `se
|
|
|
497
513
|
- **HASHNODE_GET_POSTS** — List recent posts from a Hashnode publication (`first`, `publicationId`)
|
|
498
514
|
- **HASHNODE_CREATE_POST** — Publish a post to a Hashnode publication (`title`, `contentMarkdown`, `tags`, `subtitle`, `coverImageUrl`, `publicationId`)
|
|
499
515
|
|
|
500
|
-
> **Note:** Tags are passed as `[{ name, slug }]` objects. Get your publication ID via `HASHNODE_GET_PUBLICATION` or from the Hashnode dashboard URL.
|
|
516
|
+
> **Note:** Tags are passed as `[{ name, slug }]` objects. Get your publication ID via `HASHNODE_GET_PUBLICATION` or from the Hashnode dashboard URL. `coverImageURL` is a URL only — Hashnode's GraphQL API expects an already-hosted image, not a byte upload.
|
|
501
517
|
|
|
502
518
|
### Beehiiv
|
|
503
519
|
|
|
@@ -505,16 +521,16 @@ Set `MAIL_MAILER` to select your provider (`smtp`, `sendgrid`, `mailgun`, or `se
|
|
|
505
521
|
- **BEEHIIV_GET_POSTS** — List posts with send stats including open rate (`page`, `limit`, `publicationId`)
|
|
506
522
|
- **BEEHIIV_GET_SUBSCRIBERS** — List subscribers with status and tier info (`page`, `limit`, `publicationId`)
|
|
507
523
|
|
|
508
|
-
> **Note:** Set `status: "confirmed"` to schedule the post for sending. `status: "draft"` saves it without sending.
|
|
524
|
+
> **Note:** Set `status: "confirmed"` to schedule the post for sending. `status: "draft"` saves it without sending. `bodyHtml` is raw HTML — Beehiiv's public API has no image/attachment upload; inline images must already be hosted.
|
|
509
525
|
|
|
510
526
|
### Ghost
|
|
511
527
|
|
|
512
|
-
- **GHOST_CREATE_POST** — Create a post on a Ghost blog (`title`, `html`, `status`, `tags`, `excerpt`, `publishedAt`)
|
|
528
|
+
- **GHOST_CREATE_POST** — Create a post on a Ghost blog, optionally with a feature image (`title`, `html`, `status`, `tags`, `excerpt`, `publishedAt`, `featureImage`, `featureImageFilename`)
|
|
513
529
|
- **GHOST_GET_POSTS** — List posts filtered by status (`page`, `limit`, `status`)
|
|
514
530
|
- **GHOST_UPDATE_POST** — Update an existing post — requires the post's current `updated_at` timestamp for optimistic locking (`id`, `updatedAt`, `title`, `html`, `status`, `tags`, `excerpt`)
|
|
515
531
|
- **GHOST_DELETE_POST** — Permanently delete a post (`id`)
|
|
516
532
|
|
|
517
|
-
> **Note:** The Admin API key (`GHOST_ADMIN_API_KEY`) must be in `id:secret` format from Ghost Admin → Settings → Integrations. Ghost uses JWT authentication which is generated automatically per request.
|
|
533
|
+
> **Note:** The Admin API key (`GHOST_ADMIN_API_KEY`) must be in `id:secret` format from Ghost Admin → Settings → Integrations. Ghost uses JWT authentication which is generated automatically per request. `featureImage` takes a public URL or base64-encoded bytes; base64 is uploaded via Ghost's `/images/upload/` endpoint first.
|
|
518
534
|
|
|
519
535
|
### Twitch
|
|
520
536
|
|
|
@@ -529,11 +545,11 @@ Set `MAIL_MAILER` to select your provider (`smtp`, `sendgrid`, `mailgun`, or `se
|
|
|
529
545
|
### Tumblr
|
|
530
546
|
|
|
531
547
|
- **TUMBLR_GET_BLOG_INFO** — Get blog info including title, description, post count, and follower count (`blogIdentifier`)
|
|
532
|
-
- **TUMBLR_CREATE_POST** — Create a
|
|
548
|
+
- **TUMBLR_CREATE_POST** — Create a post using the Neue Post Format, optionally with an image (`text`, `title`, `tags`, `state`, `blogIdentifier`, `image`, `imageContentType`)
|
|
533
549
|
- **TUMBLR_GET_POSTS** — Get posts from a blog, optionally filtered by type (`offset`, `limit`, `type`, `blogIdentifier`)
|
|
534
550
|
- **TUMBLR_DELETE_POST** — Delete a post by ID (`postId`, `blogIdentifier`)
|
|
535
551
|
|
|
536
|
-
> **Note:** Tumblr uses OAuth 2.0 Bearer tokens. Set `state: "draft"` or `"queue"` to save without publishing immediately.
|
|
552
|
+
> **Note:** Tumblr uses OAuth 2.0 Bearer tokens. Set `state: "draft"` or `"queue"` to save without publishing immediately. `image` takes a public URL (referenced directly in the NPF content block) or base64-encoded bytes (uploaded inline via a multipart request with an `identifier`-referenced block).
|
|
537
553
|
|
|
538
554
|
## Per-org / Multi-account Usage
|
|
539
555
|
|
|
@@ -586,11 +602,13 @@ When `mailer` and `fromAddress` are omitted, the tool falls back to the env var
|
|
|
586
602
|
|
|
587
603
|
## Proxy Support
|
|
588
604
|
|
|
589
|
-
|
|
605
|
+
Most services accept an optional `proxyUrl` in their credentials (e.g. `new DiscordService({ botToken, proxyUrl: "http://user:pass@host:port" })`), routing that account's API calls through an HTTP(S) proxy — useful for a multi-tenant host that wants each connected account's traffic to originate from a distinct, consistent IP. This is a constructor-level option for programmatic/library consumers (not an MCP tool parameter, since it's server-operator infrastructure rather than message content).
|
|
606
|
+
|
|
607
|
+
Supported today: Discord, Slack, Telegram, Twitter/X, Instagram, Facebook, WhatsApp, Threads, LinkedIn, Reddit, Pinterest, Mastodon, YouTube, Ghost, Tumblr. Not yet wired: Bluesky (`@atproto/api`'s `BskyAgent` doesn't expose a documented fetch/agent override), TikTok, Medium, Dev.to, Hashnode, Beehiiv, Twitch — these currently ignore any `proxyUrl` passed to them.
|
|
590
608
|
|
|
591
609
|
Two mechanisms are used depending on how each service talks to its platform, since passing the wrong one is a silent no-op rather than an error:
|
|
592
|
-
- `createProxyDispatcher()` (undici `ProxyAgent`) for services using raw `fetch()
|
|
593
|
-
- `createProxyAgent()` (`https-proxy-agent`) for services built on SDKs that take a classic `http.Agent` (Slack's `@slack/web-api`, Telegram's `telegraf`).
|
|
610
|
+
- `createProxyDispatcher()` (undici `ProxyAgent`) for services using raw `fetch()` — most of the list above.
|
|
611
|
+
- `createProxyAgent()` (`https-proxy-agent`) for services built on SDKs that take a classic `http.Agent` (Slack's `@slack/web-api`, Telegram's `telegraf`, Twitter's `twitter-api-v2` via its `httpAgent` client option).
|
|
594
612
|
|
|
595
613
|
Both are exported from `social-mcp/dist/lib/proxy.js` if you need to build the agent/dispatcher yourself.
|
|
596
614
|
|
package/dist/index.js
CHANGED
|
@@ -43,6 +43,7 @@ import { sendMessageTool as discordSendMessageTool } from "./tools/discord-tools
|
|
|
43
43
|
import { sendBulkEmailTool } from "./tools/email-tools/send-bulk-email.js";
|
|
44
44
|
import { sendEmailTool } from "./tools/email-tools/send-email.js";
|
|
45
45
|
import { createPostTool as facebookCreatePostTool } from "./tools/facebook-tools/create-post.js";
|
|
46
|
+
import { createVideoPostTool as facebookCreateVideoPostTool } from "./tools/facebook-tools/create-video-post.js";
|
|
46
47
|
import { getPostsTool as facebookGetPostsTool } from "./tools/facebook-tools/get-posts.js";
|
|
47
48
|
import { createPostTool as ghostCreatePostTool } from "./tools/ghost-tools/create-post.js";
|
|
48
49
|
import { deletePostTool as ghostDeletePostTool } from "./tools/ghost-tools/delete-post.js";
|
|
@@ -126,6 +127,7 @@ import { listChannelVideosTool as youtubeListChannelVideosTool } from "./tools/y
|
|
|
126
127
|
import { postCommentTool as youtubePostCommentTool } from "./tools/youtube-tools/post-comment.js";
|
|
127
128
|
import { searchVideosTool as youtubeSearchVideosTool } from "./tools/youtube-tools/search-videos.js";
|
|
128
129
|
import { updateVideoTool as youtubeUpdateVideoTool } from "./tools/youtube-tools/update-video.js";
|
|
130
|
+
import { uploadVideoTool as youtubeUploadVideoTool } from "./tools/youtube-tools/upload-video.js";
|
|
129
131
|
const require = createRequire(import.meta.url);
|
|
130
132
|
const { version } = require("../package.json");
|
|
131
133
|
async function checkPlatform(name, init) {
|
|
@@ -196,6 +198,7 @@ async function main() {
|
|
|
196
198
|
server.addTool(whatsappSendMessageTool);
|
|
197
199
|
// Facebook
|
|
198
200
|
server.addTool(facebookCreatePostTool);
|
|
201
|
+
server.addTool(facebookCreateVideoPostTool);
|
|
199
202
|
server.addTool(facebookGetPostsTool);
|
|
200
203
|
// Instagram
|
|
201
204
|
server.addTool(instagramCreatePostTool);
|
|
@@ -239,6 +242,7 @@ async function main() {
|
|
|
239
242
|
server.addTool(youtubeGetCommentsTool);
|
|
240
243
|
server.addTool(youtubePostCommentTool);
|
|
241
244
|
server.addTool(youtubeUpdateVideoTool);
|
|
245
|
+
server.addTool(youtubeUploadVideoTool);
|
|
242
246
|
// Bluesky
|
|
243
247
|
server.addTool(blueskyCreatePostTool);
|
|
244
248
|
server.addTool(blueskyReplyToPostTool);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,12 @@ export interface BlueskyCredentials {
|
|
|
3
3
|
appPassword: string;
|
|
4
4
|
service?: string;
|
|
5
5
|
}
|
|
6
|
+
export interface BlueskyImage {
|
|
7
|
+
/** Base64-encoded image bytes. Max 4 per post (AT Proto's own limit). */
|
|
8
|
+
content: string;
|
|
9
|
+
mimeType: string;
|
|
10
|
+
alt?: string;
|
|
11
|
+
}
|
|
6
12
|
export declare class BlueskyService {
|
|
7
13
|
private agent;
|
|
8
14
|
private identifier;
|
|
@@ -10,7 +16,7 @@ export declare class BlueskyService {
|
|
|
10
16
|
private loggedIn;
|
|
11
17
|
constructor(credentials?: BlueskyCredentials);
|
|
12
18
|
private ensureLoggedIn;
|
|
13
|
-
createPost(text: string): Promise<{
|
|
19
|
+
createPost(text: string, images?: BlueskyImage[]): Promise<{
|
|
14
20
|
uri: string;
|
|
15
21
|
cid: string;
|
|
16
22
|
}>;
|
|
@@ -29,9 +29,24 @@ export class BlueskyService {
|
|
|
29
29
|
this.loggedIn = true;
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
|
-
async createPost(text) {
|
|
32
|
+
async createPost(text, images) {
|
|
33
33
|
await this.ensureLoggedIn();
|
|
34
|
-
|
|
34
|
+
if (!images?.length) {
|
|
35
|
+
return this.agent.post({ text });
|
|
36
|
+
}
|
|
37
|
+
// AT Proto has no "attach a URL" shortcut — every image is a blob uploaded to
|
|
38
|
+
// the user's own PDS first, then referenced by its returned blob ref in the post.
|
|
39
|
+
const embedImages = await Promise.all(images.slice(0, 4).map(async (image) => {
|
|
40
|
+
const buffer = Buffer.from(image.content, "base64");
|
|
41
|
+
const { data } = await this.agent.uploadBlob(buffer, {
|
|
42
|
+
encoding: image.mimeType,
|
|
43
|
+
});
|
|
44
|
+
return { image: data.blob, alt: image.alt ?? "" };
|
|
45
|
+
}));
|
|
46
|
+
return this.agent.post({
|
|
47
|
+
text,
|
|
48
|
+
embed: { $type: "app.bsky.embed.images", images: embedImages },
|
|
49
|
+
});
|
|
35
50
|
}
|
|
36
51
|
async replyToPost(text, parentUri, parentCid, rootUri, rootCid) {
|
|
37
52
|
await this.ensureLoggedIn();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bluesky-service.js","sourceRoot":"","sources":["../../src/services/bluesky-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"bluesky-service.js","sourceRoot":"","sources":["../../src/services/bluesky-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,27 @@
|
|
|
1
1
|
export interface FacebookCredentials {
|
|
2
2
|
accessToken: string;
|
|
3
|
+
proxyUrl?: string;
|
|
4
|
+
}
|
|
5
|
+
export interface FacebookImage {
|
|
6
|
+
/** Public image URL, or base64-encoded image bytes. */
|
|
7
|
+
image: string;
|
|
8
|
+
filename?: string;
|
|
9
|
+
}
|
|
10
|
+
export interface FacebookVideo {
|
|
11
|
+
/** Public video URL, or base64-encoded video bytes. */
|
|
12
|
+
video: string;
|
|
13
|
+
filename?: string;
|
|
3
14
|
}
|
|
4
15
|
export declare class FacebookService {
|
|
5
16
|
private baseUrl;
|
|
6
17
|
private headers;
|
|
18
|
+
private dispatcher?;
|
|
7
19
|
constructor(credentials?: FacebookCredentials);
|
|
8
|
-
createPost(pageId: string, message: string): Promise<{
|
|
20
|
+
createPost(pageId: string, message: string, image?: FacebookImage): Promise<{
|
|
21
|
+
id: string;
|
|
22
|
+
post_id?: string | undefined;
|
|
23
|
+
}>;
|
|
24
|
+
createVideoPost(pageId: string, description: string, video: FacebookVideo): Promise<{
|
|
9
25
|
id: string;
|
|
10
26
|
post_id?: string | undefined;
|
|
11
27
|
}>;
|
|
@@ -2,6 +2,7 @@ import { z } from "zod";
|
|
|
2
2
|
import { config } from "../lib/config.js";
|
|
3
3
|
import { CredentialsError } from "../lib/errors.js";
|
|
4
4
|
import { fetchJson } from "../lib/http.js";
|
|
5
|
+
import { createProxyDispatcher } from "../lib/proxy.js";
|
|
5
6
|
const facebookPostSchema = z.object({
|
|
6
7
|
id: z.string(),
|
|
7
8
|
post_id: z.string().optional(),
|
|
@@ -17,6 +18,7 @@ const facebookPostsResponseSchema = z.object({
|
|
|
17
18
|
export class FacebookService {
|
|
18
19
|
baseUrl = config.facebook.baseUrl;
|
|
19
20
|
headers;
|
|
21
|
+
dispatcher;
|
|
20
22
|
constructor(credentials) {
|
|
21
23
|
const accessToken = credentials?.accessToken ?? config.facebook.accessToken;
|
|
22
24
|
if (!accessToken) {
|
|
@@ -26,21 +28,77 @@ export class FacebookService {
|
|
|
26
28
|
"Content-Type": "application/json",
|
|
27
29
|
Authorization: `Bearer ${accessToken}`,
|
|
28
30
|
};
|
|
31
|
+
this.dispatcher = createProxyDispatcher(credentials?.proxyUrl);
|
|
29
32
|
}
|
|
30
|
-
async createPost(pageId, message) {
|
|
31
|
-
|
|
33
|
+
async createPost(pageId, message, image) {
|
|
34
|
+
if (!image) {
|
|
35
|
+
return fetchJson(`${this.baseUrl}/${pageId}/feed`, {
|
|
36
|
+
method: "POST",
|
|
37
|
+
headers: this.headers,
|
|
38
|
+
body: JSON.stringify({ message }),
|
|
39
|
+
dispatcher: this.dispatcher,
|
|
40
|
+
}, facebookPostSchema);
|
|
41
|
+
}
|
|
42
|
+
// The Graph API's /photos endpoint accepts either a `url` it fetches itself,
|
|
43
|
+
// or a real multipart upload via `source` — same endpoint, two input shapes.
|
|
44
|
+
if (isHttpUrl(image.image)) {
|
|
45
|
+
return fetchJson(`${this.baseUrl}/${pageId}/photos`, {
|
|
46
|
+
method: "POST",
|
|
47
|
+
headers: this.headers,
|
|
48
|
+
body: JSON.stringify({ url: image.image, caption: message }),
|
|
49
|
+
dispatcher: this.dispatcher,
|
|
50
|
+
}, facebookPostSchema);
|
|
51
|
+
}
|
|
52
|
+
const formData = new FormData();
|
|
53
|
+
formData.append("caption", message);
|
|
54
|
+
const buffer = Buffer.from(image.image, "base64");
|
|
55
|
+
formData.append("source", new Blob([buffer]), image.filename ?? "photo.jpg");
|
|
56
|
+
const response = await fetch(`${this.baseUrl}/${pageId}/photos`, {
|
|
32
57
|
method: "POST",
|
|
33
|
-
headers: this.headers,
|
|
34
|
-
body:
|
|
35
|
-
|
|
58
|
+
headers: { Authorization: this.headers.Authorization ?? "" },
|
|
59
|
+
body: formData,
|
|
60
|
+
dispatcher: this.dispatcher,
|
|
61
|
+
});
|
|
62
|
+
if (!response.ok) {
|
|
63
|
+
throw new Error(`Facebook API error (${response.status}): ${await response.text()}`);
|
|
64
|
+
}
|
|
65
|
+
return facebookPostSchema.parse(await response.json());
|
|
66
|
+
}
|
|
67
|
+
async createVideoPost(pageId, description, video) {
|
|
68
|
+
if (isHttpUrl(video.video)) {
|
|
69
|
+
return fetchJson(`${this.baseUrl}/${pageId}/videos`, {
|
|
70
|
+
method: "POST",
|
|
71
|
+
headers: this.headers,
|
|
72
|
+
body: JSON.stringify({ file_url: video.video, description }),
|
|
73
|
+
dispatcher: this.dispatcher,
|
|
74
|
+
}, facebookPostSchema);
|
|
75
|
+
}
|
|
76
|
+
const formData = new FormData();
|
|
77
|
+
formData.append("description", description);
|
|
78
|
+
const buffer = Buffer.from(video.video, "base64");
|
|
79
|
+
formData.append("source", new Blob([buffer]), video.filename ?? "video.mp4");
|
|
80
|
+
const response = await fetch(`${this.baseUrl}/${pageId}/videos`, {
|
|
81
|
+
method: "POST",
|
|
82
|
+
headers: { Authorization: this.headers.Authorization ?? "" },
|
|
83
|
+
body: formData,
|
|
84
|
+
dispatcher: this.dispatcher,
|
|
85
|
+
});
|
|
86
|
+
if (!response.ok) {
|
|
87
|
+
throw new Error(`Facebook API error (${response.status}): ${await response.text()}`);
|
|
88
|
+
}
|
|
89
|
+
return facebookPostSchema.parse(await response.json());
|
|
36
90
|
}
|
|
37
91
|
async getPosts(pageId, limit = 10) {
|
|
38
92
|
return fetchJson(`${this.baseUrl}/${pageId}/posts?fields=id,message,created_time&limit=${limit}`, {
|
|
39
93
|
method: "GET",
|
|
40
94
|
headers: this.headers,
|
|
95
|
+
dispatcher: this.dispatcher,
|
|
41
96
|
}, facebookPostsResponseSchema);
|
|
42
97
|
}
|
|
43
98
|
}
|
|
99
|
+
function isHttpUrl(value) {
|
|
100
|
+
return value.startsWith("http://") || value.startsWith("https://");
|
|
101
|
+
}
|
|
44
102
|
let _instance;
|
|
45
103
|
export function getFacebookService() {
|
|
46
104
|
if (!_instance)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"facebook-service.js","sourceRoot":"","sources":["../../src/services/facebook-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"facebook-service.js","sourceRoot":"","sources":["../../src/services/facebook-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAExD,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC9B,CAAC,CAAC;AAEH,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;CACxB,CAAC,CAAC;AAEH,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC;CACvC,CAAC,CAAC;AAmBH,MAAM,OAAO,eAAe;IACnB,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;IAClC,OAAO,CAAyB;IAChC,UAAU,CAA4C;IAE9D,YAAY,WAAiC;QAC5C,MAAM,WAAW,GAAG,WAAW,EAAE,WAAW,IAAI,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;QAC5E,IAAI,CAAC,WAAW,EAAE,CAAC;YAClB,MAAM,IAAI,gBAAgB,CAAC,UAAU,EAAE,CAAC,uBAAuB,CAAC,CAAC,CAAC;QACnE,CAAC;QACD,IAAI,CAAC,OAAO,GAAG;YACd,cAAc,EAAE,kBAAkB;YAClC,aAAa,EAAE,UAAU,WAAW,EAAE;SACtC,CAAC;QACF,IAAI,CAAC,UAAU,GAAG,qBAAqB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAc,EAAE,OAAe,EAAE,KAAqB;QACtE,IAAI,CAAC,KAAK,EAAE,CAAC;YACZ,OAAO,SAAS,CACf,GAAG,IAAI,CAAC,OAAO,IAAI,MAAM,OAAO,EAChC;gBACC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;gBACjC,UAAU,EAAE,IAAI,CAAC,UAAU;aAC3B,EACD,kBAAkB,CAClB,CAAC;QACH,CAAC;QAED,6EAA6E;QAC7E,6EAA6E;QAC7E,IAAI,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,SAAS,CACf,GAAG,IAAI,CAAC,OAAO,IAAI,MAAM,SAAS,EAClC;gBACC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;gBAC5D,UAAU,EAAE,IAAI,CAAC,UAAU;aAC3B,EACD,kBAAkB,CAClB,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;QAChC,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACpC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAClD,QAAQ,CAAC,MAAM,CACd,QAAQ,EACR,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,EAClB,KAAK,CAAC,QAAQ,IAAI,WAAW,CAC7B,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,IAAI,MAAM,SAAS,EAAE;YAChE,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,IAAI,EAAE,EAAE;YAC5D,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,IAAI,CAAC,UAAU;SACZ,CAAC,CAAC;QAClB,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CACd,uBAAuB,QAAQ,CAAC,MAAM,MAAM,MAAM,QAAQ,CAAC,IAAI,EAAE,EAAE,CACnE,CAAC;QACH,CAAC;QACD,OAAO,kBAAkB,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,eAAe,CACpB,MAAc,EACd,WAAmB,EACnB,KAAoB;QAEpB,IAAI,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,SAAS,CACf,GAAG,IAAI,CAAC,OAAO,IAAI,MAAM,SAAS,EAClC;gBACC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,KAAK,EAAE,WAAW,EAAE,CAAC;gBAC5D,UAAU,EAAE,IAAI,CAAC,UAAU;aAC3B,EACD,kBAAkB,CAClB,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;QAChC,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;QAC5C,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAClD,QAAQ,CAAC,MAAM,CACd,QAAQ,EACR,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,EAClB,KAAK,CAAC,QAAQ,IAAI,WAAW,CAC7B,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,IAAI,MAAM,SAAS,EAAE;YAChE,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,IAAI,EAAE,EAAE;YAC5D,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,IAAI,CAAC,UAAU;SACZ,CAAC,CAAC;QAClB,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CACd,uBAAuB,QAAQ,CAAC,MAAM,MAAM,MAAM,QAAQ,CAAC,IAAI,EAAE,EAAE,CACnE,CAAC;QACH,CAAC;QACD,OAAO,kBAAkB,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,MAAc,EAAE,KAAK,GAAG,EAAE;QACxC,OAAO,SAAS,CACf,GAAG,IAAI,CAAC,OAAO,IAAI,MAAM,+CAA+C,KAAK,EAAE,EAC/E;YACC,MAAM,EAAE,KAAK;YACb,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,UAAU,EAAE,IAAI,CAAC,UAAU;SAC3B,EACD,2BAA2B,CAC3B,CAAC;IACH,CAAC;CACD;AAED,SAAS,SAAS,CAAC,KAAa;IAC/B,OAAO,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AACpE,CAAC;AAED,IAAI,SAAsC,CAAC;AAC3C,MAAM,UAAU,kBAAkB;IACjC,IAAI,CAAC,SAAS;QAAE,SAAS,GAAG,IAAI,eAAe,EAAE,CAAC;IAClD,OAAO,SAAS,CAAC;AAClB,CAAC"}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
export interface GhostCredentials {
|
|
2
2
|
siteUrl: string;
|
|
3
3
|
adminApiKey: string;
|
|
4
|
+
proxyUrl?: string;
|
|
4
5
|
}
|
|
5
6
|
export declare class GhostService {
|
|
6
7
|
private siteUrl;
|
|
7
8
|
private keyId;
|
|
8
9
|
private keySecret;
|
|
10
|
+
private dispatcher?;
|
|
9
11
|
constructor(credentials?: GhostCredentials);
|
|
10
12
|
private generateJwt;
|
|
11
13
|
private get headers();
|
|
@@ -35,7 +37,8 @@ export declare class GhostService {
|
|
|
35
37
|
} | undefined;
|
|
36
38
|
} | undefined;
|
|
37
39
|
}>;
|
|
38
|
-
|
|
40
|
+
uploadImage(content: string, filename?: string): Promise<string>;
|
|
41
|
+
createPost(title: string, html?: string, lexical?: string, status?: "draft" | "published" | "scheduled", tags?: string[], excerpt?: string, publishedAt?: string, featureImage?: string): Promise<{
|
|
39
42
|
posts: {
|
|
40
43
|
id: string;
|
|
41
44
|
title?: string | undefined;
|