Taisly Social Media Posting

io.github.taislyPublished by GitHub account taislyv0.2.10Updated Oct 26, 2026

Publish videos to TikTok, Reels, Shorts, X, and Facebook through Taisly.

VerifiedStreamable HTTPWeb executableCommunication & CollaborationMedia & Design

Overview

AI-generated overview

Taisly lets an assistant publish short-form videos to TikTok, Instagram Reels, YouTube Shorts, X and Facebook through connected Taisly accounts.

What you can do
  • Check authentication, run agent setup and checkin, and list connected social accounts
  • Inspect per-platform posting options and start or check connecting a social account
  • Validate a video post and create it now or on a schedule, with per-platform settings
  • List posts and reposts, check post status, and create reposts between accounts
When to use it
Use it when an agent already writes captions or plans a campaign and needs to actually publish or schedule short-form video to several social platforms without building each integration. It suits coding agents and content workflows that end in a live post.
Requirements
Either the remote endpoint with OAuth, or the npm package run locally over stdio with Node.js. A Taisly account with connected social accounts is required; the local package can store a credential via browser setup or use the TAISLY_API_KEY environment variable. Remote MCP can only publish from public video URLs; local files need the local server or CLI.
Before you install
Publishing is a live, public action: posts create requires confirmed set to true only after the user approves the video, accounts, caption and schedule. The local setup stores a credential in a config file, and TAISLY_API_KEY is a secret. Posts, reposts and scheduled publishing act on real social accounts and are subject to platform rules; paid plans exist for higher volume.

Installation

In SourceWeft

  1. Open Taisly Social Media Posting in the dashboard and add it to a workspace.
  2. Connect the required credentials. They are stored privately and never shown on public pages.
  3. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.taisly%2Fagent/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config. The client completes OAuth sign-in on first connect.

{
  "mcpServers": {
    "taisly-social-media-posting": {
      "type": "http",
      "url": "https://app.taisly.com/mcp"
    }
  }
}

README

[Taisly Agent Kit: AI agent social media posting for TikTok, Instagram Reels, YouTube Shorts, X, and Facebook]

Taisly Agent Kit

[Taisly MCP server] [Taisly MCP score]

Free AI-first social media posting for short-form video. Taisly Agent Kit is a JSON-first SDK, CLI, Agent Skill, and MCP server that lets AI agents, developer tools, and automation workflows publish videos to TikTok, Instagram Reels, YouTube Shorts, X, Facebook, and other connected social platforms through Taisly.

Use it when your agent can create content, write captions, or prepare a campaign, but still needs a reliable video publishing API to put that content online. The package is free to install and designed to get an agent from idea to published video without building every platform integration yourself.

Website | Agent Kit | API Docs | npm | GitHub | MCP Registry | Glama | Guide

Languages

Read this guide in: English, Español, Deutsch, Français, Português, ไทย, 中文, Bahasa Indonesia, Русский, Nederlands, 한국어, 日本語, العربية, Türkçe, Polski.

Why developers use it

  • Build AI agent social media posting into Codex, Claude Code, Cursor, OpenClaw, and custom automation tools.
  • Automate video publishing from one local file to multiple connected social accounts.
  • Give agents a safe JSON workflow: discover accounts, validate payloads, create posts, and check status.
  • Add TikTok API posting automation, Instagram Reels automation, YouTube Shorts publishing, and cross-platform social media automation without building every platform integration yourself.
  • Start free, then upgrade only when the publishing workflow grows.

Taisly handles the connected accounts and posting execution. Your agent handles planning, caption writing, campaign logic, or workflow orchestration.

Optional local workflows

  • Install the package for free.
  • Create or connect a Taisly account from your AI agent.
  • Let the agent authenticate, connect social accounts, validate videos, and publish through a JSON-first workflow.
  • Upgrade later when you need higher-volume publishing, larger account sets, or automatic repost workflows.

No credit card is required to get started. Paid plans are for teams and workflows that need more scale.

Agent Skill

This package includes the Taisly Social Media Posting Skill in SKILL.md. Use it with Claude Code, Codex, Cursor, OpenClaw, and other agents when you want the agent to understand the safe posting workflow before it touches live social accounts.

Recommended skill workflow:

txt
auth -> platforms -> validate -> confirm -> create -> status

The skill tells agents to discover connected accounts, validate the post, ask for explicit user confirmation, create the post, and save the returned historyId for status checks.

Codex plugin

This package includes a Codex plugin manifest in .codex-plugin/plugin.json. The plugin points Codex to the canonical SKILL.md file and the official remote MCP server:

txt
https://app.taisly.com/mcp

Use the plugin when you want Codex to discover both the posting workflow instructions and the Taisly MCP tools from one package. The root SKILL.md is the single source of truth for the agent workflow.

Connect an AI agent through remote MCP

Remote MCP is the default AI-agent connection. If Taisly tools are already available, call taisly_auth_status and taisly_platforms_list directly. OAuth provides access; do not install this package or ask for an API key for that connection.

txt
Help me connect Taisly to this agent using the setup guide. Check access and list my connected social accounts. Do not publish anything during setup.
Full documentation: https://docs.taisly.com/docs/mcp

The remote server URL is https://app.taisly.com/mcp. Add it through your client's remote MCP and OAuth settings if needed. Human authorization or administrator approval may be required. On expiry, reconnect through OAuth rather than switching to the CLI.

Optional local package installation

Use the following package instructions for explicit SDK, CLI or local-file workflows. They are not remote MCP setup requirements.

bash
npm install -g @taisly/agent

Or run it without a global install:

bash
npx @taisly/agent help

Start the stdio MCP server:

bash
npx @taisly/agent mcp

For local development inside this repository:

bash
node packages/agent/src/cli.js help

Local package authentication

For the local package, browser setup can store a local credential without manually copying an API key. Use any short agent slug, for example claude-code, codex, cursor, windsurf, openclaw, hermes-agent, cline, or aider.

txt
Help me set up Taisly Agent Kit.
1. Install the CLI: npm i -g @taisly/agent2. Run taisly setup --agent <agent-slug> and send me the login URL so I can finish authentication.3. Wait for me to finish login in the browser.4. Run taisly checkin --agent <agent-slug>.5. Tell me if Taisly is connected and ready. If not, tell me what failed.
If you cannot install or run the Taisly CLI in this environment, stop and tell me to open Taisly Settings instead.

The setup command stores a local Taisly agent credential, so later CLI and MCP commands can run without manually copying an API key.

Manual fallback: create an API key in Taisly Settings, then set:

bash
export TAISLY_API_KEY="taisly_..."

Advanced: by default, the browser setup stores the local credential in ~/.taisly/config.json. Most users should not change this. Set TAISLY_CONFIG_HOME=/path/to/dir only for CI, tests, or isolated agent profiles that need a separate credential store.

Quick start

List the connected social accounts available to the API key:

bash
taisly auth:statustaisly platforms:list

Connect a social account from an AI-agent flow:

bash
taisly platforms:connect:start --platform instagram# Open the returned connectUrl and finish authorization in the browser.taisly platforms:connect:check --platform instagramtaisly platforms:list

Supported connect slugs: instagram, tiktok, youtube, x, facebook.

Validate a local video before publishing:

bash
taisly posts:validate \  --video ./launch.mp4 \  --platforms platform_id_1,platform_id_2 \  --description "Launch day"

Publish now:

bash
taisly posts:create \  --video ./launch.mp4 \  --platforms platform_id_1,platform_id_2 \  --description "Launch day"

Schedule for later:

bash
taisly posts:create \  --video ./launch.mp4 \  --platforms platform_id_1,platform_id_2 \  --description "Launch day" \  --scheduled "2026-06-14T09:00:00+07:00"

Check the returned post:

bash
taisly posts:status --id <historyId>

Posting settings

Discover supported options and accepted values for each destination platform:

bash
taisly platforms:schema --platform TikToktaisly platforms:schema --platform YouTube

Group options by platform name in settings. For example:

bash
taisly posts:create \  --video ./launch.mp4 \  --platforms your_tiktok_platform_id,your_youtube_platform_id \  --description "Product walkthrough" \  --settings '{"TikTok":{"status":"PUBLIC_TO_EVERYONE"},"YouTube":{"title":"Product walkthrough","status":"unlisted"}}'

With --json, put the same object in the input file's settings property. SDK calls accept settings as an object. For remote or local MCP, discover options with taisly_platform_schema and pass settings to both taisly_posts_validate and taisly_posts_create. The HTTP API accepts a JSON-encoded settings form field.

PlatformSettingsMeaning
TikTokstatusPUBLIC_TO_EVERYONE, MUTUAL_FOLLOW_FRIENDS, FOLLOWER_OF_CREATOR, or SELF_ONLY, subject to the account's available visibility options.
TikTokcomment_disabled, duet_disabled, stitch_disabledBoolean switches; true disables the interaction.
TikTokbrand_content_toggleBoolean; discloses a paid partnership promoting a third-party business. Cannot be combined with SELF_ONLY.
TikTokbrand_organic_toggleBoolean; discloses promotion of the creator's own business. Both brand switches may be enabled together.
TikTokis_aigcBoolean; true enables the native AI-generated content label. Omit to keep existing behavior, or explicitly pass false.
YouTubetitleOptional video title, up to 100 characters. Omit to use the post caption.
YouTubestatuspublic, private, or unlisted.

For example, a public TikTok post promoting your own business and an unlisted YouTube post with its own title can share one request:

json
{  "settings": {    "TikTok": {      "status": "PUBLIC_TO_EVERYONE",      "brand_organic_toggle": true,      "comment_disabled": false    },    "YouTube": {      "title": "Product walkthrough",      "status": "unlisted"    }  }}

These settings work with --settings, --json, SDK calls, and both MCP servers, for immediate and scheduled posts. They apply to all selected accounts on the corresponding platform. Omitted fields keep the usual posting behavior. These options apply only to the requested post. TikTok account restrictions still apply.

Every command prints JSON so agents can parse results without scraping terminal text.

MCP server

Taisly is published in the official MCP Registry as:

txt
io.github.taisly/agent

Display name: Taisly Social Media Posting

Remote MCP endpoint:

txt
https://app.taisly.com/mcp

The remote MCP server uses streamable HTTP and OAuth. Remote MCP tools can publish only from public videoUrl values because they cannot read local files from your machine.

Codex remote MCP setup:

bash
codex mcp add taisly --url https://app.taisly.com/mcpcodex mcp login taisly

Claude Code remote MCP setup:

bash
claude mcp add --transport http taisly https://app.taisly.com/mcp

Then ask Claude Code to verify the connection. If OAuth is needed, Claude Code can guide the browser login from the session. You can also authenticate explicitly with claude mcp login taisly if you want to complete the OAuth flow from the shell before using tools.

Taisly Agent Kit also includes a local stdio MCP server in the same package. Use local MCP when your agent needs to read local video files:

json
{  "mcpServers": {    "taisly": {      "command": "npx",      "args": ["@taisly/agent", "mcp"]    }  }}

If you already use a manual API key, you can still pass TAISLY_API_KEY in the MCP server env block.

Codex local MCP setup:

bash
codex mcp add taisly -- npx @taisly/agent mcp

Claude Code local MCP setup:

bash
claude mcp add taisly -- npx @taisly/agent mcp

Then ask the agent:

txt
Use the local Taisly MCP server you just added and run the Taisly agent setup start tool with agentId: "<agent-slug>".
Send me the login URL and wait for me to finish in the browser.Then run the Taisly agent checkin tool with agentId: "<agent-slug>".After checkin, run the Taisly auth status tool.Tell me if Taisly is connected and ready. If not, tell me what failed.

Available MCP tools:

  • taisly_agent_setup_start
  • taisly_agent_checkin
  • taisly_auth_status
  • taisly_platforms_list
  • taisly_platform_schema
  • taisly_platform_connect_start
  • taisly_platform_connect_check
  • taisly_posts_validate
  • taisly_posts_create
  • taisly_posts_status
  • taisly_posts_list
  • taisly_reposts_list
  • taisly_reposts_create

taisly_posts_create requires confirmed: true. Set it only after the user explicitly approves the video, destination accounts, caption, and schedule.

JSON workflow for agents

Agents can write a payload file and pass it to the CLI:

json
{  "video": "./launch.mp4",  "platforms": ["platform_id_1", "platform_id_2"],  "description": "Launch day. Short demo, big update.",  "scheduled": "2026-06-14T09:00:00+07:00"}

Then run:

bash
taisly posts:validate --json ./campaign.jsontaisly posts:create --json ./campaign.json

The video path must point to a real local file available to the agent. Supported local preflight extensions are .mp4, .mov, .avi, .mkv, .webm, .flv, .mpeg, and .mpg.

Commands

bash
taisly auth:statustaisly setup --agent <agent-slug>taisly checkin --agent <agent-slug>taisly platforms:listtaisly integrations:listtaisly platforms:schema --platform TikToktaisly posts:validate --video ./launch.mp4 --platforms platform_id_1 --description "Launch day"taisly posts:create --video ./launch.mp4 --platforms platform_id_1 --description "Launch day"taisly posts:create --json ./campaign.jsontaisly posts:list --page 1taisly posts:status --id <historyId>taisly reposts:listtaisly reposts:create --from <platform_id> --to <platform_id_1,platform_id_2>taisly mcp

integrations:* commands are aliases for platforms:* commands. Taisly calls connected social accounts platforms in the app, while many public APIs call them integrations.

SDK

js
import { Taisly } from "@taisly/agent";
const taisly = new Taisly({  apiKey: process.env.TAISLY_API_KEY,});
const platforms = await taisly.platforms.list();
const validation = await taisly.posts.validate({  video: "./launch.mp4",  platforms: [platforms.data[0].id],  description: "Launch day",});
const post = await taisly.posts.create({  video: "./launch.mp4",  platforms: [platforms.data[0].id],  description: "Launch day",  scheduled: "2026-06-14T09:00:00+07:00",});
console.log(validation.success);console.log(post.historyId);

Use with AI agents

Taisly Agent Kit is designed for agentic workflows where the user gives a high-level instruction and the agent executes a safe posting path.

  • Codex: let a coding agent publish demo videos, launch clips, or build updates after user confirmation.
  • Claude Code: add social posting to local content workflows and campaign scripts.
  • Cursor: ship video publishing from developer tools, content apps, and internal automation.
  • OpenClaw and other agents: connect planning, caption writing, and posting execution through a single CLI.

Recommended agent path:

txt
auth:status -> platforms:list -> platforms:schema -> posts:validate -> user confirmation -> posts:create -> posts:status

Agent recipes

The examples/ folder includes copy-paste workflows for common coding agents:

  • examples/codex/post-video.md
  • examples/claude-code/schedule-video.md
  • examples/cursor/post-build-demo-video.md
  • examples/post-video.sh
  • examples/schedule-video.sh

What this package is not

  • It is not a social media dashboard.
  • It is not a video editor.
  • It does not replace a Taisly account.
  • It requires connected social accounts and a Taisly agent credential or API key.
  • It does not bypass platform rules, account permissions, or media validation.

Current limits

  • posts:create uses the existing multipart /post API.
  • posts:status reads recent history because a single-post status endpoint is not available yet.
  • posts:validate is local preflight; final validation still happens in Taisly.
  • Local MCP uses stdio transport. Remote MCP uses streamable HTTP at https://app.taisly.com/mcp.
  • Remote MCP requires public video URLs; use local MCP or the CLI for local video files.
  • Media upload reuse is planned later.

Links

Source: README.md at commit 2f2c3dd

Tools

0
This server asks you to sign in, so SourceWeft could not read its tools without an account and has not indexed them. What a connected account sees can depend on that account and its permissions.

Version history

3
  1. v0.2.10LatestOct 22, 2026
  2. v0.2.9Oct 3, 2026
  3. v0.2.7Sep 16, 2026

Score

85% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts