---
title: "Excel Integration"
description: "Manage Excel workbooks, worksheets, and tables"
---
The Excel integration provides access to manage Excel workbooks, worksheets, and tables through the Integrate MCP server.

## Installation

The Excel integration is included with the SDK:

```typescript
import { excelIntegration } from "integrate-sdk/server";
```

## Setup

### 1. Create an Excel OAuth App

1. Go to [Azure Portal — App Registrations](https://portal.azure.com/#blade/Microsoft_AAD_RegisteredApps)
2. Create a new OAuth application
3. Configure your redirect URI
4. Note your Client ID and Client Secret

### 2. Configure the Integration on Your Server

Add the Excel integration to your server configuration. The integration automatically reads `EXCEL_CLIENT_ID` and `EXCEL_CLIENT_SECRET` from your environment variables:

```typescript
import { createMCPServer, excelIntegration } from "integrate-sdk/server";

export const { client: serverClient } = createMCPServer({
  apiKey: process.env.INTEGRATE_API_KEY,
  integrations: [
    excelIntegration({
    }),
  ],
});
```

You can override the environment variables by passing explicit values:

```typescript
excelIntegration({
  clientId: process.env.CUSTOM_EXCEL_ID,
  clientSecret: process.env.CUSTOM_EXCEL_SECRET,
});
```

### 3. Client-Side Usage

The default client automatically includes all integrations. You can use it directly:

```typescript
import { client } from "integrate-sdk";

await client.authorize("excel");
const result = await client.excel.list({});

console.log(result);
```

If you're using a custom client, add the integration to the integrations array:

```typescript
import { createMCPClient, excelIntegration } from "integrate-sdk";

const customClient = createMCPClient({
  integrations: [excelIntegration()],
});
```

## Configuration Options

<AutoTypeTable
  path="../src/integrations/excel.ts"
  name="ExcelIntegrationConfig"
/>


## Tools

### `excel_add_table_rows`

Append rows to a table

<AutoTypeTable
  path="generated/tool-params/excel.ts"
  name="ExcelAddTableRowsParams"
/>

### `excel_add_worksheet`

Add a new worksheet to a workbook

<AutoTypeTable
  path="generated/tool-params/excel.ts"
  name="ExcelAddWorksheetParams"
/>

### `excel_clear_range`

Clear contents and/or formatting from a cell range

<AutoTypeTable
  path="generated/tool-params/excel.ts"
  name="ExcelClearRangeParams"
/>

### `excel_create`

Create a new empty .xlsx workbook in OneDrive

<AutoTypeTable
  path="generated/tool-params/excel.ts"
  name="ExcelCreateParams"
/>

### `excel_create_table`

Create a table from a cell range

<AutoTypeTable
  path="generated/tool-params/excel.ts"
  name="ExcelCreateTableParams"
/>

### `excel_delete`

Delete an Excel workbook permanently

<AutoTypeTable
  path="generated/tool-params/excel.ts"
  name="ExcelDeleteParams"
/>

### `excel_delete_worksheet`

Delete a worksheet from a workbook

<AutoTypeTable
  path="generated/tool-params/excel.ts"
  name="ExcelDeleteWorksheetParams"
/>

### `excel_get`

Get metadata for an Excel workbook

<AutoTypeTable
  path="generated/tool-params/excel.ts"
  name="ExcelGetParams"
/>

### `excel_get_range`

Get values, formulas, and formatting from a cell range

<AutoTypeTable
  path="generated/tool-params/excel.ts"
  name="ExcelGetRangeParams"
/>

### `excel_get_table_rows`

Get rows from a table

<AutoTypeTable
  path="generated/tool-params/excel.ts"
  name="ExcelGetTableRowsParams"
/>

### `excel_get_used_range`

Get the bounding range of all data in a worksheet

<AutoTypeTable
  path="generated/tool-params/excel.ts"
  name="ExcelGetUsedRangeParams"
/>

### `excel_list`

Search for Excel workbooks

<AutoTypeTable
  path="generated/tool-params/excel.ts"
  name="ExcelListParams"
/>

### `excel_list_tables`

List all tables in a worksheet

<AutoTypeTable
  path="generated/tool-params/excel.ts"
  name="ExcelListTablesParams"
/>

### `excel_list_worksheets`

List all worksheets in a workbook

<AutoTypeTable
  path="generated/tool-params/excel.ts"
  name="ExcelListWorksheetsParams"
/>

### `excel_share`

Create a sharing link for an Excel workbook

<AutoTypeTable
  path="generated/tool-params/excel.ts"
  name="ExcelShareParams"
/>

### `excel_update_range`

Update cell values in a range

<AutoTypeTable
  path="generated/tool-params/excel.ts"
  name="ExcelUpdateRangeParams"
/>

## Notes

- Category: Productivity
- Authentication mode: OAuth
