Using Claude as a Portfolio Org

How to scope Claude to a client, prompt correctly, and work cleanly across multiple accounts.

How it works

When Claude connects to On Belay, it loads your context automatically — who you are, what org you belong to, what you have access to. You don't need to tell Claude any of this.

What Claude does not know automatically is which client you're working on. Sessions don't pre-scope to a client. You declare that explicitly at the start of each session.

Credentials never leave On Belay. Claude calls through the proxy using the client's stored keys — it never sees them directly. Every action is logged against your org under that client's audit trail.

The startup sequence

1

Load your client list

List my clients

Returns every client org that has an active relationship with your portfolio.

2

Scope the session

Select [Client Name] as my current client

From this point forward, all integration calls use that client's credentials.

3

Confirm access

What integrations do I have for this client?

Returns only what the client has explicitly granted your portfolio — not everything they have connected.

4

Do the work

Prompt Claude for the actual task. Be specific about platform, timeframe, fields, and action.

What good prompts look like

Pulling customer data

Bad

Get me the recent customers.

Good

I've selected Acme Co as my current client. Pull the last 30 days of new customers from their Klaviyo account. I need email, first name, and the source they signed up from.

"Recent customers" is ambiguous. Which platform? What timeframe? What fields? Give Claude the specifics upfront.

Checking a product catalog

Bad

What products do they have?

Good

For Riverstone Supply — my current client — list their active Shopify products in the 'Outdoor Furniture' collection. I want title, status, and inventory count.

Without collection context Claude returns everything. Without status filtering you get drafts and archived listings.

Multi-step actions

Bad

Update the client's HubSpot with the new lead info.

Good

I've selected Blue Harbor as my current client. In their HubSpot, create a new contact: email [email protected], first name John, last name Smith, company Coastal Brands, lead source Partner Referral. Then enroll them in the New Partner Welcome sequence.

Multi-step actions need each step spelled out. Give Claude the exact field values and the exact action.

Research before action

Bad

Send a campaign to their list.

Good

For my current client, pull the subscriber segments from their Klaviyo account so I can see what lists exist. Don't send anything yet — I want to review before we decide which one to target.

Claude will attempt the action you describe. If you're not ready to execute, say so explicitly. Build in a review step before consequential sends, publishes, or updates.

Common mistakes

Not calling select_client before doing work

If you skip select_client and ask Claude to pull a client's Shopify data, one of two things happens: Claude uses your portfolio org's own integrations (probably not what you want), or it errors because you don't have that integration under your org at all. Always scope the session first. It takes one sentence.

Confusing your portfolio's integrations with the client's

Your portfolio org may have its own tools connected for internal work. Your clients have their own separate connections. After select_client, Claude switches to the client's credentials. Before select_client, you're working in your own context. Don't mix these up.

Under-specifying the task

"Analyze their HubSpot" is not a task. "Pull all open deals created in Q1 and summarize deal value by owner" is a task. The more ambiguous your prompt, the more Claude has to guess — and it will.

Expecting access the client hasn't granted

If a client hasn't granted your portfolio access to a specific integration, Claude can't use it. You won't get around this by prompting harder. If you need access to something that's missing, the client adds it in their On Belay dashboard under External Access.

Not confirming scope before starting

After select_client, run list_my_integrations before diving in. It takes five seconds and confirms exactly what you have access to. If something's missing, you find out before you're mid-task.

Switching clients mid-session

You can work across multiple clients in a single session. Call select_client each time you switch. There is no automatic clear.

If you worked on Client A and start asking about Client B without calling select_client again, Claude may still be scoped to Client A. Always switch explicitly.

If you're unsure which client is active, ask: "Which client is currently selected?" When you close a session, the scope clears. Each new session starts unscoped.

What Claude can and can't do

Can do

  • Access any integration the client has granted your portfolio
  • Call any operation within the client's granted scope
  • Log actions to the client's audit trail
  • Switch between clients within a session
  • Request human approval for high-risk operations

Can't do

  • Access integrations the client hasn't granted
  • Act outside the operation scope the client defined
  • See or store API credentials — credentials never leave On Belay
  • Act on behalf of a client before select_client is called
  • Access the client's org settings, group structure, or team

Quick reference

TaskWhat to say
See your clientsList my clients
Scope to a clientSelect [Client Name] as my current client
See what you have access toWhat integrations are available for this client?
Switch clientsSwitch to [New Client Name]
Confirm current scopeWhich client is currently selected?
Check before actingBefore making any changes, show me [X] first

Questions? Back to help or reach us at [email protected]