Skip to main content

Use Claude for Excel and PowerPoint with third-party platforms

Updated today

If your organization uses AWS Bedrock, Google Cloud Vertex AI, or an LLM gateway to access Claude, you can use the Claude for Excel and Claude for PowerPoint add-ins without a Claude account. The add-in connects through your organization's infrastructure, so your prompts and responses stay within your existing trust boundary.

There are three connection paths, depending on how your organization accesses Claude:

  • LLM gateway: The add-in sends requests to your gateway (LiteLLM, Portkey, Kong, etc.), which routes them to the provider of your choice. This is the same pattern used by Claude Code. If your organization already runs Claude Code through an LLM gateway, you can point the Office add-ins at the same endpoint—no new infrastructure is required.

  • Bedrock direct: The add-in authenticates through Microsoft Entra ID and calls AWS Bedrock directly, with no gateway in between.

  • Vertex AI direct: The add-in authenticates through Google OAuth and calls Vertex AI directly.

Your IT admin chooses the path during deployment. As an end user, the experience is the same regardless of which path your organization uses.


Requirements

Requirements vary by connection path.

All paths:

  • Claude for Excel or Claude for PowerPoint installed (from Microsoft AppSource or deployed by your admin)

  • Microsoft 365 with Entra ID (for admin consent and, in the direct-cloud paths, token issuance)

LLM gateway:

  • A gateway URL and API token from your IT team

Bedrock direct:

  • An AWS account with Claude model access enabled in the target region

  • An IAM OIDC identity provider and role configured to trust Microsoft Entra ID tokens

Vertex AI direct:

  • A Google Cloud project with the Vertex AI API enabled and Claude model access in the target region

  • A Google OAuth client configured with the add-in's redirect URI

Your organization's IT team manages these resources. If you don't have the credentials you need, contact them—Anthropic can't provide or reset them for you.


Network allowlist

The add-in needs to reach specific domains to function. Which domains depend on whether your organization uses the Anthropic API directly (1P) or a third-party platform (3P). Share the applicable table with your network or security team so they can allowlist these domains.

Important: In all configurations—including third-party—your prompts and Claude's responses travel only to your chosen inference provider (your gateway, Bedrock, or Vertex AI). The domains listed below that point to Anthropic (such as pivot.claude.ai) serve the add-in's interface, feature configuration, and operational telemetry. They don't carry prompt or response content.

Anthropic API (1P)

Use this table if people in your organization sign in with a Claude account and inference goes to api.anthropic.com.

Domain

Required when

Purpose

pivot.claude.ai

Always

Add-in host. Serves the task pane UI and proxies analytics, icon search, skill downloads, and telemetry.

claude.ai

Always

Anthropic OAuth sign-in and feature-flag evaluation.

api.anthropic.com

Always

Claude inference API, file uploads, code-execution containers, and the MCP connector registry.

appsforoffice.microsoft.com

Always

Microsoft Office.js runtime script. Required by every Office add-in.

o1158394.ingest.us.sentry.io

Optional

Crash and error reporting. Blocking this degrades diagnostics only; the add-in still works.

mcp-proxy.anthropic.com

If using MCP connectors

Proxy for MCP connector tool calls.

bridge.claudeusercontent.com

If using work across apps

WebSocket bridge for the work across apps feature.

Third-party platforms (3P)

Use this table if people in your organization sign in with Microsoft Entra ID and inference goes to your LLM gateway, Bedrock, or Vertex AI.

Domain

Required when

Purpose

pivot.claude.ai

Always

Add-in host. Serves the task pane UI and proxies analytics, icon search, and telemetry.

claude.ai/api/

Always

Feature-flag evaluation. No sign-in; the add-in only fetches its configuration from here.

appsforoffice.microsoft.com

Always

Microsoft Office.js runtime script (required by every Office add-in).

login.microsoftonline.com

Always

Microsoft Entra ID sign-in via Nested App Auth. Reads admin-provisioned gateway config and issues tokens for direct-cloud auth.

o1158394.ingest.us.sentry.io

Optional

Crash and error reporting. Blocking this degrades diagnostics only; the add-in still works.

Your LLM gateway URL

If using an LLM gateway

Your organization's LLM gateway (LiteLLM, Portkey, Kong, etc.). Inference goes here instead of api.anthropic.com.

sts.amazonaws.com

If using Bedrock direct

AWS STS. Exchanges the Entra ID token for temporary Bedrock credentials.

bedrock-runtime.<region>.amazonaws.com

If using Bedrock direct

Bedrock inference endpoint. Replace <region> with your configured AWS region (for example, us-east-1).

accounts.google.com

If using Vertex AI direct

Google OAuth consent screen.

oauth2.googleapis.com

If using Vertex AI direct

Google OAuth token exchange and refresh.

aiplatform.googleapis.com

If using Vertex AI direct

Vertex AI global inference endpoint.

<region>-aiplatform.googleapis.com

If using Vertex AI direct

Vertex AI regional inference endpoint. Replace <region> with your configured GCP region (for example, us-east5).


Deploy the add-in for third-party use (IT admins)

Use the claude-in-office plugin to configure and deploy the add-in across your organization. This tool handles provisioning cloud resources (if using Bedrock or Vertex AI direct), generating the add-in manifest, and obtaining admin consent in a single guided flow.

Use the setup wizard

Install the plugin and run the interactive setup wizard.

macOS and Linux:

curl -LO https://pivot.claude.ai/plugins/claude-in-office.zip
unzip claude-in-office.zip -d claude-in-office
claude --plugin-dir ./claude-in-office

Windows (PowerShell):

curl.exe -LO https://pivot.claude.ai/plugins/claude-in-office.zip
Expand-Archive claude-in-office.zip -DestinationPath claude-in-office
claude --plugin-dir .\claude-in-office

The wizard walks you through your connection path:

  • LLM gateway: Collects your gateway URL and token, generates the manifest, and handles Azure admin consent.

  • Bedrock direct: Creates the IAM OIDC identity provider and role, generates the manifest, and handles Azure admin consent.

  • Vertex AI direct: Walks you through creating the Google OAuth client, generates the manifest, and handles Azure admin consent.

When the wizard completes, the add-in is ready to deploy tenant-wide.

Note: The Bedrock and Vertex AI paths require Node.js for manifest generation and validation. The wizard checks for it and prompts you to install it if it's missing.

You can use the following commands inside a claude-in-office session:

Command

What it does

/claude-in-office:setup

Interactive wizard—provisions cloud resources, admin consent, writes manifest

/claude-in-office:manifest

Generates the customized add-in manifest XML

/claude-in-office:consent

Generates the Azure admin consent URL for the add-in's app registration

/claude-in-office:update-user-attrs

Writes per-user config via Microsoft Graph extension attributes

What the wizard provisions

The wizard automates resource creation based on your connection path. Here's what it sets up:

LLM gateway: No cloud resources to provision. The wizard collects your gateway URL and token, then generates the manifest.

Bedrock direct: Creates an IAM OIDC identity provider that trusts Microsoft Entra ID tokens, a role with bedrock:InvokeModel and bedrock:InvokeModelWithResponseStream permissions, and a trust policy scoped to the Claude add-in's application ID.

Vertex AI direct: Walks you through creating a Google OAuth client in the GCP Console (this step can't be automated via CLI), enables the Vertex AI API, and captures the client ID and secret for the manifest.

Per-user configuration

If some values vary per user—for example, different gateway tokens or different AWS roles for different teams—the wizard can write per-user configuration via Microsoft Graph extension attributes. Run /claude-in-office:update-user-attrs with the per-user keys after the initial setup.

Deploy to Microsoft 365

After the wizard generates your manifest:

  1. Open the Microsoft 365 Admin Center and go to Settings > Integrated Apps > Upload custom apps.

  2. Select “Office Add-in” as the app type, then upload the manifest.xml file.

  3. Choose who gets the add-in:

    • If all users share the same configuration, select “Entire organization.”

    • If you wrote per-user attributes in the previous step, assign to Specific users/groups matching exactly who was configured. Anyone else would open the add-in with no configuration.

  4. Accept permissions and finish deployment.

Propagation to users takes up to 24 hours (usually much faster). The add-in appears under Home > Add-ins in Excel and PowerPoint once it lands.

Note: Start with a pilot group to confirm the add-in works, then widen the assignment. You can change assignment later without redeploying.

After deploying the add-in, your users can connect by following the steps below.


Connection instructions for end users

LLM gateway

  1. Open Excel or PowerPoint and launch the Claude add-in.

  2. On the sign-in screen, select "Enterprise gateway."

  3. Enter the Gateway URL and API token your IT team provided.

    • Gateway URL: The HTTPS base URL of your LLM proxy (for example, https://llm-gateway.yourcompany.com).

    • API token: The bearer token your proxy expects. The add-in sends this in the Authorization: Bearer <token> header with every request.

  4. The add-in checks the connection by sending a test request to the gateway. If it succeeds, you'll see the main app experience.

Your credentials are stored locally in your browser's localStorage within the add-in's sandboxed iframe. They aren't synced to Anthropic's servers. Because the Office add-in runs inside a sandboxed iframe within the Microsoft application, it can't use your OS keychain the way Claude Code does—for this reason, only enter gateway-issued tokens, not raw cloud provider credentials.

Bedrock or Vertex AI direct

  1. Open Excel or PowerPoint and launch the Claude add-in.

  2. Sign in with your Microsoft work account. The add-in uses your Entra ID token to authenticate with your cloud provider—no separate cloud credentials are needed.

  3. The add-in reads the configuration your admin provisioned and connects to Bedrock or Vertex AI directly.

If you see an error at sign-in, confirm with your IT team that your account is in the group assigned to the add-in.

Change or update your connection

If your API token expires or your IT team gives you a new URL, go to "Settings" in the add-in sidebar, enter the new values, and select "Test connection."


Gateway requirements for IT teams

The Office add-ins only support the Anthropic Messages API format via the Unified endpoint. This is more specific than Claude Code, which also supports Bedrock InvokeModel and Vertex rawPredict formats directly.

Required endpoints

Your gateway must expose these two endpoints:

Endpoint

Description

/v1/messages

Send messages to Claude. Supports both streaming and non-streaming responses.

/v1/models

List available models.

Required headers

The gateway must forward the following request headers from the add-in to the upstream provider:

  • anthropic-beta — Enables beta features required by the add-in.

  • anthropic-version — Specifies the API version for request/response format.

Failure to forward these headers may result in reduced functionality or prevent the add-in from working.

Model discovery

On login, the add-in validates the token via GET /v1/messages and then attempts to discover available Claude models via GET /v1/models. If your gateway doesn't expose a model list at that path, the add-in falls back to prompting the user for a model ID manually.

Differences from Claude Code gateway setup

Aspect

Claude Code

Claude for Excel and PowerPoint

Supported API formats

Anthropic Messages, Bedrock InvokeModel, Vertex rawPredict

Anthropic Messages only (Unified endpoint)

Endpoint types

Unified and pass-through

Unified only

Credential storage

OS keychain or environment variables

Browser localStorage (sandboxed iframe)

Auth configuration

Environment variables, settings file, helper scripts

Manual entry in add-in UI (gateway) or Entra ID (direct cloud)

Token refresh

Supports helper scripts for rotation

Manual re-entry in settings (gateway) or automatic via Entra ID (direct cloud)

Custom model names

Configurable via environment variables

Not configurable in v1


Example gateway configuration with LiteLLM

Warning: LiteLLM PyPI versions 1.82.7 and 1.82.8 were compromised with credential-stealing malware. Do not install these versions. If you have already installed them:

  • Remove the package

  • Rotate all credentials on affected systems

  • Follow the remediation steps in BerriAI/litellm#24518

LiteLLM is a third-party proxy service. Anthropic doesn’t endorse, maintain, or audit LiteLLM’s security or functionality. This guide is provided for informational purposes and may become outdated. Use at your own discretion.

Many organizations use LiteLLM as their gateway. Below is a minimal litellm_config.yaml for routing Office add-in requests to Anthropic, Bedrock, or Vertex.

Routing to Anthropic directly

yaml

model_list:
- model_name: claude-sonnet-4-5-20250929
litellm_params:
model: claude-sonnet-4-5-20250929
api_key: os.environ/ANTHROPIC_API_KEY

litellm_settings:
drop_params: true

Routing to Amazon Bedrock

yaml

model_list:
- model_name: claude-sonnet-4-5-20250929
litellm_params:
model: bedrock/anthropic.claude-sonnet-4-5-20250929-v1:0
aws_region_name: us-east-1

litellm_settings:
drop_params: true

Routing to Google Cloud Vertex AI

yaml

model_list:
- model_name: claude-sonnet-4-5-20250929
litellm_params:
model: vertex_ai/claude-sonnet-4-5-20250929
vertex_project: your-gcp-project-id
vertex_location: us-east5

litellm_settings:
drop_params: true

Routing to Azure

yaml

model_list:
- model_name: claude-sonnet-4-5-20250929
litellm_params:
model: azure_ai/claude-sonnet-4-5-20250929
api_base: https://your-resource.services.ai.azure.com/anthropic
api_key: os.environ/AZURE_API_KEY
extra_headers:
x-api-key: os.environ/AZURE_API_KEY

litellm_settings:
drop_params: true

For detailed setup instructions, refer to LiteLLM's Anthropic format documentation.


What Anthropic collects

Even when inference goes through your own infrastructure, the add-in communicates with pivot.claude.ai to load its interface and with claude.ai/api/ to evaluate feature flags. These connections transmit operational telemetry—such as which features are used, performance timings, and error rates—so Anthropic can maintain and improve the add-in experience. They don't transmit your prompts or Claude's responses.

Anthropic collects information in accordance with AWS Bedrock, Google Cloud Vertex AI, or Microsoft Azure's terms, consistent with Anthropic's arrangements with customers. Anthropic doesn't have access to a customer's AWS, Google, or Microsoft instance, including prompts or outputs it contains. Anthropic doesn't train generative models with such content or use it for other purposes. Anthropic can access metadata—such as tool use, token counts, and similar items—and use such metadata for analytic and product improvement purposes.

For details on what your organization's gateway or cloud provider logs, contact your IT team.


How this differs from signing in with a Claude account

When you sign in with a Claude account, the add-ins connect directly to Anthropic. When you connect through a third-party platform, the add-ins send inference requests to your organization's infrastructure instead, and your IT team controls how that traffic is routed and logged.

Some features that rely on having a Claude account aren't available through third-party platforms yet, but we're working on adding support:

Feature

Claude account

Third-party platform

Chat with your spreadsheet or deck

Read and edit cells, slides, formulas

Connectors (S&P, FactSet, etc.)

Coming soon

Working across apps

Skills

Coming soon

File uploads

Web search

Vertex only

If your team needs these features, talk to your Claude admin about which sign-in path fits your organization.


Troubleshooting

"Connection refused" or network error

The gateway URL or cloud endpoint is unreachable from the user's network. Verify the URL is correct, the service is running, and there are no firewall or VPN restrictions blocking the connection. Check the Network allowlist section above to confirm all required domains are allowed.

401 Unauthorized or "Invalid token"

The auth token is invalid or expired. For gateway connections, confirm the token with your IT team. For direct-cloud connections, verify the user's Entra ID account is in the assigned group and that the OIDC trust or OAuth client is configured correctly.

403 Forbidden or "Access denied"

The token is valid but lacks the right permissions. For Bedrock, verify the IAM role has bedrock:InvokeModel permissions. For Vertex, verify the service account has aiplatform.endpoints.predict permissions. For gateways, check the token's scope with your IT admin.

404 Not found

The add-in couldn't reach the expected API path. For gateways, verify the URL is the base URL (for example, https://litellm-server:4000)—don't include /v1/messages in the URL field.

500 or other server errors

The gateway or cloud provider encountered an internal error. Check your gateway logs (for example, docker logs litellm if using LiteLLM) for upstream provider errors. Try the request again, and contact your IT admin if the issue persists.

"No models available"

The add-in couldn't find Claude models. For gateways, your gateway may not expose a model list at GET /v1/models. Your IT team can either configure the gateway to serve a model list or give you a specific model ID to enter manually. For Bedrock or Vertex, confirm that at least one Claude model (Claude Sonnet 4.5 or later) is enabled in your account and region.

Streaming responses fail or hang

Verify that your gateway supports Server-Sent Events (SSE) pass-through. Some proxy configurations strip or buffer SSE connections, which prevents streaming responses from reaching the add-in.

A feature I expected isn't available

Connectors, skills, file uploads, and Working Across Apps aren't available through third-party platforms yet. If you need these, ask your admin about signing in with a Claude account instead.

Did this answer your question?