FabricFabricSDK

Getting Started

Two SDKs — Integrations for agent → vendor APIs, Portal for agent → Fabric.

The Fabric SDK comes in two parts:

SDKPackagePurpose
Integrations SDK@fabricorg/integrationsAgents call out to vendor APIs (Slack, Stripe, GitHub, etc.)
Portal SDK@fabric/mcp-serverAgents drive the Fabric portal itself (documents, projects, agents, workflows)

Pick the one that matches what your agent needs to do — most production setups use both.


Integrations SDK (@fabricorg/integrations)

A TypeScript-first plugin runtime: 15 built-in integration plugins, OAuth + webhook + permission lifecycles, multi-tenant entity storage, and an MCP server — all on top of @fabricorg/platform.

pnpm add @fabricorg/integrations @fabricorg/platform
import { createFabric } from '@fabricorg/integrations';
import { slack, stripe } from '@fabricorg/integrations/plugins';

export const fabric = createFabric({
  plugins: [
    slack({ botToken: process.env.SLACK_BOT_TOKEN }),
    stripe({ apiKey: process.env.STRIPE_API_KEY }),
  ],
});

const channels = await fabric.slack.api.channels.list({});
const customer = await fabric.stripe.api.customers.create({
  email: 'customer@example.com',
});

Type-checked end to end. Multi-tenant by default. See Plugin catalog for what's in the box.


Portal SDK (@fabric/mcp-server)

An MCP server that exposes the Fabric portal's core resources — agents call it via Claude Desktop, Cursor, Zed, or the portal's own chat. Same primitives the portal UI uses, available conversationally.

pnpm add -g @fabric/mcp-server   # registers the `fabric-mcp` bin

Configure Claude Desktop:

{
  "mcpServers": {
    "fabric": {
      "command": "fabric-mcp",
      "env": { "FABRIC_API_KEY": "fab_..." }
    }
  }
}

Then in any Claude conversation:

> What projects are open in the engineering org?
> Create a new spec doc titled "Webhook idempotency" in the payment-rails project.
> Ask the migration-planner agent to draft a phase plan.
> Trigger the nightly-reconcile workflow.

See Portal SDK overview for the full tool inventory.


Which do I need?

  • Building an agent that talks to 3rd-party APIs? → Integrations SDK.
  • Building an agent that lives on the Fabric portal and runs portal operations? → Portal SDK.
  • Both — agent reads a Fabric document, then posts a Slack summary? → Both. The Portal SDK gets the document; the Integrations SDK posts the message.

The two SDKs are designed to compose — they share the same authority/RBAC model, the same MCP transport, and the same identity scope (your FABRIC_API_KEY resolves to the same user across both).