← Files eksisARCHIVED FILE

plugin.json

7.77 KB · Nov 3, 2026 · 19:25 UTC

↓ Download file

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "eksis",
  "version": "1.2.0",
  "description": "Schedule, approve, and publish posts, answer comments and direct messages, run comment and DM automations, and read analytics on Instagram, TikTok, YouTube, LinkedIn, X, and more from your eksis workspace.",
  "author": {
    "name": "PT Eksis Karya Digital",
    "email": "support@eksis.io",
    "url": "https://eksis.io"
  },
  "homepage": "https://docs.eksis.io/en/mcp",
  "repository": "https://github.com/eksis-app/eksis-plugin",
  "license": "MIT",
  "keywords": [
    "social-media",
    "scheduling",
    "publishing",
    "marketing",
    "instagram",
    "linkedin",
    "tiktok",
    "youtube"
  ],
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "eksis",
        "shortDescription": "Schedule social media posts",
        "longDescription": "eksis is a social media scheduler for creators, small sellers, and teams. Connect Instagram, Facebook, Threads, TikTok, YouTube, LinkedIn, X, Bluesky, Pinterest, Google Business Profile, and DEV to one workspace, write a post once, and eksis adapts it to what each network accepts.\n\nWith this plugin you can:\n- See the connected channels and each network's rules: post types, caption and media limits, and whether comments and direct messages are available.\n- Draft a post for several channels at once, schedule it in the workspace time zone, add it to a channel's queue, or publish it right away.\n- Label AI-made content where a network asks for it, and invite collaborators to Instagram posts.\n- Import media from a public URL, use the team's saved snippets, and keep notes on the idea board.\n- Read and answer comments and direct messages.\n- See comment and DM automations and switch them on or off.\n- Read analytics for any period, per channel and per post type.\n\nEach call runs as the member who connected the workspace, with the same role and plan limits as the eksis app. A read-only connection cannot publish. Publishing runs in the background, and eksis reports the result for each channel.",
        "developerName": "PT Eksis Karya Digital",
        "category": "Business & Operations",
        "capabilities": [
          "Schedule and publish posts",
          "Check posts against each network's rules",
          "Reply to comments and direct messages",
          "Switch automations on or off",
          "Read analytics"
        ],
        "websiteURL": "https://eksis.io",
        "supportURL": "https://eksis.io/support",
        "privacyPolicyURL": "https://eksis.io/privacy",
        "termsOfServiceURL": "https://eksis.io/terms",
        "defaultPrompt": [
          "Show my connected channels and what each network accepts",
          "Draft a post for Instagram and LinkedIn and schedule it for Monday at 9am",
          "How did my posts perform this month?"
        ],
        "logo": "./assets/logo.png",
        "composerIcon": "./assets/logo.png"
      },
      "review": {
        "test_cases": {
          "positive": [
            {
              "description": "List the connected channels and what each network accepts",
              "prompt": "Which social accounts are connected to my eksis workspace, and what can each one post?",
              "tools_triggered": "list_channels",
              "expected_behavior": "Lists the two channels in the demo workspace, Instagram @eksis.demo and LinkedIn eksis-demo, with the content types each can publish and their caption and media limits, and notes that Instagram needs an image or video. Nothing is created or changed."
            },
            {
              "description": "Draft a post with a saved snippet and schedule it",
              "prompt": "Write a short LinkedIn post announcing our new cold brew, add our saved hashtag snippet, and schedule it for next Monday at 9am.",
              "tools_triggered": "list_channels, list_snippets, create_post",
              "expected_behavior": "Writes the caption, appends the pinned snippet \"#coffee #localcafe #freshroast\", and after the user confirms, creates one post for the LinkedIn channel with status scheduled for Monday 09:00 in the workspace time zone (Asia/Jakarta). The answer gives the scheduled time. Nothing is published during the conversation."
            },
            {
              "description": "Check a post against a network's rules without saving it",
              "prompt": "Before I schedule anything, check whether this text-only post works on Instagram: \"We are open late this Friday.\"",
              "tools_triggered": "list_channels, validate_post",
              "expected_behavior": "Runs the checks without saving and reports that Instagram does not accept a text-only post because it needs an image or video. It may suggest adding an image from the media library. No post is created."
            },
            {
              "description": "Explain why a scheduled post failed",
              "prompt": "Why did my \"Weekly tip\" post fail?",
              "tools_triggered": "list_posts, get_post",
              "expected_behavior": "Finds the post titled Weekly tip and reports that its Instagram target failed because the account needs to be reconnected (account.needs_reconnect), quoting the reason eksis recorded. Nothing is retried or changed."
            },
            {
              "description": "Save an idea to the idea board",
              "prompt": "Save an idea to my eksis idea board: a behind-the-scenes video of our morning roast.",
              "tools_triggered": "create_idea",
              "expected_behavior": "After the user confirms, saves one idea with that title at the top of the first column of the idea board (an unused board gets its default columns on the first save) and returns it. Nothing is posted or scheduled."
            }
          ],
          "negative": [
            {
              "description": "Writing caption ideas in the chat needs no eksis tool. The user did not ask to save, schedule, or publish anything, so the model should not create a post.",
              "prompt": "Give me five Instagram caption ideas for a coffee shop launching a cold brew.",
              "expected_behavior": "Answers with caption ideas in the conversation. No eksis tool is called and no post is created."
            },
            {
              "description": "Another account's data is out of scope. eksis only reads channels connected to the user's own workspace, so it should not be used to report on a competitor.",
              "prompt": "Show me the follower growth and top posts of @starbucks on Instagram.",
              "expected_behavior": "Explains that it cannot read another account's data. It may offer the workspace's own analytics instead. No data about the other account is fetched."
            },
            {
              "description": "Starting a new direct message is not something eksis can do. It only replies inside an existing conversation whose reply window is open, so reply_to_conversation should not be used to message a new person.",
              "prompt": "Send a direct message to @newcustomer on Instagram welcoming them to our cafe.",
              "expected_behavior": "Explains that eksis can only reply to an existing conversation and cannot start a new one. No message is sent."
            }
          ]
        },
        "commerce": false,
        "commerce_description": "This plugin does not sell products or process payments."
      },
      "publication": {
        "release_notes": "First release. Draft, schedule, approve, and publish posts across your connected channels, check a post against each network's rules before saving it, answer comments and direct messages, switch comment and DM automations on or off, keep ideas on the idea board, and read analytics, all from the chat."
      },
      "apps": "./.app.json"
    }
  }
}

SHA-256: 9871dbfc678f54b9b9d2533fa28ce163d8bced5d67bf8cc87fb535f81a2d3133