Skip to Content

Plugins

A plugin connects an external service to the project’s agent. After you connect an account, Chat and automations can call the service’s tools: search a mailbox, read a Notion page, look up a Shopify order, query Axiom logs. Most plugins also install skills that teach the agent how to use the service well.

Plugins follow the Agent Plugins  standard. Each one bundles the service’s MCP server configuration, its authorization method and its skills. Flexkit installs plugins from a reviewed, open-source catalog at github.com/flexkit-io/plugins  and never loads plugin code directly from a vendor.

Connect a plugin

  1. In Studio, open AI → Plugins and select the plugin.
  2. Choose Connect. When the plugin supports both scopes, choose a Project or Personal account (see project and personal accounts).
  3. Complete the authorization the plugin asks for:
    • Sign-in. A popup opens the service’s own consent page. Sign in, review the requested access and approve it. Flexkit never sees your password.
    • Token. Paste a token you create in the service, such as a Tinybird token. The plugin page links to the service’s instructions for creating one.
    • App credentials. Enter the credentials of an app you create in the service. For Shopify, create an app in the Shopify Dev Dashboard with the Admin API access scopes the agent should have, install it on your store, and enter the store’s myshopify.com domain, the Client ID and the Client secret. A custom app created in the Shopify admin before 2026 can use its Admin API access token instead.
  4. Back on the plugin page, confirm the account under Connected accounts and review Included tools, the tools the service exposes to this account.

You can also connect from a conversation. When you ask Chat for something a plugin can do and no account is connected yet, the agent shows a connect card; authorize there and the agent continues with your request.

The agent gets exactly the access you grant. Give the token, app or account the narrowest permissions that support the work: a read-only Axiom role, Shopify read_* scopes only, a Tinybird JWT scoped to selected endpoints. Add write access only when the agent should change data in that service.

Project and personal accounts

ScopeWho can connect itWho can use it
ProjectProject owners and developers.Project members, in Chat and in project automations.
PersonalAny project member, unless the project disables personal connections for it.Only you, in your chats and your personal automations.

You can connect several accounts of the same plugin, for example two Shopify stores. Use the account menu to Rename an account, Make primary, Reconnect or Disconnect. Chat uses your primary personal account first and falls back to the primary project account. You can name the account in your request (“check the EU store”) when several are connected.

Use plugins in Chat

Every chat can use all connected plugins you are permitted to use, from the first message. There is nothing to enable per conversation. Ask in plain language: “find last week’s emails from our packaging supplier and summarize open issues”, or “compare this month’s Shopify refunds with last month’s”.

Each plugin call is screened before it runs. A clear, low-risk call that serves your request, such as reading your own mailbox, files or records in a connected account, runs without a prompt. Anything else waits for your decision in an approval card: writes, sending messages, moving money, changing permissions, or a call that does not clearly match what you asked. A tool’s own read-only label never grants permission by itself.

To bring plugin data into your Flexkit records, ask for it explicitly: “create a Supplier record for every vendor in the Notion Suppliers database”. Writes to Flexkit data go through the usual mutation review.

Use plugins in automations

Automations use only the plugin tools you attach to them.

  1. Open the automation and find Tools.
  2. Choose Plugin tools and select the plugin. Plugins without a connected account show Not connected; connect them first.
  3. Choose the account: the primary project account (the default), a specific project account, or your own account. Using your account makes the automation personal.
  4. Keep All tools (recommended) or select individual tools. With no tools selected the agent cannot use the plugin.

Plugin calls in an automation follow its mutation policy. With Auto-approve, attached plugin tools run without review. With Require approval, calls are screened like in Chat and anything not clearly low-risk waits in Approvals. When approving a call, choose Always allow this tool for this automation to stop asking for that tool in that automation.

Slack and Microsoft Teams appear in Tools as Send to Slack and Send to Microsoft Teams; see their pages for channel delivery.

Skills from plugins

A plugin’s skills appear under AI → Skills with a Plugin badge, named plugin-id/skill-name. They are read-only and update with the plugin. To adapt one, choose Edit a copy, which creates a personal Studio skill you can change.

Govern plugins

Project owners and developers manage plugin policy in Dashboard → project → Integrations. Each plugin has two settings:

  • Enabled. A disabled plugin cannot be connected or used in the project, and its skills are not offered to the agent.
  • Allow personal connections. When off, members cannot connect personal accounts; only project accounts are available.

The same page lists every project and personal connection with its status, who connected it and when. Revoke removes a connection; its stored credentials are erased once no other connection relies on them (the Google plugins share one Google grant). Owners and developers can revoke personal connections. The page shows each connection’s account name, but never its credentials or tool results.

Security

  • Credentials stay on the Flexkit platform, encrypted. The agent, Studio and automation runs never see tokens, client secrets or passwords; Studio shows only an account name or a token’s last four characters.
  • Each plugin may call only the endpoints its catalog entry declares. Redirects, oversized responses and credential headers in plugin metadata are rejected.
  • Before every call, Flexkit rechecks your membership, the plugin policy, the connection and the tool’s current definition. If a tool’s definition changes or an account is reauthorized, a pending approval has to be requested again.
  • If a call to the service fails without a clear outcome, Flexkit does not repeat it automatically. Check the result in the service before retrying.
  • Catalog changes to scopes, endpoints or skill instructions require review, and updates install only reviewed catalog versions.

Troubleshooting

SymptomWhat to check
An account shows Needs reconnectThe service rejected the credential: an expired token, revoked consent or changed app credentials. Choose Reconnect in the account menu.
Connect is missing or disabledProject accounts need an owner or developer. Personal connections may be disabled by project policy, or the plugin may be disabled.
Unable to discover toolsThe service did not return its tool list. Reconnect, check the account’s access in the service, and try again.
Google sign-in succeeds but tools failThe Google account may not be eligible for Google’s MCP Developer Preview, or consent for a required scope was not granted.
An automation reports the account missingThe selected account was disconnected or revoked. Select another account or connect again.

To connect a system that has no plugin, see the other options in integrations.

Last updated on