Getting started (for agents)
The agent-facing operating manual — MCP auth, what to connect, the full scoped tool catalogue, Ask Zero, credits, and the rules agents follow.
Updated 7/30/2026
connect0 — getting started (for agents)
What connect0 is
One secure hub where a company's data, tools, and agents connect and the work runs. You drive it over MCP (or REST); a first-party assistant can set things up conversationally. You choose what to connect — connect0 is not tied to any single tool.
Setup / authenticate
- MCP: connect
https://mcp.connect0.ai/mcp(Streamable HTTP), OAuth 2.1 + Dynamic Client Registration — discovery at the MCP Server Card/.well-known/mcp/server-card.json. - REST:
https://api.connect0.aiwith a personal/API token. - New here? Sign up: https://connect0.ai · Docs: https://connect0.ai/docs
When to use connect0 — discover first
Before hand-rolling an integration, discover what connect0 already does:
read the MCP Server Card, search the docs (connect0_search_docs), and
call connector.list / info. Prefer connect0's audited, scoped
connectors over bespoke API glue.
Choose what to connect
connect0 is not tied to any one tool — you decide what the agent should
reach. Start from the use case, then pick the source(s); you can
connect several. Common starting points (illustrative — call
connector.list or ask for the full, live catalogue):
| You want the agent to work with… | Connect | Example use case |
|---|---|---|
| Knowledge / docs | Notion, Confluence, Google Drive, a website | "Answer questions from our internal docs" |
| Conversations | Slack, Microsoft Teams, Gmail | "Triage the support inbox and draft replies" |
| Code | GitHub, GitLab | "Summarise new PRs and flag risky changes" |
| Data / records | Postgres, a warehouse, a CRM (HubSpot/Salesforce) | "Answer questions over our product database" |
| Custom / anything | any MCP server, or the REST/HTTP connector | "Reach an internal service we already run" |
These are starting points, not an exhaustive or fixed list. Don't assume a specific tool is required — name the outcome you want and connect whatever fits.
Core tools
Every tool is scoped; a token only does what its scopes allow (a viewer token is read-only).
| Tool | Purpose | Auth / scope |
|---|---|---|
whoami | Identify the caller + resolved scopes. | any valid token |
account.create | Create a connect0 account. | authenticated user |
project.create | Create a project inside an account. | account:write |
tags.list | List the account tag vocabulary with counts per kind. | mcp:read |
tags.for | The tags on one object, by its URI. | mcp:read |
tags.targets | Everything carrying a tag, with names and links. | mcp:read |
tags.apply | Add or remove tags on explicit target URIs. | mcp:write |
tags.merge | Merge one tag into another; the loser is deleted. | mcp:write |
tags.delete | Delete a tag nothing carries (a person; a tag in use is merged instead). | mcp:write |
proposals.list | Every open proposal on an account in one page: Ledger, Lists, Identity, Work, tags and Zero. | mcp:read |
proposals.get | One proposal by its queue and id. | mcp:read |
proposals.count | How many proposals on an account are waiting for a decision. | mcp:read |
proposals.decide | Confirm or reject a proposal; confirming is a person’s own session only, never an agent. | mcp:write |
events.types | Every event type the blocks declare, with its data schema. | mcp:read |
events.read | One page of the account’s block events, oldest first, with a per-block cursor. | mcp:read |
webhooks.list | The account’s webhook endpoints. | mcp:read |
webhooks.get | One webhook endpoint. | mcp:read |
webhooks.create | Create a webhook endpoint; a person’s own session only. The secret is shown once. | mcp:write |
webhooks.update | Change, enable or disable an endpoint; a person only. | mcp:write |
webhooks.rotate_secret | Rotate an endpoint’s signing secret; the old one signs for 24 hours. A person only. | mcp:write |
webhooks.delete | Delete a webhook endpoint; a person only. | mcp:write |
webhooks.list_deliveries | An endpoint’s deliveries with status, duration and response excerpt. | mcp:read |
webhooks.redeliver | Send a delivery again; a person only. | mcp:write |
webhooks.test | Send a signed platform.webhook.test now; a person only. | mcp:write |
products.list | The product catalogue: each skill collection with Included or its price in credits. | mcp:read |
products.entitlements | What the account owns: bought or granted products. | mcp:read |
products.buy | Buy a product with the account’s credits; an owner only — an agent’s call becomes a proposal. | mcp:write |
notifications.list | Your inbox across every block (an agent’s too), with the unread count. | mcp:read |
notifications.update | Mark your notifications read or unread, snooze or archive them. | mcp:write |
watches.list | What you watch, or who watches a subject. | mcp:read |
watches.set | Watch or unwatch a resource; naming another party is a person’s call. | mcp:write |
notification_preferences.get | Your channel per notification category. | mcp:read |
notification_preferences.set | Set your channel per category; the account default is an owner’s or admin’s. | mcp:write |
dashboard.get | Your dashboard on the account (an agent acting for you: yours), widgets in order. | mcp:read |
dashboard.catalog | The built-in cards and the approved apps a dashboard can hold. | mcp:read |
dashboard.add_widget | Add a card, a pinned search hit or an approved app to your dashboard — directly, no confirmation. | mcp:write |
dashboard.remove_widget | Remove a widget from your dashboard. | mcp:write |
dashboard.move_widget | Move a widget on your dashboard to a position. | mcp:write |
dashboard.arrange | Set your dashboard’s order (and remove widgets) in one write. | mcp:write |
dashboard.reset | Put your dashboard back to the starter layout. | mcp:write |
comments.list | The comment threads on any record (a Work issue, a list item, a person, a Ledger transaction, a file). | mcp:read |
comments.create | Comment on a record or reply in a thread; @[Name](party URI) notifies a member. | mcp:write |
comments.update | Edit your own comment, or resolve / reopen a thread. | mcp:write |
comments.delete | Delete a comment — a person only: the author, or an owner or admin. | mcp:write |
comments.react | Add your emoji to a comment or a record. | mcp:write |
comments.unreact | Take your emoji back. | mcp:write |
attachments.list | The files and links on a record. | mcp:read |
attachments.attach | Attach a media-library file (media_uri) or a link to a record. | mcp:write |
attachments.get | One attachment by id. | mcp:read |
attachments.detach | Remove an attachment — whoever added it, or an owner or admin. | mcp:write |
exports.create | Export a block’s data as a file: Work issues CSV / JSON, Ledger JET / SAF-T / FEC. | mcp:read |
exports.get | One export, with a 15-minute download link once it succeeded. | mcp:read |
exports.list | The account’s exports. | mcp:read |
imports.preview | Preview an import exactly (nothing written) and get the plan_id to apply. | mcp:write |
imports.apply | Apply a previewed import with its plan_id — a person’s act. | mcp:write |
imports.revert | Revert an applied import within the block’s window (Work: 14 days). | mcp:write |
imports.get | One import: its preview, result and state. | mcp:read |
imports.list | The account’s imports. | mcp:read |
search.query | Search everything in an account you can open — issues, list items, people, comments, files, tags, threads, agents — in one ranked page. | mcp:read |
audit.list | Read the account’s audit log — the platform and every block, newest first — filtered by owner, action, actor or record. | mcp:read |
parties.resolve | Resolve up to 100 party URIs to display names. | mcp:read |
parties.search | Search the e-mail, handle and provider parties the account knows. | mcp:read |
parties.annotate | Set the display name or avatar the account uses for an external party. | mcp:write |
parties.link | Merge an external party into another (confirm gate; a person decides). | mcp:write (owner/admin session) |
brain.search | Search what the company knows about itself; every hit has a status and a source. | mcp:read |
brain.ask | Ask the brain; an unanswered question is recorded as a gap. | mcp:read |
brain.propose | Propose a brain entry for a member to confirm. | mcp:write |
connector.add | Connect a data source or tool (OAuth / credential link). | connector:write |
connector.list | List connected sources + their status. | connector:read |
connector.refresh | Re-sync / re-auth a connector. | connector:write |
connector.remove | Disconnect a source. | connector:write |
info | Read account/project state + capabilities. | account:read |
sh | Run a sandboxed shell command in the workspace. | sandbox:write |
upload.create_link | Mint a link to upload a file into the workspace. | sandbox:write |
upload.write | Write bytes into the workspace. | sandbox:write |
media.create_upload | Upload a file into the media library; returns the media_uri blocks read. | mcp:write |
media.write | Write a small file into the media library; returns its media_uri. | mcp:write |
media.list | List a project's media library with preview state. | mcp:read |
media.get | A media file's properties: origin, where it is used, a preview URL. | mcp:read |
media.storage | Media storage against the plan's Storage Credits, and the overage price past them. | mcp:read |
media.regenerate_preview | Queue a media file's preview again. | mcp:write |
media.adopt_workspace_file | Make a workspace file a media-library item; returns its media_uri. | mcp:write |
media.list_account | The media library across every project of the account. | mcp:read |
media.rename | Rename a media file; its extension stays. | mcp:write |
media.star | Star or unstar a media file. | mcp:write |
media.list_collections | The smart collections: built-in and saved. | mcp:read |
media.create_collection | Save a smart collection (a name and filters). | mcp:write |
media.update_collection | Rename a smart collection or replace its filters. | mcp:write |
media.delete_collection | Delete a saved smart collection. | mcp:write |
download.create_link | Mint a link to download a workspace artifact. | sandbox:read |
web_fetch | Fetch + extract a public web page (vendor-free). | mcp:read |
datetime | Current date/time + UTC offset in any IANA timezone. | mcp:read |
billing.start_checkout | Start a credit purchase / checkout. | billing:write |
invite_member | Invite a teammate to the account. | account:admin |
echo | Echo a message back — verify the MCP connection. | any valid token |
connect0_search_docs | Search the connect0 docs; cited, token-bounded sections. | none (public docs) |
connect0_ask | Ask Zero, the account assistant; answers + confirmable proposed actions. | account:read |
connect0_setup | Run a guided setup playbook (connector, agent, spend cap, …) via Zero. | account:read |
connect0_confirm_action | Apply a Zero action proposed by connect0_ask / connect0_setup. | account:write |
connect0_usage_top_cost | Zero read: this month's top-cost agents. | account:read |
connect0_usage_by_model | Zero read: month-to-date spend by model. | account:read |
connect0_credits_balance | Zero read: the account's current credit balance. | account:read |
connect0_usage_forecast | Zero read: current-period cost by product, committed items to period end, projected month-end total with band, balance runway. | account:read |
connect0_run_explain | Zero read: explain one agent run — status, health, transcript. | account:read |
connect0_den_status | The den behind a thread — status, size, awake minutes today, portals, wake rules. | account:read |
connect0_den_wake | Wake the den behind a thread now (billed while awake). | account:write |
connect0_den_exec | Run a shell command on the den behind a thread (drivers; audited). | account:write |
connect0_errors_recent | Zero read: recent anomalies, cap rejections, provider incidents. | account:read |
connect0_connector_health | Zero read: last-refresh health of a project's connectors. | account:read |
connect0_chatgpt_connect | Connect your own ChatGPT plan via an OpenAI device code (signed-in users only; behind a flag). | authenticated user (not agents) |
connect0_chatgpt_status | Your ChatGPT plan connection, or one poll of a pending device code (signed-in users only). | authenticated user (not agents) |
connect0_chatgpt_preferences | Change how your ChatGPT plan is used: eligible models, and the two credit fallbacks (signed-in users only). | authenticated user (not agents) |
Blocks
Blocks are products an account turns on: Work, Ledger, Lists and Identity.
A block's tools appear on your connection once it is enabled for the account
(connect0_blocks_list shows what each costs; connect0_block_enable
turns one on, and its tools arrive on the same connection). Everything a
person can do to a block in the dashboard or over REST has a tool here.
Three things stay a person's: confirming a proposal, changing membership,
and acting as someone else — an agent proposes, and a person confirms in
the dashboard or in their own signed-in session (proposals.decide).
Block management
See what each block costs, enable or disable it (owner or admin; the confirm gate), and read its usage.
| Tool | Purpose | Auth / scope |
|---|---|---|
connect0_blocks_status | Zero read: feature blocks with state, prices, 30-day usage, and plan remedy. | mcp:read |
connect0_blocks_list | List feature blocks: state, prices in credits, 30-day usage, tools prefix. | mcp:read |
connect0_block_get | One feature block: state, prices, daily usage per operation, enable/disable history. | mcp:read |
connect0_block_enable | Enable a feature block for an account (owner/admin; plan-gated; confirm). | mcp:write (confirm gate) |
connect0_block_disable | Disable a feature block (owner/admin; data retained; confirm). | mcp:write (confirm gate) |
Work
Issues, teams, projects, cycles, triage, views and rules. Comments, attachments, watches and exports use the platform tools above.
| Tool | Purpose | Auth / scope |
|---|---|---|
work.list_issues | Issues you can read, by the typed filter grammar, keyset-paged. | mcp:read |
work.get_issue | One issue with sub-issues, relations, comments and history. | mcp:read |
work.search | Full-text search over issues and comments, ranked. | mcp:read |
work.list_views | The saved views you can see, with their stable keys. | mcp:read |
work.list_teams | The teams you can see — where every team_id comes from. | mcp:read |
work.get_team | One team with its states, labels and triage responsibility. | mcp:read |
work.run_view | A saved view’s working set, evaluated now. | mcp:read |
work.create_issue | Create an issue or sub-issue; intake a request from outside into triage. | mcp:write |
work.update_issue | Change an issue’s fields, labels and subscribers. | mcp:write |
work.comment | Comment on an issue or reply in a thread. | mcp:write |
work.propose_suggestion | Propose a change to an issue as a suggestion a person accepts. | mcp:write |
work.transition | Move an issue to a state (by id or category). | mcp:write |
work.assign | Name who does it — an agent needs an accountable human; grants no access. | mcp:write |
work.delete_issue | Trash an issue (a person; confirm gate). | mcp:write (confirm gate) |
work.merge_duplicate | Mark a duplicate of a canonical issue (a person; confirm gate). | mcp:write (confirm gate) |
work.bulk_update | One change to up to 250 issues (confirm gate). | mcp:write (confirm gate) |
work.restore_issue | Take an issue out of the trash (a person). | mcp:write |
work.relate | Relate two issues (blocks / related) or remove a relation (a person). | mcp:write |
work.triage | Accept, decline or snooze an issue in triage. | mcp:write |
work.list_triage | A team’s triage inbox and who answers it. | mcp:read |
work.manage_triage_responsibility | Set or clear who handles a team’s triage. | mcp:write |
work.create_team | Set up an account team for work (owner / admin, a person). | mcp:write |
work.update_team | Change a team’s key or settings. | mcp:write |
work.manage_states | Create, change or archive a team’s workflow states. | mcp:write |
work.manage_views | Save, change or delete a saved view. | mcp:write |
work.view_preferences | Read or set a saved view’s display preferences. | mcp:write |
work.list_automations | The account’s automations. | mcp:read |
work.list_automation_runs | An automation’s run log. | mcp:read |
work.manage_automations | Create, change or archive an automation (an agent proposes). | mcp:write |
work.list_sla_rules | SLA rules and the working days. | mcp:read |
work.manage_sla_rules | Create, change or archive an SLA rule (an agent proposes). | mcp:write |
work.set_working_days | The working days business-day SLAs count (owner / admin). | mcp:write |
work.list_projects | Projects and the project statuses. | mcp:read |
work.get_project | One project with milestones, updates, progress and documents. | mcp:read |
work.create_project | Create a project across teams. | mcp:write |
work.update_project | Change, re-team or archive a project. | mcp:write |
work.manage_project_statuses | Add a project status. | mcp:write |
work.manage_milestones | Create, change or delete a project milestone. | mcp:write |
work.post_update | Post a health update on a project or an initiative. | mcp:write |
work.list_cycles | A team’s cycles with the active, next and previous one. | mcp:read |
work.get_cycle | One cycle with its progress. | mcp:read |
work.manage_cycles | Rename, close or advance cycles (confirm gate). | mcp:write (confirm gate) |
work.list_initiatives | Initiatives, top level or one’s children. | mcp:read |
work.get_initiative | One initiative with its projects and children. | mcp:read |
work.manage_initiatives | Create or change an initiative, add or remove its projects. | mcp:write |
work.list_documents | The documents on a project, initiative, team, cycle or issue. | mcp:read |
work.manage_documents | Write or change a document. | mcp:write |
work.get_progress | A cycle’s or a project’s progress. | mcp:read |
Ledger
Double-entry books: post through templates, reconcile statements, close periods. Every write takes an idempotency_key.
| Tool | Purpose | Auth / scope |
|---|---|---|
ledger.create_entity | Spin up an entity with books, chart, and periods (per-account enable). | mcp:write (confirm gate) |
ledger.post_event | Post a business event via a posting template (dry-run mode). | mcp:write |
ledger.post_transaction | Post a raw journal transaction (dry-run + confirmation token). | mcp:write (confirm gate) |
ledger.list_transactions | List/search posted transactions (cursor-paginated). | mcp:read |
ledger.trial_balance | Trial balance for a book, materialised or computed. | mcp:read |
ledger.explain_balance | Decompose a balance into its contributing postings and rules. | mcp:read |
ledger.list_accounts | List a book’s chart of accounts, filterable by semantic role. | mcp:read |
ledger.close_period | Close a fiscal period (one-way, materialises balances). | mcp:write (confirm gate) |
ledger.run_revaluation | Revalue monetary FX balances at the closing rate. | mcp:write (confirm gate) |
ledger.run_consolidation | Run a multi-entity consolidation with eliminations and NCI. | mcp:write (confirm gate) |
ledger.list_proposals | List posting proposals awaiting review. | mcp:read |
ledger.approve_proposal | Approve and post a proposal (segregation of duties enforced). | mcp:write (confirm gate) |
ledger.reject_proposal | Reject a posting proposal with a reason. | mcp:write |
ledger.attach_reconciliation_evidence | Attach a media-library file to a reconciliation as evidence (hash from the stored file). | mcp:write |
ledger.create_template | Create an immutable posting-template version. | mcp:write |
ledger.test_template | Expand a sample event against a template — writes nothing. | mcp:read |
ledger.get_limits | Remaining posting-value budget for self-pacing. | mcp:read |
ledger.list_entities | Entities with their books — where every book_id comes from. | mcp:read |
ledger.list_periods | A book's period calendar with open / closed status. | mcp:read |
ledger.list_templates | The posting templates (event types post_event accepts). | mcp:read |
ledger.get_template | One posting template definition and its versions. | mcp:read |
ledger.register_unit | Register a unit of account (currency, crypto, points, commodity, quantity). | mcp:write |
ledger.list_units | The units the ledger can post in. | mcp:read |
ledger.create_fx_rate | Record a typed FX rate. | mcp:write |
ledger.list_fx_rates | List FX rates, newest first. | mcp:read |
ledger.delete_fx_rate | Delete an FX rate. | mcp:write (confirm gate) |
ledger.list_template_versions | A posting template's versions. | mcp:read |
ledger.create_entity_relationship | Record ownership or control between entities. | mcp:write |
ledger.list_entity_relationships | List entity relationships. | mcp:read |
ledger.create_consolidation_group | Create a consolidation group. | mcp:write |
ledger.list_consolidation_groups | List consolidation groups. | mcp:read |
ledger.get_consolidation_group | One consolidation group. | mcp:read |
ledger.create_elimination_rule | Add an elimination rule to a group. | mcp:write |
ledger.list_elimination_rules | A group's elimination rules. | mcp:read |
ledger.get_consolidation_run | A consolidation run's stored result. | mcp:read |
ledger.get_transaction | One transaction with its postings. | mcp:read |
ledger.get_transaction_provenance | Who or what authored a transaction. | mcp:read |
ledger.list_transaction_reversals | The transactions reversing or correcting one. | mcp:read |
ledger.reverse_transaction | Reverse a posted transaction (the only correction). | mcp:write (confirm gate) |
ledger.get_balance | One account's balance. | mcp:read |
ledger.run_report | P&L, balance sheet, cash flow, aged receivables or payables. | mcp:read |
ledger.create_open_item | Open a receivable or payable item. | mcp:write |
ledger.list_open_items | List open items. | mcp:read |
ledger.get_open_item | One open item with settled and remaining amounts. | mcp:read |
ledger.apply_settlement | Apply a payment to open items. | mcp:write |
ledger.write_off_open_item | Write off an open item. | mcp:write (confirm gate) |
ledger.net_open_items | Net a receivable against a payable. | mcp:write |
ledger.create_reconciliation | Start a reconciliation. | mcp:write |
ledger.get_reconciliation | A reconciliation with its items. | mcp:read |
ledger.ingest_statement | Ingest a camt bank statement (inline or a media file). | mcp:write |
ledger.run_matching | Run the matching cascade. | mcp:write |
ledger.list_match_candidates | Scored match candidates. | mcp:read |
ledger.accept_match_candidate | Accept a candidate as a match. | mcp:write |
ledger.list_matches | Durable matches on a reconciliation. | mcp:read |
ledger.unmatch | Undo a match. | mcp:write (confirm gate) |
ledger.add_reconciling_item | Add a reconciling item. | mcp:write |
ledger.compute_reconciliation_balances | Compute GL and supporting balances. | mcp:write |
ledger.transition_reconciliation | Move a reconciliation through its signed workflow. | mcp:write (confirm gate) |
ledger.create_feed_subscription | Create a change-feed subscription. | mcp:write |
ledger.list_feed_subscriptions | List change-feed subscriptions. | mcp:read |
ledger.delete_feed_subscription | Delete a change-feed subscription. | mcp:write (confirm gate) |
ledger.read_feed | Read change records after the cursor. | mcp:read |
ledger.acknowledge_feed | Advance a subscription's cursor. | mcp:write |
Lists
Structured lists fed by sources: sync, query, embed and rank. Embedding and ranking estimate first, then run with confirm.
| Tool | Purpose | Auth / scope |
|---|---|---|
list.lists | The lists of an account or a project, with counts, sources, embedding state and retention. | mcp:read |
list.get | One list with counts, storage, source kinds and retention. | mcp:read |
list.list_sources | The sources feeding a list, with the ids list.sync takes. | mcp:read |
list.create | Create a list with an optional JSON Schema hint, retention and its first items. | mcp:write |
list.add_items | Add items by hand (upsert by key; nothing is removed). | mcp:write |
list.sync | Run a source now (an agent proposes; a person runs it). | mcp:write |
list.query | Query items by text, semantic query, tags, JSON-path filters or a rank order (cursor-paginated). | mcp:read |
list.get_item | One item with its data, tags, rankings and party link. | mcp:read |
list.similar | The k nearest items by embedding. | mcp:read |
list.tag_by_filter | Tag items by ids or filter (an agent proposes; a person applies). | mcp:write |
list.promote | Link an item to a party (an agent proposes; a person confirms). | mcp:write |
list.unpromote | Clear the party link on an item. | mcp:write |
list.rank | Estimate or run a rank with a decision model against a rubric (an agent proposes). | mcp:write |
list.update | Rename a list, change its hint or retention (audited). | mcp:write |
list.delete | Delete a list (a person; confirm gate). | mcp:write (confirm gate) |
list.retention_preview | What a retention change would purge on the next sweep. | mcp:read |
list.update_settings | The account’s default retention for new lists (a person). | mcp:write |
list.create_source | Feed a list from an upload, a page or a connection, priced. | mcp:write |
list.update_source | Change a source’s schedule (cron, or manual only). | mcp:write |
list.delete_source | Remove a source; its items stay (confirm gate). | mcp:write (confirm gate) |
list.embedding_status | What embedding the pending items costs; the re-embed offer. | mcp:read |
list.embed | Embed a list — the estimate, then with confirm the run. | mcp:write |
list.drop_embeddings | Turn embeddings off; the vectors are dropped (confirm gate). | mcp:write (confirm gate) |
list.list_ranks | A list’s rank runs, newest first; paged. | mcp:read |
list.get_rank | A rank run’s state and its results, best first. | mcp:read |
list.rerun_rank | Resume a rank run — the estimate, then with confirm the run. | mcp:write |
list.propose | Propose a promote, rank or sync for a person to confirm. | mcp:write |
Identity
People and organisations: find, propose records and merges, manage channels and properties. An agent proposes; a person confirms.
| Tool | Purpose | Auth / scope |
|---|---|---|
identity.find | Find people/organisations by name, channel, organisation or role, with confidence. | mcp:read |
identity.get | One record with channels, consent, relationships, properties and a timeline. | mcp:read |
identity.list_people | People filtered by text, stage, status, organisation; paged. | mcp:read |
identity.list_properties | The declared properties identity.upsert accepts. | mcp:read |
identity.upsert | Propose a person/organisation or an edit (a person writes directly). | mcp:write |
identity.link | Link a person to an organisation with a role and dates (agents propose). | mcp:write |
identity.propose_merge | Propose that two records are one, with evidence. | mcp:write |
identity.erase | Erase a person on request, with the retention report (a person; confirm gate). | mcp:write (confirm gate) |
identity.directory | Every party the account has seen, with its record; paged. | mcp:read |
identity.timeline | A party’s activities timeline over its merged URIs; paged. | mcp:read |
identity.list_organisations | Organisations by text, stage and status; paged. | mcp:read |
identity.promote_party | A seen party becomes a person record (agents propose). | mcp:write |
identity.add_channel | Add an e-mail, phone, handle or address, with consent. | mcp:write |
identity.update_channel | A channel’s label, primary, verified or consent state. | mcp:write |
identity.remove_channel | Remove a channel (confirm gate). | mcp:write (confirm gate) |
identity.list_merges | Confirmed and reversed merges, newest first; paged. | mcp:read |
identity.reverse_merge | Reverse a merge forward (a person; confirm gate). | mcp:write (confirm gate) |
identity.put_property | Declare or update a property (owner or admin). | mcp:write |
identity.delete_property | Remove a property and its values (owner or admin; confirm gate). | mcp:write (confirm gate) |
identity.get_settings | The account’s Identity settings. | mcp:read |
identity.update_settings | Change the settings (owner or admin); an agent changing agent_edits proposes it. | mcp:write |
identity.erasure_reports | What each erasure redacted and retained; paged. | mcp:read |
Getting-started workflow
- Authenticate (MCP OAuth or a REST token); confirm with
whoami. - Decide the job + source — see "Choose what to connect". Pick the outcome you want (e.g. "answer questions from our Slack") and the source it needs.
- Create the workspace —
account.create/project.createif you don't have one yet. - Connect your chosen source —
connector.add(OAuth / credential link); verify withconnector.list. Same flow whichever tool you pick. - Do the work — run commands in the sandbox (
sh), fetch web context (web_fetch), move files (upload.*/download.*). - Mind credits — check your balance and set a spend cap before large operations.
Ask Zero (conversational control)
Zero is connect0's built-in, account-scoped assistant. Instead of orchestrating individual tools, you can drive setup and diagnosis conversationally:
connect0_ask— ask anything about the account ("why did last night's run fail?", "connect our Slack"); Zero answers with read tools and returns proposed actions for anything that mutates.connect0_setup— run a guided playbook (connector, agent, spend cap, …).connect0_confirm_action— apply a proposed action. Zero never mutates without this explicit confirm hop — the rules below still hold.- Read shortcuts:
connect0_credits_balance,connect0_usage_forecast,connect0_usage_top_cost,connect0_usage_by_model,connect0_run_explain,connect0_errors_recent,connect0_connector_health.
Worked flow: connect0_ask "set a $50 monthly spend cap" → Zero
returns a proposed action with an id → show the human → on their yes,
connect0_confirm_action with that id.
Example flows
- Zero-to-working —
whoami→account.create/project.create→connector.addyour source →infoto confirm → runsh. - Connect a data source (your choice) — pick the source for your use
case (Slack for support triage, GitHub for PR review, Notion/Drive for
docs Q&A, Postgres for data questions) →
connector.add→ verify withconnector.list. The connector flow is identical whichever you choose. - Bring your own tool — connect any MCP server or the REST/HTTP
connector via
connector.addto reach an internal service. - Mind spend — check credit balance, set a spend cap, then invoke.
Cost & limits
Actions burn credits at published rates. Every account starts on the Free
plan. Check your balance; set a spend cap; start conservative. Storage and agent runs are metered. Purchase
credits via billing.start_checkout. Bring-your-own-key (BYOK) bills
only a small orchestration fee instead of model tokens. Full model:
https://connect0.ai/docs/pricing (plans, packs, per-unit rates,
platform vs BYOK).
Troubleshooting
- Not authenticated — (re)connect MCP OAuth or supply a REST token;
whoamishould resolve. - Missing scope — your token lacks the scope the tool needs (see the Auth column); mint a token with the right scope.
- No connector bound —
connector.addthe source before the agent can read it. - Spend-cap hit — raise the cap (with confirmation) or wait for the window to reset.
Rules for agents
- Discover first — read the Server Card +
connector.list/infobefore assuming a capability exists. - Never mutate without an explicit user confirm — writes/destructive tools need human sign-off.
- Respect scopes / ACL — a viewer token is read-only; don't try to escalate.
- Mind credits — check the balance before large operations.
- Start from the use case, not a tool — connect whatever fits the job; don't hard-code one connector.
- On
blocked/ insufficient-scope, escalate to the human — don't retry blindly.
What this does not do
- Agents cannot change member roles, act as another user, or approve a gated action — three deliberate walls, not gaps.
- Every mutation goes through a confirmation; there is no way to disable that per agent.
- Tokens are scoped; a read scope never mutates, and scopes are not upgraded on request.
- Unknown tool arguments are refused with `unknown_field`, never guessed at.
Ask Zero
Ask a question about connect0 and get an answer grounded in the docs, with links to the sources. Signed in? Zero answers with your account in mind.