100+ integrations are ready to connect to your AI.Connect your first MCP

Microsoft Excel MCP server for your AI

Find the budget workbook and sum up each sheet, add this week's orders to a table, mark a customer's row as paid, and build a chart from the results.

PopMCPMicrosoft Excel

Find my budget workbook and tell me what each sheet holds

Supported Microsoft Excel tools

The Excel API in Microsoft Graph for a work or school account, from worksheets, cells, formulas and formatting to tables, filters, charts, defined names and every worksheet function, plus the workbook events PopMCP can watch.

595 tools in the full catalog: 484 read and 111 write. 42 load by default, and the rest are found with tool search.

excel_call_function

Run any of Excel's 300+ worksheet functions by name and get the result.

excel_clear_range

Clear cells without removing them.

excel_get_range

Read cells at an A1 address: values by default; ask for formulas, numberFormat or text with $select.

excel_insert_range

Insert empty cells at an address, moving the others: shift Down or Right.

excel_read_range

Read cells from a worksheet, in parts when there are many.

excel_sort_range

Sort the cells of a range.

excel_update_range

Write cells at an A1 address.

excel_write_range

Write cells starting at a cell: you give the rows, and the address is worked out from their size.

excel_write_ranges

Make several separate writes on one workbook, in order, in one session: faster and safer than many single calls.

excel_add_worksheet_table

Turn a range on this worksheet into a table.

excel_delete_table

Delete a table AND its data.

excel_list_tables

List every table in the workbook: id, name, showHeaders, showTotals, style.

excel_sort_table

Sort a table.

excel_add_chart

Create a chart from cells.

excel_autofit_range_columns

Make columns just wide enough for their contents.

excel_get_chart_image

See a chart: the picture comes back as an image.

excel_list_charts

List the charts on a worksheet: id, name, size and position.

excel_update_chart_title

Set a chart's title: text, visible, overlay.

excel_update_range_border

Set one border of a range: style (None, Continuous, Dash, DashDot, DashDotDot, Dot, Double, SlantDashDot), weight (Hairline, Thin, Medium, Thick), color (#RRGGBB).

excel_update_range_fill

Set a range's background color: an HTML color such as #FFA500, or a name such as orange.

excel_update_range_font

Set a range's font: bold, italic, color (#FF0000), name (Calibri), size, underline (None, Single, Double, SingleAccountant, DoubleAccountant).

excel_list_names

List the workbook's defined names (named ranges and constants): name, value, type, scope, comment.

excel_apply_column_filter

Filter a table column.

excel_add_worksheet

Add a worksheet to the workbook.

excel_delete_worksheet

Delete a worksheet and everything on it.

excel_list_worksheets

List the workbook's worksheets (tabs): id, name, position, visibility.

excel_open_workbook

See what is in a workbook before working on it: file details, each worksheet with the address of its data, each table with its address, and the defined names.

excel_update_worksheet

Rename a worksheet, move it (position starts at 0) or hide it (visibility Visible, Hidden or VeryHidden).

excel_add_table_rows

Add rows to the end of a table.

excel_append_rows

Add rows at the end of a table, or under the last row of data on a worksheet.

excel_delete_table_row

Delete one table row.

excel_find_rows

Find table rows where a column holds a value, without reading the whole table yourself.

excel_list_table_columns

List a table's columns in order: id, index, name.

excel_read_table

Read a table's rows as objects by column name, such as { "Region": "East", "Sales": 1200 }, with each row's rowIndex for updates and deletes.

excel_update_row

Change one table row by column name, such as values { "Status": "Paid" }.

excel_close_session

End a session when the work is done.

excel_create_session

Start a workbook session when you are about to make several calls on one workbook: they run much faster and in order.

excel_create_workbook

Create a new .xlsx workbook in OneDrive (or a SharePoint drive with driveId).

excel_find_workbooks

Find Excel workbooks by name.

excel_list_pivot_tables

List the PivotTables on a worksheet: id, name.

excel_refresh_pivot_table

Refresh one PivotTable from its source data.

excel_calculate_workbook

Recalculate the workbook now.

excel_function_abs

Excel's ABS function.

excel_function_accr_int

Excel's ACCRINT function.

excel_function_accr_int_m

Excel's ACCRINTM function.

excel_function_acos

Excel's ACOS function.

excel_function_acosh

Excel's ACOSH function.

excel_function_acot

Excel's ACOT function.

excel_function_acoth

Excel's ACOTH function.

excel_function_amor_degrc

Excel's AMORDEGRC function.

excel_function_amor_linc

Excel's AMORLINC function.

excel_function_and

Excel's AND function.

excel_function_arabic

Excel's ARABIC function.

excel_function_areas

Excel's AREAS function.

excel_function_asc

Excel's ASC function.

excel_function_asin

Excel's ASIN function.

excel_function_asinh

Excel's ASINH function.

excel_function_atan

Excel's ATAN function.

excel_function_atan2

Excel's ATAN2 function.

excel_function_atanh

Excel's ATANH function.

excel_function_ave_dev

Excel's AVEDEV function.

excel_function_average

Excel's AVERAGE function.

excel_function_average_a

Excel's AVERAGEA function.

excel_function_average_if

Excel's AVERAGEIF function.

excel_function_average_ifs

Excel's AVERAGEIFS function.

excel_function_baht_text

Excel's BAHTTEXT function.

excel_function_base

Excel's BASE function.

excel_function_bessel_i

Excel's BESSELI function.

excel_function_bessel_j

Excel's BESSELJ function.

excel_function_bessel_k

Excel's BESSELK function.

excel_function_bessel_y

Excel's BESSELY function.

excel_function_beta_dist

Excel's BETA.DIST function.

excel_function_beta_inv

Excel's BETA.INV function.

excel_function_bin2_dec

Excel's BIN2DEC function.

excel_function_bin2_hex

Excel's BIN2HEX function.

excel_function_bin2_oct

Excel's BIN2OCT function.

excel_function_binom_dist

Excel's BINOM.DIST function.

excel_function_binom_dist_range

Excel's BINOM.DIST.RANGE function.

excel_function_binom_inv

Excel's BINOM.INV function.

excel_function_bitand

Excel's BITAND function.

excel_function_bitlshift

Excel's BITLSHIFT function.

excel_function_bitor

Excel's BITOR function.

excel_function_bitrshift

Excel's BITRSHIFT function.

excel_function_bitxor

Excel's BITXOR function.

excel_function_ceiling_math

Excel's CEILING.MATH function.

excel_function_ceiling_precise

Excel's CEILING.PRECISE function.

excel_function_char

Excel's CHAR function.

excel_function_chi_sq_dist

Excel's CHISQ.DIST function.

excel_function_chi_sq_dist_rt

Excel's CHISQ.DIST.RT function.

excel_function_chi_sq_inv

Excel's CHISQ.INV function.

excel_function_chi_sq_inv_rt

Excel's CHISQ.INV.RT function.

excel_function_choose

Excel's CHOOSE function.

excel_function_clean

Excel's CLEAN function.

excel_function_code

Excel's CODE function.

excel_function_columns

Excel's COLUMNS function.

excel_function_combin

Excel's COMBIN function.

excel_function_combina

Excel's COMBINA function.

excel_function_complex

Excel's COMPLEX function.

excel_function_concatenate

Excel's CONCATENATE function.

excel_function_confidence_norm

Excel's CONFIDENCE.NORM function.

excel_function_confidence_t

Excel's CONFIDENCE.T function.

excel_function_convert

Excel's CONVERT function.

excel_function_cos

Excel's COS function.

excel_function_cosh

Excel's COSH function.

excel_function_cot

Excel's COT function.

excel_function_coth

Excel's COTH function.

excel_function_count

Excel's COUNT function.

excel_function_count_a

Excel's COUNTA function.

excel_function_count_blank

Excel's COUNTBLANK function.

excel_function_count_if

Excel's COUNTIF function.

excel_function_count_ifs

Excel's COUNTIFS function.

excel_function_coup_day_bs

Excel's COUPDAYBS function.

excel_function_coup_days

Excel's COUPDAYS function.

excel_function_coup_days_nc

Excel's COUPDAYSNC function.

excel_function_coup_ncd

Excel's COUPNCD function.

excel_function_coup_num

Excel's COUPNUM function.

excel_function_coup_pcd

Excel's COUPPCD function.

excel_function_csc

Excel's CSC function.

excel_function_csch

Excel's CSCH function.

excel_function_cum_i_pmt

Excel's CUMIPMT function.

excel_function_cum_princ

Excel's CUMPRINC function.

excel_function_date

Excel's DATE function.

excel_function_datevalue

Excel's DATEVALUE function.

excel_function_daverage

Excel's DAVERAGE function.

excel_function_day

Excel's DAY function.

excel_function_days

Excel's DAYS function.

excel_function_days360

Excel's DAYS360 function.

excel_function_db

Excel's DB function.

excel_function_dbcs

Excel's DBCS function.

excel_function_dcount

Excel's DCOUNT function.

excel_function_dcount_a

Excel's DCOUNTA function.

excel_function_ddb

Excel's DDB function.

excel_function_dec2_bin

Excel's DEC2BIN function.

excel_function_dec2_hex

Excel's DEC2HEX function.

excel_function_dec2_oct

Excel's DEC2OCT function.

excel_function_decimal

Excel's DECIMAL function.

excel_function_degrees

Excel's DEGREES function.

excel_function_delta

Excel's DELTA function.

excel_function_dev_sq

Excel's DEVSQ function.

excel_function_dget

Excel's DGET function.

excel_function_disc

Excel's DISC function.

excel_function_dmax

Excel's DMAX function.

excel_function_dmin

Excel's DMIN function.

excel_function_dollar

Excel's DOLLAR function.

excel_function_dollar_de

Excel's DOLLARDE function.

excel_function_dollar_fr

Excel's DOLLARFR function.

excel_function_dproduct

Excel's DPRODUCT function.

excel_function_dst_dev

Excel's DSTDEV function.

excel_function_dst_dev_p

Excel's DSTDEVP function.

excel_function_dsum

Excel's DSUM function.

excel_function_duration

Excel's DURATION function.

excel_function_dvar

Excel's DVAR function.

excel_function_dvar_p

Excel's DVARP function.

excel_function_ecma_ceiling

Excel's ECMA.CEILING function.

excel_function_edate

Excel's EDATE function.

excel_function_effect

Excel's EFFECT function.

excel_function_eo_month

Excel's EOMONTH function.

excel_function_erf

Excel's ERF function.

excel_function_erf_c

Excel's ERFC function.

excel_function_erf_c_precise

Excel's ERFC.PRECISE function.

excel_function_erf_precise

Excel's ERF.PRECISE function.

excel_function_error_type

Excel's ERROR.TYPE function.

excel_function_even

Excel's EVEN function.

excel_function_exact

Excel's EXACT function.

excel_function_exp

Excel's EXP function.

excel_function_expon_dist

Excel's EXPON.DIST function.

excel_function_f_dist

Excel's F.DIST function.

excel_function_f_dist_rt

Excel's F.DIST.RT function.

excel_function_f_inv

Excel's F.INV function.

excel_function_f_inv_rt

Excel's F.INV.RT function.

excel_function_fact

Excel's FACT function.

excel_function_fact_double

Excel's FACTDOUBLE function.

excel_function_false

Excel's FALSE function.

excel_function_find

Excel's FIND function.

excel_function_find_b

Excel's FINDB function.

excel_function_fisher

Excel's FISHER function.

excel_function_fisher_inv

Excel's FISHERINV function.

excel_function_fixed

Excel's FIXED function.

excel_function_floor_math

Excel's FLOOR.MATH function.

excel_function_floor_precise

Excel's FLOOR.PRECISE function.

excel_function_fv

Excel's FV function.

excel_function_fvschedule

Excel's FVSCHEDULE function.

excel_function_gamma

Excel's GAMMA function.

excel_function_gamma_dist

Excel's GAMMA.DIST function.

excel_function_gamma_inv

Excel's GAMMA.INV function.

excel_function_gamma_ln

Excel's GAMMALN function.

excel_function_gamma_ln_precise

Excel's GAMMALN.PRECISE function.

excel_function_gauss

Excel's GAUSS function.

excel_function_gcd

Excel's GCD function.

excel_function_ge_step

Excel's GESTEP function.

excel_function_geo_mean

Excel's GEOMEAN function.

excel_function_har_mean

Excel's HARMEAN function.

excel_function_hex2_bin

Excel's HEX2BIN function.

excel_function_hex2_dec

Excel's HEX2DEC function.

excel_function_hex2_oct

Excel's HEX2OCT function.

excel_function_hlookup

Excel's HLOOKUP function.

excel_function_hour

Excel's HOUR function.

excel_function_hyp_geom_dist

Excel's HYPGEOM.DIST function.

excel_function_hyperlink

Excel's HYPERLINK function.

excel_function_if

Excel's IF function.

excel_function_im_abs

Excel's IMABS function.

excel_function_im_argument

Excel's IMARGUMENT function.

excel_function_im_conjugate

Excel's IMCONJUGATE function.

excel_function_im_cos

Excel's IMCOS function.

excel_function_im_cosh

Excel's IMCOSH function.

excel_function_im_cot

Excel's IMCOT function.

excel_function_im_csc

Excel's IMCSC function.

excel_function_im_csch

Excel's IMCSCH function.

excel_function_im_div

Excel's IMDIV function.

excel_function_im_exp

Excel's IMEXP function.

excel_function_im_ln

Excel's IMLN function.

excel_function_im_log10

Excel's IMLOG10 function.

excel_function_im_log2

Excel's IMLOG2 function.

excel_function_im_power

Excel's IMPOWER function.

excel_function_im_product

Excel's IMPRODUCT function.

excel_function_im_real

Excel's IMREAL function.

excel_function_im_sec

Excel's IMSEC function.

excel_function_im_sech

Excel's IMSECH function.

excel_function_im_sin

Excel's IMSIN function.

excel_function_im_sinh

Excel's IMSINH function.

excel_function_im_sqrt

Excel's IMSQRT function.

excel_function_im_sub

Excel's IMSUB function.

excel_function_im_sum

Excel's IMSUM function.

excel_function_im_tan

Excel's IMTAN function.

excel_function_imaginary

Excel's IMAGINARY function.

excel_function_int

Excel's INT function.

excel_function_int_rate

Excel's INTRATE function.

excel_function_ipmt

Excel's IPMT function.

excel_function_irr

Excel's IRR function.

excel_function_is_err

Excel's ISERR function.

excel_function_is_error

Excel's ISERROR function.

excel_function_is_even

Excel's ISEVEN function.

excel_function_is_formula

Excel's ISFORMULA function.

excel_function_is_logical

Excel's ISLOGICAL function.

excel_function_is_na

Excel's ISNA function.

excel_function_is_non_text

Excel's ISNONTEXT function.

excel_function_is_number

Excel's ISNUMBER function.

excel_function_is_odd

Excel's ISODD function.

excel_function_is_text

Excel's ISTEXT function.

excel_function_iso_ceiling

Excel's ISO.CEILING function.

excel_function_iso_week_num

Excel's ISOWEEKNUM function.

excel_function_ispmt

Excel's ISPMT function.

excel_function_isref

Excel's ISREF function.

excel_function_kurt

Excel's KURT function.

excel_function_large

Excel's LARGE function.

excel_function_lcm

Excel's LCM function.

excel_function_left

Excel's LEFT function.

excel_function_leftb

Excel's LEFTB function.

excel_function_len

Excel's LEN function.

excel_function_lenb

Excel's LENB function.

excel_function_ln

Excel's LN function.

excel_function_log

Excel's LOG function.

excel_function_log_norm_dist

Excel's LOGNORM.DIST function.

excel_function_log_norm_inv

Excel's LOGNORM.INV function.

excel_function_log10

Excel's LOG10 function.

excel_function_lookup

Excel's LOOKUP function.

excel_function_lower

Excel's LOWER function.

excel_function_match

Excel's MATCH function.

excel_function_max

Excel's MAX function.

excel_function_max_a

Excel's MAXA function.

excel_function_mduration

Excel's MDURATION function.

excel_function_median

Excel's MEDIAN function.

excel_function_mid

Excel's MID function.

excel_function_midb

Excel's MIDB function.

excel_function_min

Excel's MIN function.

excel_function_min_a

Excel's MINA function.

excel_function_minute

Excel's MINUTE function.

excel_function_mirr

Excel's MIRR function.

excel_function_mod

Excel's MOD function.

excel_function_month

Excel's MONTH function.

excel_function_mround

Excel's MROUND function.

excel_function_multi_nomial

Excel's MULTINOMIAL function.

excel_function_n

Excel's N function.

excel_function_na

Excel's NA function.

excel_function_neg_binom_dist

Excel's NEGBINOM.DIST function.

excel_function_network_days

Excel's NETWORKDAYS function.

excel_function_network_days_intl

Excel's NETWORKDAYS.INTL function.

excel_function_nominal

Excel's NOMINAL function.

excel_function_norm_dist

Excel's NORM.DIST function.

excel_function_norm_inv

Excel's NORM.INV function.

excel_function_norm_s_dist

Excel's NORM.S.DIST function.

excel_function_norm_s_inv

Excel's NORM.S.INV function.

excel_function_not

Excel's NOT function.

excel_function_now

Excel's NOW function.

excel_function_nper

Excel's NPER function.

excel_function_npv

Excel's NPV function.

excel_function_number_value

Excel's NUMBERVALUE function.

excel_function_oct2_bin

Excel's OCT2BIN function.

excel_function_oct2_dec

Excel's OCT2DEC function.

excel_function_oct2_hex

Excel's OCT2HEX function.

excel_function_odd

Excel's ODD function.

excel_function_odd_f_price

Excel's ODDFPRICE function.

excel_function_odd_f_yield

Excel's ODDFYIELD function.

excel_function_odd_l_price

Excel's ODDLPRICE function.

excel_function_odd_l_yield

Excel's ODDLYIELD function.

excel_function_or

Excel's OR function.

excel_function_pduration

Excel's PDURATION function.

excel_function_percent_rank_exc

Excel's PERCENTRANK.EXC function.

excel_function_percent_rank_inc

Excel's PERCENTRANK.INC function.

excel_function_percentile_exc

Excel's PERCENTILE.EXC function.

excel_function_percentile_inc

Excel's PERCENTILE.INC function.

excel_function_permut

Excel's PERMUT function.

excel_function_permutationa

Excel's PERMUTATIONA function.

excel_function_phi

Excel's PHI function.

excel_function_pi

Excel's PI function.

excel_function_pmt

Excel's PMT function.

excel_function_poisson_dist

Excel's POISSON.DIST function.

excel_function_power

Excel's POWER function.

excel_function_ppmt

Excel's PPMT function.

excel_function_price

Excel's PRICE function.

excel_function_price_disc

Excel's PRICEDISC function.

excel_function_price_mat

Excel's PRICEMAT function.

excel_function_product

Excel's PRODUCT function.

excel_function_proper

Excel's PROPER function.

excel_function_pv

Excel's PV function.

excel_function_quartile_exc

Excel's QUARTILE.EXC function.

excel_function_quartile_inc

Excel's QUARTILE.INC function.

excel_function_quotient

Excel's QUOTIENT function.

excel_function_radians

Excel's RADIANS function.

excel_function_rand

Excel's RAND function.

excel_function_rand_between

Excel's RANDBETWEEN function.

excel_function_rank_avg

Excel's RANK.AVG function.

excel_function_rank_eq

Excel's RANK.EQ function.

excel_function_rate

Excel's RATE function.

excel_function_received

Excel's RECEIVED function.

excel_function_replace

Excel's REPLACE function.

excel_function_replace_b

Excel's REPLACEB function.

excel_function_rept

Excel's REPT function.

excel_function_right

Excel's RIGHT function.

excel_function_rightb

Excel's RIGHTB function.

excel_function_roman

Excel's ROMAN function.

excel_function_round

Excel's ROUND function.

excel_function_round_down

Excel's ROUNDDOWN function.

excel_function_round_up

Excel's ROUNDUP function.

excel_function_rows

Excel's ROWS function.

excel_function_rri

Excel's RRI function.

excel_function_sec

Excel's SEC function.

excel_function_sech

Excel's SECH function.

excel_function_second

Excel's SECOND function.

excel_function_series_sum

Excel's SERIESSUM function.

excel_function_sheet

Excel's SHEET function.

excel_function_sheets

Excel's SHEETS function.

excel_function_sign

Excel's SIGN function.

excel_function_sin

Excel's SIN function.

excel_function_sinh

Excel's SINH function.

excel_function_skew

Excel's SKEW function.

excel_function_skew_p

Excel's SKEW.P function.

excel_function_sln

Excel's SLN function.

excel_function_small

Excel's SMALL function.

excel_function_sqrt

Excel's SQRT function.

excel_function_sqrt_pi

Excel's SQRTPI function.

excel_function_st_dev_a

Excel's STDEVA function.

excel_function_st_dev_p

Excel's STDEV.P function.

excel_function_st_dev_pa

Excel's STDEVPA function.

excel_function_st_dev_s

Excel's STDEV.S function.

excel_function_standardize

Excel's STANDARDIZE function.

excel_function_substitute

Excel's SUBSTITUTE function.

excel_function_subtotal

Excel's SUBTOTAL function.

excel_function_sum

Excel's SUM function.

excel_function_sum_if

Excel's SUMIF function.

excel_function_sum_ifs

Excel's SUMIFS function.

excel_function_sum_sq

Excel's SUMSQ function.

excel_function_syd

Excel's SYD function.

excel_function_t

Excel's T function.

excel_function_t_dist

Excel's T.DIST function.

excel_function_t_dist_2_t

Excel's T.DIST.2T function.

excel_function_t_dist_rt

Excel's T.DIST.RT function.

excel_function_t_inv

Excel's T.INV function.

excel_function_t_inv_2_t

Excel's T.INV.2T function.

excel_function_tan

Excel's TAN function.

excel_function_tanh

Excel's TANH function.

excel_function_tbill_eq

Excel's TBILLEQ function.

excel_function_tbill_price

Excel's TBILLPRICE function.

excel_function_tbill_yield

Excel's TBILLYIELD function.

excel_function_text

Excel's TEXT function.

excel_function_time

Excel's TIME function.

excel_function_timevalue

Excel's TIMEVALUE function.

excel_function_today

Excel's TODAY function.

excel_function_trim

Excel's TRIM function.

excel_function_trim_mean

Excel's TRIMMEAN function.

excel_function_true

Excel's TRUE function.

excel_function_trunc

Excel's TRUNC function.

excel_function_type

Excel's TYPE function.

excel_function_unichar

Excel's UNICHAR function.

excel_function_unicode

Excel's UNICODE function.

excel_function_upper

Excel's UPPER function.

excel_function_usdollar

Excel's USDOLLAR function.

excel_function_value

Excel's VALUE function.

excel_function_var_a

Excel's VARA function.

excel_function_var_p

Excel's VAR.P function.

excel_function_var_pa

Excel's VARPA function.

excel_function_var_s

Excel's VAR.S function.

excel_function_vdb

Excel's VDB function.

excel_function_vlookup

Excel's VLOOKUP function.

excel_function_week_num

Excel's WEEKNUM function.

excel_function_weekday

Excel's WEEKDAY function.

excel_function_weibull_dist

Excel's WEIBULL.DIST function.

excel_function_work_day

Excel's WORKDAY function.

excel_function_work_day_intl

Excel's WORKDAY.INTL function.

excel_function_xirr

Excel's XIRR function.

excel_function_xnpv

Excel's XNPV function.

excel_function_xor

Excel's XOR function.

excel_function_year

Excel's YEAR function.

excel_function_year_frac

Excel's YEARFRAC function.

excel_function_yield

Excel's YIELD function.

excel_function_yield_disc

Excel's YIELDDISC function.

excel_function_yield_mat

Excel's YIELDMAT function.

excel_function_z_test

Excel's Z.TEST function.

excel_delete_range

Delete cells and close the gap: shift Up or Left says which way the other cells move.

excel_get_range_bounding_rect

Get the smallest range that covers both this range and another.

excel_get_range_cell

Read one cell inside a range, by row and column counted from the range's top-left cell (from 0).

excel_get_range_column

Read one column of a range, by its position in the range (from 0).

excel_get_range_columns_after

Read the columns just to the right of a range.

excel_get_range_columns_before

Read the columns just to the left of a range.

excel_get_range_entire_column

Get the address of the whole columns a range sits in, such as B:C.

excel_get_range_entire_row

Get the address of the whole rows a range sits in, such as 2:5.

excel_get_range_intersection

Read the cells two ranges have in common.

excel_get_range_last_cell

Read the bottom-right cell of a range.

excel_get_range_last_column

Read the last column of a range.

excel_get_range_last_row

Read the last row of a range.

excel_get_range_offset

Read a range of the same size, moved by a number of rows and columns.

excel_get_range_resized

Read a range with the same top-left cell, grown or shrunk by a number of rows and columns.

excel_get_range_row

Read one row of a range, by its position in the range (from 0).

excel_get_range_rows_above

Read the rows just above a range.

excel_get_range_rows_below

Read the rows just below a range.

excel_get_range_used_range

Read only the part of a range that has anything in it.

excel_get_range_visible_range

Get the range behind a visible view.

excel_get_range_visible_row_at

Read one visible row of a range, by its position among the visible rows (from 0).

excel_get_range_visible_view

Read only the cells left visible by a filter or by hidden rows and columns.

excel_list_range_visible_rows

List the visible rows of a range, after filters and hidden rows.

excel_merge_range

Merge cells into one.

excel_unmerge_range

Split merged cells back into separate cells.

excel_add_table

Turn a range into a table.

excel_clear_table_filters

Remove every filter from a table, so all rows show.

excel_clear_table_sort

Remove a table's sort, leaving rows as they are.

excel_convert_table_to_range

Turn a table back into ordinary cells, keeping the data.

excel_count_tables

Count the tables in the workbook.

excel_count_worksheet_tables

Count the tables on one worksheet.

excel_get_table

Get one table: id, name, showHeaders, showTotals, style, highlight and banding options.

excel_get_table_at

Get a table by its position in the workbook (from 0).

excel_get_table_data_range

Read a table's data rows as one block, without the header and totals.

excel_get_table_header_range

Read a table's header row.

excel_get_table_range

Get the address of a whole table, headers and totals included.

excel_get_table_sort

Read how a table is sorted now.

excel_get_table_total_range

Read a table's totals row.

excel_get_table_worksheet

Find which worksheet a table is on.

excel_get_worksheet_table_at

Get a table by its position on one worksheet (from 0).

excel_list_worksheet_tables

List the tables on one worksheet.

excel_reapply_table_filters

Run a table's current filters again after its data changed.

excel_reapply_table_sort

Run a table's current sort again after its data changed.

excel_update_table

Rename a table, change its style (TableStyleLight1 to 21, TableStyleMedium1 to 28, TableStyleDark1 to 11), or show or hide its header and total rows.

excel_add_chart_series

Add a data series to a chart.

excel_add_series_point

Add a point to a data series.

excel_clear_chart_series_fill

Remove a series's color.

excel_clear_chart_series_line

Remove a series's line formatting.

excel_clear_series_point_fill

Remove one point's color.

excel_count_chart_series

Count a chart's data series.

excel_count_series_points

Count the points of a data series.

excel_delete_chart_series

Remove a data series from a chart.

excel_get_chart_series

Get one data series.

excel_get_chart_series_at

Get a data series by position (from 0).

excel_get_chart_series_line

Read a series's line color.

excel_get_series_point

Get one point of a data series.

excel_get_series_point_at

Get a point by position (from 0).

excel_list_chart_series

List a chart's data series: id, name.

excel_list_series_points

List the points of a data series: id, value.

excel_set_chart_series_fill

Set a series's color.

excel_set_series_point_fill

Set one point's color, to pick out a bar or slice.

excel_update_chart_series

Rename a data series.

excel_update_chart_series_line

Set a series's line color.

excel_clear_chart_axis_line

Remove an axis line's formatting.

excel_clear_chart_gridlines_line

Remove the formatting of an axis's gridlines.

excel_get_chart_axes

Read all of a chart's axes at once.

excel_get_chart_axis

Read one chart axis: minimum, maximum, majorUnit, minorUnit.

excel_get_chart_axis_font

Read the font of an axis's labels.

excel_get_chart_axis_line

Read an axis line's color.

excel_get_chart_axis_title

Read an axis title: text, visible.

excel_get_chart_axis_title_font

Read an axis title's font.

excel_get_chart_gridlines

Say whether an axis's major or minor gridlines show.

excel_get_chart_gridlines_line

Read the color of an axis's gridlines.

excel_update_chart_axis

Set one chart axis: minimum, maximum, majorUnit, minorUnit.

excel_update_chart_axis_font

Set the font of an axis's labels: bold, italic, color, name, size, underline.

excel_update_chart_axis_line

Set an axis line's color.

excel_update_chart_axis_title

Set an axis title: text, visible.

excel_update_chart_axis_title_font

Set an axis title's font: bold, italic, color, name, size, underline.

excel_update_chart_gridlines

Show or hide an axis's major or minor gridlines: visible.

excel_update_chart_gridlines_line

Set the color of an axis's gridlines.

excel_autofit_range_rows

Make rows just tall enough for their contents.

excel_clear_chart_data_labels_fill

Remove the background color of a chart's data labels.

excel_clear_chart_fill

Remove the background color of a chart's area.

excel_clear_chart_legend_fill

Remove the background color of a chart's legend.

excel_clear_chart_title_fill

Remove the background color of a chart's title.

excel_clear_range_fill

Remove a range's background color.

excel_count_charts

Count the charts on a worksheet.

excel_create_range_border

Set one border of a range through the borders collection.

excel_delete_chart

Delete a chart.

excel_get_chart

Get one chart: id, name, height, width, left, top.

excel_get_chart_at

Get a chart by its position on the worksheet (from 0).

excel_get_chart_data_labels

Read a chart's data labels: position and what they show.

excel_get_chart_data_labels_font

Read the font of a chart's data labels: name, size, color, bold, italic, underline.

excel_get_chart_font

Read the font of a chart's area: name, size, color, bold, italic, underline.

excel_get_chart_legend

Read a chart's legend: visible, position, overlay.

excel_get_chart_legend_font

Read the font of a chart's legend: name, size, color, bold, italic, underline.

excel_get_chart_title

Read a chart's title: text, visible, overlay.

excel_get_chart_title_font

Read the font of a chart's title: name, size, color, bold, italic, underline.

excel_get_range_border

Read one border of a range by side.

excel_get_range_border_at

Read one border of a range by its position in the list.

excel_get_range_fill

Read a range's background color.

excel_get_range_font

Read a range's font: name, size, color, bold, italic, underline.

excel_get_range_format

Read a range's layout: columnWidth, rowHeight, horizontalAlignment, verticalAlignment, wrapText.

excel_get_range_protection

Say whether cells are locked and whether their formulas are hidden (these apply once the sheet is protected).

excel_list_range_borders

List a range's borders: sideIndex, style, weight, color.

excel_set_chart_data

Point a chart at other cells.

excel_set_chart_data_labels_fill

Set the background color of a chart's data labels.

excel_set_chart_fill

Set the background color of a chart's area.

excel_set_chart_legend_fill

Set the background color of a chart's legend.

excel_set_chart_position

Place a chart over cells: startCell such as F2, and optionally endCell such as M20 to set its size too.

excel_set_chart_title_fill

Set the background color of a chart's title.

excel_update_chart

Rename, resize or move a chart.

excel_update_chart_data_labels

Choose what data labels show (showValue, showPercentage, showCategoryName, showSeriesName, showLegendKey, showBubbleSize) and where: position None, Center, InsideEnd, InsideBase, OutsideEnd, Left, Right, Top, Bottom, BestFit or Callout.

excel_update_chart_data_labels_font

Set the font of a chart's data labels: bold, italic, color (#FF0000), name, size, underline (None or Single).

excel_update_chart_font

Set the font of a chart's area: bold, italic, color (#FF0000), name, size, underline (None or Single).

excel_update_chart_legend

Show, hide or move a chart's legend.

excel_update_chart_legend_font

Set the font of a chart's legend: bold, italic, color (#FF0000), name, size, underline (None or Single).

excel_update_chart_title_font

Set the font of a chart's title: bold, italic, color (#FF0000), name, size, underline (None or Single).

excel_update_range_format

Set a range's layout: columnWidth and rowHeight (in points), horizontalAlignment (General, Left, Center, Right, Fill, Justify, CenterAcrossSelection, Distributed), verticalAlignment (Top, Center, Bottom, Justify, Distributed), wrapText.

excel_update_range_protection

Lock or unlock cells (locked) and hide formulas (formulaHidden).

excel_add_name

Define a name for the whole workbook.

excel_add_name_formula_local

Define a name using a formula written in the user's language and regional format (for example =SUMME(A1;1,5) in German).

excel_add_worksheet_name

Define a name that belongs to one worksheet.

excel_add_worksheet_name_formula_local

Define a worksheet-level name using a formula in the user's language and regional format.

excel_delete_name

Remove a defined name.

excel_delete_worksheet_name

Remove a worksheet-level defined name.

excel_get_name

Get one defined name: value, type, scope, comment, visible.

excel_get_name_range

Read the cells a defined name points to.

excel_get_name_worksheet

Find the worksheet a sheet-level defined name belongs to.

excel_get_worksheet_name

Get one worksheet-level defined name.

excel_get_worksheet_name_range

Read the cells a worksheet-level defined name points to.

excel_list_worksheet_names

List the defined names that belong to one worksheet.

excel_update_name

Change a defined name's comment or whether it is visible.

excel_update_worksheet_name

Change a worksheet-level name's comment or whether it is visible.

excel_apply_column_bottom_items_filter

Keep the rows with the lowest values: count is how many.

excel_apply_column_bottom_percent_filter

Keep the bottom percent of rows by value.

excel_apply_column_cell_color_filter

Keep rows whose cell has this background color (#RRGGBB).

excel_apply_column_custom_filter

Keep rows matching criteria1 (such as >100), optionally with criteria2 and oper And or Or.

excel_apply_column_dynamic_filter

Keep rows by a date or average rule: criteria such as AboveAverage, BelowAverage, Today, Yesterday, ThisWeek, LastMonth, NextQuarter, ThisYear.

excel_apply_column_font_color_filter

Keep rows whose cell text has this color (#RRGGBB).

excel_apply_column_icon_filter

Keep rows whose cell shows this conditional-format icon: icon is { set, index }.

excel_apply_column_top_items_filter

Keep the rows with the highest values: count is how many.

excel_apply_column_top_percent_filter

Keep the top percent of rows by value.

excel_apply_column_values_filter

Keep rows whose cell is one of values.

excel_clear_column_filter

Remove the filter from one table column.

excel_get_column_filter

Read the filter on a table column.

excel_get_used_range

Read the part of a worksheet that has anything in it: address, size and values.

excel_get_worksheet

Get one worksheet: id, name, position, visibility.

excel_get_worksheet_cell

Read one cell by row and column number, both starting at 0 (A1 is row 0, column 0).

excel_get_worksheet_protection

Say whether a worksheet is protected and which actions its protection allows.

excel_get_worksheet_range

Get the whole worksheet as a range: its address and size only (a full sheet has no cell values to return).

excel_protect_worksheet

Protect a worksheet from changes.

excel_unprotect_worksheet

Remove a worksheet's protection.

excel_add_table_column

Add a column to a table.

excel_count_table_columns

Count a table's columns.

excel_count_table_rows

Count a table's data rows.

excel_delete_table_column

Delete a table column and its data.

excel_get_table_column

Get one table column: id, index, name and its cells (values).

excel_get_table_column_at

Get a table column by position (from 0).

excel_get_table_column_data_range

Read a table column's data cells, without header and totals.

excel_get_table_column_header_range

Read a table column's header cell.

excel_get_table_column_range

Get the address of a whole table column, header and totals included.

excel_get_table_column_total_range

Read a table column's totals cell.

excel_get_table_row

Read one table row by position.

excel_get_table_row_range

Get the address of a table row, for formatting it with the range tools.

excel_list_table_rows

List a table's rows: index and values (each row is a list inside a list, in column order).

excel_update_table_column

Change a column: name renames it; values replaces its cells (one row per table row including the header).

excel_update_table_row

Change one table row.

excel_create_subscription

Get told when something in the drive changes.

excel_delete_subscription

Stop a change-notification subscription.

excel_get_operation

Check a long-running workbook operation (an answer that said 202): status is NotStarted, Running, Completed or Failed, with resourceLocation when done.

excel_get_session_info

Read the result of a session created through a long-running operation.

excel_get_subscription

Get one change-notification subscription.

excel_get_table_row_operation_result

Read the result of a long-running add-rows operation.

excel_list_drive_changes

See which files in the drive changed since last time, to tell if a workbook was edited.

excel_list_subscriptions

List this app's change-notification subscriptions.

excel_refresh_session

Keep a session alive during a long pause.

excel_renew_subscription

Keep a subscription running: set a later expirationDateTime (ISO 8601, at most 42,300 minutes ahead).

excel_add_comment_reply

Reply to a comment.

excel_get_comment

Get one comment.

excel_get_comment_reply

Get one reply to a comment.

excel_list_comment_replies

List the replies to a comment.

excel_list_comments

List the workbook's comments: id, content, contentType.

excel_get_drive

Get the signed-in user's own drive: id, type, owner and storage used.

excel_get_pivot_table

Get one PivotTable.

excel_get_workbook_file

Get the workbook's file details: id, name, size, webUrl, last change and the drive it is in.

excel_refresh_all_pivot_tables

Refresh every PivotTable on a worksheet.

excel_get_application

Get how the workbook calculates: calculationMode is Automatic, AutomaticExceptTables or Manual.

Connect Microsoft Excel to Claude, ChatGPT and Claude Code

Authorize once, then an endpoint your client signs into. Nothing to deploy, and nothing to install on the Microsoft Excel side.

Register an app in the Microsoft Entra admin center with Multiple Entra ID tenants, add PopMCP's Redirect URI under Authentication as a Web platform, copy the Application (client) ID and a client secret Value into PopMCP, then click Sign in with Microsoft and approve access on Microsoft's own page.

Application (client) ID00001111-aaaa-2222-bbbb-3333cccc4444
Client secret Value••••••••••••3f7a
Directory (tenant) IDLeave empty unless your app is single tenant
Authorize PopMCP on Microsoft ExcelAuthorize

Then just ask for the work

  • “Find my budget workbook and tell me what each sheet holds”

    • find_workbooks
    • open_workbook
  • “Read the Sales sheet and summarize the totals by region”

    • read_range
    • call_function
  • “Add these three orders to the Orders table”

    • append_rows
  • “Find the row for ada@contoso.com in the Customers table and mark it as paid”

    • find_rows
    • update_row
  • “Build a column chart from A1:B13 on the Revenue sheet and show it to me”

    • add_chart
    • update_chart_title
    • get_chart_image
  • “Create a new workbook called Q4 Plan with Date, Owner and Status columns”

    • create_workbook
    • add_worksheet_table

Use Microsoft Excel from the assistant you already open

One hosted endpoint, registered once per client. The same tools and the same permissions, whichever window the request comes from.

Claude DesktopCustom connector

Add the PopMCP URL under Customize → Connectors and the tools appear in every chat.

Claude WebCustom connector

The same endpoint, registered in the browser. Nothing to install on the machine you are working from.

ChatGPTCustom connector

Register PopMCP as a custom connector, then let ChatGPT read and update the account.

CodexDesktop & CLI

Wire the endpoint into Codex or the Codex CLI when a task needs live business context, not a fixture.

OpenCodeCoding agent

Register the remote MCP server in OpenCode's config for terminal-first and scripted agent runs.

ZCodeDesktop app

Add PopMCP as an MCP server in Z.ai's desktop app and work the account from the same window.

Microsoft Excel MCP server questions

What teams ask before putting Microsoft Excel behind an AI client.

How do I connect Microsoft Excel to PopMCP?

Sign in with your work or school Microsoft account and approve access on Microsoft's own page, so your password never reaches PopMCP. Today that sign-in runs through an app you register once in the Microsoft Entra admin center: pick Multiple Entra ID tenants, add PopMCP's Redirect URI under Authentication as a Web platform, then copy the Application (client) ID and a client secret Value into the connect form. Tokens renew on their own after that, and every Microsoft connector uses the same Redirect URI.

Does it work with a personal Microsoft account?

No. Microsoft's Excel service only opens workbooks stored on OneDrive for work or school and in SharePoint, and says support for personal OneDrive is still not available. A personal account gets a clear message when it tries to connect. The OneDrive connector works with personal accounts and can read the text of an .xlsx file and upload a new version.

Can it reach workbooks in SharePoint and Teams?

Yes, once you tick SharePoint and files shared with me under More options when you connect. In most organizations an administrator approves that permission once, which is why it is not asked for by default. find_workbooks then searches SharePoint, Teams and files shared with you as well as your own OneDrive, and any tool also takes a sharing link to the workbook.

Which file types can it open?

Only .xlsx, because that is what Microsoft's Excel service opens. An old .xls or a .csv file is refused with a sentence saying so before anything is sent. Save an .xls as .xlsx in Excel first, and read a .csv with the OneDrive connector.

How does it handle very large sheets?

read_range returns a part at a time, and its nextAddress answer tells the AI where to read on. write_range and append_rows split big writes into parts inside one workbook session, as Microsoft advises. Requests to one workbook always go one at a time, because Microsoft warns that writes sent side by side cause throttling and conflicts. A long-running step is followed to its end rather than left hanging.

Can the AI use Excel's formulas and functions?

Yes. Any cell can hold a formula, written as a value starting with an equals sign. call_function also runs Excel's own worksheet functions, such as VLOOKUP, PMT or COUNTIF, and returns the answer without changing the workbook, so it works on a read-only connection too. All 366 functions Microsoft offers are in the catalog with their argument names.

What can it not do?

Microsoft's API has no call that creates or redesigns a PivotTable or starts a new comment thread, so the connector can read and refresh PivotTables and reply to existing comments. Renaming or deleting the workbook file itself belongs to the OneDrive connector. Microsoft's notifications say that something in a drive changed, not which cell, so the watching tools check the files and tables you choose.

How many tools are there?

42 everyday tools load by default, including the 10 that do several steps at once: find_workbooks, open_workbook, read_range, write_range, write_ranges, append_rows, read_table, find_rows, update_row and create_workbook. All 585 operations stay reachable through search_tools, describe_tool and raw_operation, from chart axes and cell borders to column filters and every worksheet function.

Do I have to run or host the Microsoft Excel MCP server myself?

No. PopMCP hosts it and gives you a Streamable HTTP MCP URL. There is nothing to deploy, no callback URL to register, and no infrastructure to keep running or patch.

Which AI clients can use this MCP server?

Any client that supports a remote Streamable HTTP MCP server: Claude Desktop, Claude Web, Claude Code, ChatGPT custom connectors, Codex and the Codex CLI, OpenCode and Z.ai's ZCode, as well as editors such as Cursor, Windsurf and Zed. Your client signs in to PopMCP with OAuth; the provider credential never leaves the server.

How do I connect Microsoft Excel to Claude Code?

Connect Microsoft Excel in PopMCP first, then run claude mcp add --transport http popmcp https://app.popmcp.com/mcp in a terminal. Inside Claude Code, run /mcp and sign in to PopMCP in the browser window it opens, ticking Microsoft Excel on the consent screen. The Microsoft Excel tools are then available in that session, and no Microsoft Excel credential is stored on your machine.

Why do only 42 of the 595 tools load by default?

Loading 595 tool definitions into every conversation burns context before the work starts. PopMCP loads a curated 42-tool set covering the everyday workflows and keeps the rest searchable, so your AI pulls a specialist tool only when a task needs it. Every tool stays searchable, and on Scale the owner can load the full catalog for a teammate's connection.

What is the difference between a tool and a trigger?

A tool is something your AI calls, and there are 595 here. A trigger is something PopMCP watches for you: 10 Microsoft Excel events that can start work on the PopMCP side. Triggers never enter your AI client's context, and none of them ask you to paste a callback URL into Microsoft Excel.

Connect Microsoft Excel to your AI in minutes

Launch a hosted MCP endpoint for Microsoft Excel, keep tool access under control, and start testing real workflow prompts right away.

Connect your first MCP