Skip to main content

Integrations Overview

Connect external tools and platforms to Zihin by invoking agents. Every integration — a no-code connector, a custom backend, or an embedded product — calls a hosted Zihin agent, not a raw LLM.

The principle: external input = agent invocation​

When something outside Zihin needs intelligence, it invokes an agent. The agent runs the full loop on Zihin's side — tools, MCP, memory, multi-step reasoning — under your tenant's RBAC, quota, HITL and audit. You send a message and get a governed result; you never wire up models, prompts, or tool execution yourself.

External platform ──▶ Zihin agent (react loop: tools · MCP · memory · HITL)
(n8n, Zapier, under tenant RBAC · quota · audit
your backend…) ◀── result (content, usage, session, sources)
Agents vs. the LLM API

This pattern is about agents (/api/v2/agents/:id). If you only need a stateless model call or media processing, see the LLM API instead. New integrations should prefer agents.

The shared core: @zihin/agent-client​

Every connector is a thin shell over one core package — @zihin/agent-client. It hides the transport (SSE streaming, async triggers) behind a small, governed API and is the reference client for any integration.

import { createClient } from '@zihin/agent-client';

const zihin = createClient({ apiKey: process.env.ZIHIN_API_KEY }); // zhn_live_*
const res = await zihin.invokeAgent({ agentId, message: 'Summarize this order' });

Choose your path​

PathUse it whenStart here
No-code connectorYou automate in a workflow tooln8n · Activepieces · Zapier
SDK / your backendYou build a custom app or service (Node, serverless)@zihin/agent-client
AI IDE / MCPYou connect Claude Desktop, Cursor, Codex…MCP Server

Platform support​

PlatformStatusHow it connects
n8nAvailableZihin Agent node (community node) over the core
ActivepiecesAvailable (npm)Zihin piece (Invoke Agent action) over the core
ZapierComing soonZapier app (Invoke Agent) over the core
Custom backendAvailable@zihin/agent-client (Node ≥ 18)
MakePlannedDeclarative — needs the synchronous JSON endpoint
AI IDEs (MCP)AvailableMCP Server
info

The core and connectors are published on npm: @zihin/agent-client 0.4.0, n8n-nodes-zihin 0.9.0, @zihin/piece-zihin 0.3.0. Marketplace listings (n8n verified node, Activepieces marketplace, Zapier) are in progress.

Why the same core everywhere

A single, tested client means every platform inherits the same behavior: governed invocation, streaming, session continuity, retry/timeout safety, SSRF protection and sanitized errors.

What you need​

  1. An agent. Create one in the console or via the Agents API. You invoke it by its agentId.
  2. An API key. zhn_live_* (or zhn_test_*) from Settings → API Keys. The tenant is embedded in the key. Direct invocation works with any role; provisioning async triggers needs an admin/editor key. See Authentication.

Security model​

  • Governed by the agent — every call runs under the agent's RBAC, quota and audit; HITL pauses are surfaced back to the caller (rolling out per platform).
  • Key handling — the key is sent only to Zihin hosts. Connectors keep an explicit Allow custom base URL opt-in (off by default) so the domain whitelist stays on unless you deliberately target a private deployment.
  • Sanitized errors — failures never leak the key or stack; they carry a requestId for support.

Next: pick a connector above, or read the Agent Client SDK reference.