Google Search Console integration for Model Context Protocol (MCP)
Sprkly is installed from its publisher's own source and answers where it runs, so this marketplace is not in the path of a single call. There is no address here to send one to, and a panel that pretended otherwise would be showing you an answer we made up. Install it and call it from your own client — the Installation tab has the entry for each one.
What it does
Schedule, publish and track social posts across TikTok, Instagram, Threads and YouTube Shorts.
Quickstart
# 1 — add it to Claude Code
claude mcp add --scope user --transport http sprkly-mcp https://sprkly.app/api/mcp
# 2 — ask your agent for something these tools do
# sprkly_add_media_from_url, sprkly_delete_scheduled_post, sprkly_draft_post and 16 more
Sprkly costs nothing on mcprush: there is no plan to choose here, no cap to set and nothing mcprush can bill you for.
Collected from a public index. Nobody has claimed this account, so nothing here was written by its author — claim it if it is yours.
Where are you running it?
Every route below installs the same thing and ends at the same approval screen. Nothing here runs on your machine and nothing runs on ours: this server answers at its publisher’s own address, and what you install is the connection straight to it.
This is a public server: it answers at its publisher’s own address and this marketplace is not in the path. Claude Code registers it in one command; --scope user makes it available in every project. The transport below is http, as the publisher's own manifest declares it.
claude mcp add --scope user --transport http sprkly-mcp https://sprkly.app/api/mcpReconnect, or start a new session, and the tools appear in the model’s tool list.
One config entry pointing straight at the publisher’s own address — this marketplace is not in the path, and nothing from this listing executes on your machine.
19 tools, with what each one reads, writes and reaches shown before you agree — the same list on every route above. Read the tool surface.
Tool surface
What the model actually sees. Descriptions are diffed on every release — see version history.
Download an image or video from a public link into sprkly and get a media_id back, for reuse across several posts. You usually do NOT need this: sprkly_schedule_post accepts a link directly in media_urls and pulls it into storage itself whenever the target platform requires that. Reach for this tool only when the user wants one media_id to attach to more than one post. Google Drive and Dropbox sha
| Parameter | Type | Required | Notes |
|---|---|---|---|
| url | string | yes | Direct https link to the image or video file. Must be publicly reachable. |
Remove a post from the queue. This is a soft delete. The user can restore it from the Deleted tab for 30 days. Posts that have already published cannot be deleted this way. Always confirm with the user before calling.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| post_id | string | yes | The scheduled post id to delete. |
Compose a caption from a content hint and save it as a draft in sprkly, shaped to the tightest caption limit among the target platforms. Returns a draft id; the draft appears under /drafts for the user to review.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| content_hint | string | yes | What the post should be about: a topic, phrase, or key message. |
| platforms | array | no | Intended platforms, used to pick the caption length ceiling. |
| tone | string | no | Voice for the draft. |
| name | string | no | Optional label for the draft. |
| profile_ids | array | no | Optional accounts to pre-select on the draft. From sprkly_list_profiles. |
Download one Instagram auto reply as a shareable template. The file holds the trigger, the keyword and the message, and never a post id, a profile id or any account details, so it is safe to send to someone else. An auto reply that is still a draft has nothing published to export. (coming soon, pending Meta review)
| Parameter | Type | Required | Notes |
|---|---|---|---|
| automation_id | string | yes | The automation id to export. |
Plan tier, trial state, connected account count, scheduled post counts by status, and the next three upcoming posts. Never returns tokens or secrets.
No parameter schema on file.
How the user's published posts actually performed: total views and engagement, week-on-week / month-on-month / year-on-year change, their best posting hour, weekday and content category, and the top posts behind those numbers. Every recommendation carries a samples count — say how thin the evidence is rather than presenting a one-post pattern as a finding. Every period-on-period percentage carri
| Parameter | Type | Required | Notes |
|---|---|---|---|
| days | integer | no | How many days back to analyse. Default 30. Free plans read at most 30 days; paid plans read up to 730. |
| profile_ids | array | no | Limit to these accounts. Omit for every account this connection can see. |
Subscription status, current plan, period end, purchased handles and the last few billing events. No payment method details; the Stripe customer id is truncated.
No parameter schema on file.
Whether a post is awaiting the owner's approval, approved or rejected, with the reviewer's notes, who asked, and timestamps. A rejected post is a draft again: fix it, then request approval again.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| post_id | string | yes | The scheduled post id. |
Full detail for one post: status, targets, scheduled and published times, permalink, and the failure reason if it did not publish. Media comes back as mediaIds in slide order, not as links. Ids and profile ids are plumbing: talk to the user about accounts by handle and about posts by their caption, and do not read ids out unless they ask for one.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| post_id | string | yes | The scheduled post id. |
This creator's allowed TikTok privacy levels and interaction settings, fetched live from TikTok. You usually do NOT need this before scheduling: sprkly_schedule_post checks privacyLevel against this same list itself and, when it is wrong, returns the levels that would work. Call this only when the user asks what their options are, or you want to offer them a choice.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| profile_id | string | yes | The TikTok profile id to query, from sprkly_list_profiles. |
Read an auto reply template, and optionally set it up. With no profile_id NOTHING is written: the template is checked and handed back, which is the safe first call. With a profile_id the automation is created, and it goes live when the trigger can be satisfied. A trigger that watches one post (a keyword on a post, or every comment on a post) needs post_id as well. Without one it saves as a draft t
| Parameter | Type | Required | Notes |
|---|---|---|---|
| template | object | yes | The template, as an object or as the file text. |
| profile_id | string | no | The Instagram account to set it up on. Leave this out to only check the template. |
| post_id | string | no | The published post to watch. Only for a trigger that watches one post. Leave it out for a keyword on any post or a Profile DM. |
Every ACTIVE social account linked to this sprkly account: platform, handle, follower count, and whether it needs reconnecting. Disconnected/inactive accounts are never listed, so any profileId returned here is a valid posting target. Never returns access tokens.
No parameter schema on file.
The profile ids needed to target a post, with each one's platform and handle. Call this before sprkly_schedule_post.
No parameter schema on file.
The post queue, newest first, with a caption preview, targets, status and failure reason. Supports a status filter and cursor pagination.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| status | string | no | Filter by status. |
| limit | integer | no | Maximum posts to return. |
| cursor | string | no | Pagination cursor. Pass the nextCursor value from a previous response. |
Hold a draft or scheduled post for the owner's approval. Moves it to pending_approval, where it never publishes on its own, emails the owner an Approve link, and returns an approval id to poll with sprkly_get_post_approval_status. Asking again for a post that is already waiting returns the same request. Approved posts go back to scheduled (a post past its time goes out in about 2 minutes); rejecte
| Parameter | Type | Required | Notes |
|---|---|---|---|
| post_id | string | yes | The draft or scheduled post id to hold for approval. |
| note | string | no | Optional note to the owner, shown in the approval email. |
Queue a post for publishing, in ONE call. Attach media by passing the user's link straight to media_urls: sprkly downloads it into storage itself for the platforms that need that, so no upload tool has to run first. Runs the same quota, duplicate-content and platform pre-flight checks as the sprkly app. Instagram and TikTok require media at submission time; YouTube and TikTok require a title, and
| Parameter | Type | Required | Notes |
|---|---|---|---|
| caption | string | no | Post caption, max 2200 characters. |
| platforms | array | no | Platforms to publish to. A platform with exactly one connected account is targeted directly; one with several makes the tool answer needsAccountChoice so the user can pick. |
| profile_ids | array | no | Specific accounts to publish to, from sprkly_list_profiles. When given, this list IS the target set — platforms are not fanned out. |
| all_accounts | boolean | no | Explicitly post to EVERY connected account on every listed platform, skipping the needsAccountChoice question. Only pass true when the user has said they want all accounts. |
| requires_approval | boolean | no | Hold the post until the owner approves it. It is saved as pending_approval and never publishes on its own; the owner gets an email with an Approve link and can also approve or reject in the sprkly cal |
| approval_note | string | no | Optional note to the owner, shown in the approval email. Only used with requires_approval. |
| scheduled_time | string | no | ISO 8601 timestamp to publish at. Must be in the future. If omitted the post goes out on the next publisher run, about a minute from now — there is no smart slot-picking, so pass an explicit time unle |
| media_urls | array | no | Publicly reachable image or video URLs to attach, in slide order. Pass links through for ANY platform. Instagram and Threads fetch them directly; for TikTok, YouTube and Facebook sprkly downloads the |
| media_id | string | no | Id of a single media file already uploaded to sprkly. Shorthand for a one-item media_ids. |
| media_ids | array | no | Ids of media files already uploaded to sprkly, in slide order. Array order is the published order. Use these when the user already has media in sprkly, or when one file is going on several posts; for |
| title | string | no | Post title. Required for YouTube (max 100 characters) and TikTok (max 150 characters). |
| category | string | no | Optional content category, e.g. "fitness". |
| platform_meta | object | no | Platform-specific publishing options, keyed by platform. |
Change the caption, publish time, target accounts or attached media on a post that has not published yet. Posts with status "scheduled", "pending_approval" or "draft" can be edited, and the status never changes here: editing a post that waits for approval does not approve it, and a rejected post stays a draft until you request approval again. A post waiting for approval can only target one account
| Parameter | Type | Required | Notes |
|---|---|---|---|
| post_id | string | yes | The scheduled post id. |
| caption | string | no | Replacement caption, max 2200 characters. |
| scheduled_time | string | no | New ISO 8601 publish time. Must be in the future. |
| profile_ids | array | no | Replacement target accounts. Platforms are re-derived from them. |
| media_id | string | no | Replacement sprkly media file id. Shorthand for a one-item media_ids. |
| media_ids | array | no | Replacement media, in slide order. Replaces the whole set, it does not append — pass every slide you want the post to keep. |
Upload files the user has on their machine (slides, photos, a short video) into sprkly and get a media_id for each. LINK MODE is the way to send a file from disk. Send files, one entry per file with its filename, sha256 and size_bytes. You get back one uploadUrl per file. PUT the bytes to it: curl -sS -X PUT --data-binary @01.jpg "<uploadUrl>". Each PUT answers JSON with mediaId. Links last 15 min
| Parameter | Type | Required | Notes |
|---|---|---|---|
| files | array | no | LINK MODE. One entry per file, in slide order. Get the values in Bash: sha256sum 01.jpg (first 64 characters) and stat -c %s 01.jpg. 1 to 35 entries. |
| data_base64 | string | no | INLINE MODE, tiny files only. The file contents, base64 encoded. Standard or URL-safe alphabet, with or without a data: prefix. Ignored when files is sent. |
| filename | string | no | INLINE MODE. The file name, for example 01.jpg. Used in the response and in error messages. The bytes decide the real type. Ignored when files is sent. |
| content_type | string | no | INLINE MODE. Optional MIME hint such as image/jpeg. sprkly sniffs the bytes and that wins. |
Check a caption against each target platform's posting rules before scheduling: caption length, media requirements, hashtag ceilings, whether links are clickable, required YouTube titles, and PII or prohibited-content warnings. Pure analysis. Writes nothing.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| caption | string | yes | The caption to check. |
| platforms | array | yes | Target platforms to check against. |
| mediaUrlsCount | integer | no | How many images or videos will be attached. Instagram and TikTok require at least one. |
| hashtags | array | no | Hashtags posted alongside the caption, if they are not already in it. |
| title | string | no | Post title. Required for YouTube, max 100 characters. |
| platformMeta | object | no | Platform-specific publishing options, keyed by platform. |
- Every tool — any call limit is its publisher’s, not ours
- No card, and mcprush charges nothing for it
- Runs at its publisher’s own address — this marketplace is not in the path
- Nothing to cap, because mcprush bills nothing
What counts against your monthly calls
| Tool | Unit | Calls used | Out of the allowance |
|---|
Nothing here is billable: mcprush charges nothing to install Sprkly or to call it, at any volume.
Two independent axes, because powerful and malicious are different questions. The grade is threat only. The capability level is blast radius, and it is never a penalty on the grade — it is priced as one subtract-only term in the score, where you can see it.
This listing is an address its publisher runs, and you connect to it directly — this marketplace is not in the path. The scanner reads packages and public source, and an address is neither. So there is no grade — not a withheld one, an unmeasured one.
Release history
This is an address its publisher runs: which release it serves is theirs to choose, so there is nothing here to pin. The history below is for reading; the current release on file is 1.0.0.
No release note was published with this version.
One review per account, from a signed-in account that does not publish this listing. Nothing else is asked — you can say what you think before you install it. Publishers can reply once per review, and a review can be edited or deleted by whoever wrote it.
Any signed-in account that does not publish Sprkly can review it, once — before installing it or after. A review from an account that has installed it is marked as one.
Nobody has reviewed this listing. The rating on the card is the mean of the reviews written here and nothing else, so there is no rating until somebody writes the first — which takes a signed-in account that does not publish it, and nothing else.