@sheetxl/mcp 0.0.0-stage → 0.8.0-beta.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +11 -0
- package/README.md +72 -2
- package/agent/instructions.md +66 -0
- package/assets/9U9XCqqdn-q3i2fj.js +123 -0
- package/assets/B-MqXm_7luDLwazY.js +596 -0
- package/assets/B2Ek-DWpZMGJ0V1Z.js +18 -0
- package/assets/B2udpZ-uIaql3AUh.js +104 -0
- package/assets/B4VnJacrzr1x4PHR.js +402 -0
- package/assets/B5lHOOQ_rkP4Mi2r.js +638 -0
- package/assets/B7gUyrfLln3TiyKM.js +14 -0
- package/assets/B9US2ZrF93KOjmAx.js +22 -0
- package/assets/BBb_3gEGzmEzbTIk.js +359 -0
- package/assets/BCy1zP97fsiIcvj6.js +18 -0
- package/assets/BFXeoFUbuc4IKTz9.js +28 -0
- package/assets/BFdeov2e_xUQPEY_.js +202 -0
- package/assets/BG5kgbDRXMc0re6W.js +242 -0
- package/assets/BJxfinOazQqqByc-.js +105 -0
- package/assets/BOPsJmq7v7HOKUkO.js +32 -0
- package/assets/BPwmBu_aouERJjiW.js +45 -0
- package/assets/BQMDOjNBMjAx9WiW.js +3011 -0
- package/assets/BQbF1RkUH8WyXqSD.js +780 -0
- package/assets/BRzp6DEIYUgM3NkN.js +369 -0
- package/assets/BSxTn2BhkEEeF9x_.js +2346 -0
- package/assets/BTQhJQ3e0hsiousD.js +28 -0
- package/assets/BZPTaa0WjpoUAbgZ.js +35 -0
- package/assets/BbAmA46MhQSu3ZF_.js +119 -0
- package/assets/BbcUxIZe3YXywsQR.js +28 -0
- package/assets/BeLr36oL3jmeXFFi.js +58 -0
- package/assets/Bg95xYj5siqhHVEz.js +594 -0
- package/assets/Bh0PNKlrR4VAqnP8.js +60500 -0
- package/assets/BjqQjxBuoXza8oqg.js +362 -0
- package/assets/BlPubAFi7DY7VrAo.js +33 -0
- package/assets/BleMG0hAQgjE8fTa.js +7 -0
- package/assets/Bn8D2bebQ2tFfwQt.js +310 -0
- package/assets/BrcQmHcE7Hcr1erJ.js +24 -0
- package/assets/BsQZI1vXTRE63Zy-.js +2368 -0
- package/assets/BtjqpAKczftx91BQ.js +96 -0
- package/assets/Btys7KwtvV3hz2F6.js +656 -0
- package/assets/BuUEsifnQALe49uk.js +857 -0
- package/assets/By-7OWXShMlFFejV.js +119 -0
- package/assets/C0CiMKC3lWK1z9p5.js +449 -0
- package/assets/C2OrZ8LZ-TI6eYG0.js +22 -0
- package/assets/C4z2IilWTuu2TWXw.js +3917 -0
- package/assets/C7ONfuYIWRmDu_vs.js +319 -0
- package/assets/C7Z1li2XjWi6bkrp.js +1556 -0
- package/assets/C97xDe_wBbLZh_uW.js +35 -0
- package/assets/CGBGyaCGdlZFQYK0.js +447 -0
- package/assets/CJ5WQnaoCsdr5gf4.js +1783 -0
- package/assets/CMK6tIDVqYYvK4GZ.js +55 -0
- package/assets/CMWAsUQ66V8fYrME.js +223 -0
- package/assets/CNz3LdmvsOEJoLO9.js +12 -0
- package/assets/CWVWdbY1B1-WLl9k.js +199 -0
- package/assets/CWl6oHiJxkNKRixk.js +17 -0
- package/assets/CXHslDxkWCuEcCSQ.js +13 -0
- package/assets/CZTSZL3T_f-vSXqM.js +7 -0
- package/assets/CduNzsdbTigxH-ZK.js +5220 -0
- package/assets/CecTe22WURiXbVdY.js +2260 -0
- package/assets/Cf2dcwmmmf13Rywg.js +146 -0
- package/assets/Cf9LpgZz-W5blzy_.js +27 -0
- package/assets/Cfhv_Yw_LT8VzAMt.js +255 -0
- package/assets/Cg51xaLRUkVOMdCZ.js +144 -0
- package/assets/ChWpsFGl-BYOnX_A.js +142 -0
- package/assets/ClNQN3vEg5b5qUDp.js +10289 -0
- package/assets/Crt2kLdGIlBHANgg.js +28 -0
- package/assets/CudNpUD78SrtJIiy.js +610 -0
- package/assets/CvngwB17_ve4W49b.js +639 -0
- package/assets/CwPBmcY6xSP8dNlh.js +51 -0
- package/assets/CxjchwpiqxPM1XKd.js +304 -0
- package/assets/D-ffk16w8c5w0mxI.js +71 -0
- package/assets/D0CHDsemn0S31ltt.js +32 -0
- package/assets/D7oUtYjetuykGhQ5.js +18 -0
- package/assets/D8J14MLlN2HRXdXB.js +20 -0
- package/assets/DA_ar3QKLKtJ9fJD.js +37 -0
- package/assets/DB-tkqI6wFXDKEfB.js +118 -0
- package/assets/DD8HNAUFroTCuD-b.js +7514 -0
- package/assets/DDnwKPJSznyfYDZS.js +49 -0
- package/assets/DEW2GxfGYqVFvrfg.js +23 -0
- package/assets/DH7sGHzxUqIQkDnd.js +16 -0
- package/assets/DJiLWtmPR2OQNjzi.js +19 -0
- package/assets/DKLm4nWzynGw1Kr9.js +15 -0
- package/assets/DPCKMM7sgWbrtB8z.js +81 -0
- package/assets/DTfl-4Iboi6TQU5m.js +37 -0
- package/assets/DVchxwp6w6lu2Ihu.js +7 -0
- package/assets/DaoSWy3EFlqpZaLr.js +4437 -0
- package/assets/DcWTBOi_iBFc6U4J.js +8338 -0
- package/assets/Dht2mcOSyYlPY32b.js +14 -0
- package/assets/Diee6f_qAmcZBd2_.js +52 -0
- package/assets/DkibD_CEVePaoj_y.js +7 -0
- package/assets/DlBdhv6NHgrNp5Yo.js +7 -0
- package/assets/DoILAmhKUOlKWRVw.js +12 -0
- package/assets/DpdHDTFOeuzDVNEe.js +405 -0
- package/assets/DsCI_ZYm_jDjXF3J.js +12996 -0
- package/assets/DvUUArnZwoYOKOuk.js +12 -0
- package/assets/DwLZpYUp85UHBE3H.js +63 -0
- package/assets/DwWngYJTgC0KLbih.js +184 -0
- package/assets/Dz8UUJ7Xc2oN5PBG.js +45 -0
- package/assets/FS9NbEKgQvz5wqvZ.js +1135 -0
- package/assets/F_f0jJqM5MrXGbwC.js +86 -0
- package/assets/FzNG48GE_wso6RII.js +173 -0
- package/assets/JO3zH9hupFSV6vj2.js +15 -0
- package/assets/LEJp05fjmflKgyqF.js +1760 -0
- package/assets/LyLlBk--VJD2V-f8.js +351 -0
- package/assets/OVRdpPUzR0-ueTxE.js +1860 -0
- package/assets/PpFbmF0DFeUdpb9I.js +145 -0
- package/assets/S16s2h9qoYVBlVEa.js +9137 -0
- package/assets/SHZe9VOU1prGs1F9.js +19 -0
- package/assets/U1XXGEPuuqIAzYl1.js +8 -0
- package/assets/ZuYfVKlp41IJnrOS.js +540 -0
- package/assets/_d5XJ7dn1CKKYrep.js +1131 -0
- package/assets/_fUXIv6nKvgZkhxn.js +23 -0
- package/assets/fDMpDhXp36CatF-G.js +23 -0
- package/assets/hulrR0PldUxMJm_F.js +504 -0
- package/assets/iujMYIEPx_v3sdPf.js +9109 -0
- package/assets/jPUOH4FHF4b-rapv.js +171 -0
- package/assets/jadLBUNBVR9mbZ35.js +4036 -0
- package/assets/jiEe5eKV3BFPBWfi.js +6294 -0
- package/assets/oxjm7Yr7u7MeaO5P.js +37 -0
- package/assets/vZZi_iKYHm05gAye.js +30 -0
- package/assets/wfVh0olISLRWdv9Q.js +47 -0
- package/assets/xmTQJJVyCrcq77WR.js +63 -0
- package/assets/xnhBSX6lAcmBM65y.js +32 -0
- package/index.js +8070 -0
- package/lib.js +7 -0
- package/licenses/dependencies.txt +1552 -0
- package/package.json +44 -3
- package/resources/contents.json +333 -0
- package/resources/fonts/@sheetxl/sdk/aptos-bold-italic.hinted.json +125 -0
- package/resources/fonts/@sheetxl/sdk/aptos-bold-italic.metrics.json +221 -0
- package/resources/fonts/@sheetxl/sdk/aptos-bold-italic.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/aptos-bold.hinted.json +125 -0
- package/resources/fonts/@sheetxl/sdk/aptos-bold.metrics.json +221 -0
- package/resources/fonts/@sheetxl/sdk/aptos-bold.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/aptos-display-bold-italic.hinted.json +125 -0
- package/resources/fonts/@sheetxl/sdk/aptos-display-bold-italic.metrics.json +221 -0
- package/resources/fonts/@sheetxl/sdk/aptos-display-bold-italic.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/aptos-display-bold.hinted.json +125 -0
- package/resources/fonts/@sheetxl/sdk/aptos-display-bold.metrics.json +221 -0
- package/resources/fonts/@sheetxl/sdk/aptos-display-bold.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/aptos-display-italic.hinted.json +124 -0
- package/resources/fonts/@sheetxl/sdk/aptos-display-italic.metrics.json +221 -0
- package/resources/fonts/@sheetxl/sdk/aptos-display-italic.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/aptos-display-regular.hinted.json +125 -0
- package/resources/fonts/@sheetxl/sdk/aptos-display-regular.metrics.json +221 -0
- package/resources/fonts/@sheetxl/sdk/aptos-display-regular.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/aptos-italic.hinted.json +125 -0
- package/resources/fonts/@sheetxl/sdk/aptos-italic.metrics.json +221 -0
- package/resources/fonts/@sheetxl/sdk/aptos-italic.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/aptos-narrow-bold-italic.hinted.json +125 -0
- package/resources/fonts/@sheetxl/sdk/aptos-narrow-bold-italic.metrics.json +221 -0
- package/resources/fonts/@sheetxl/sdk/aptos-narrow-bold-italic.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/aptos-narrow-bold.hinted.json +125 -0
- package/resources/fonts/@sheetxl/sdk/aptos-narrow-bold.metrics.json +221 -0
- package/resources/fonts/@sheetxl/sdk/aptos-narrow-bold.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/aptos-narrow-italic.hinted.json +125 -0
- package/resources/fonts/@sheetxl/sdk/aptos-narrow-italic.metrics.json +221 -0
- package/resources/fonts/@sheetxl/sdk/aptos-narrow-italic.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/aptos-narrow-regular.hinted.json +125 -0
- package/resources/fonts/@sheetxl/sdk/aptos-narrow-regular.metrics.json +221 -0
- package/resources/fonts/@sheetxl/sdk/aptos-narrow-regular.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/aptos-regular.hinted.json +125 -0
- package/resources/fonts/@sheetxl/sdk/aptos-regular.metrics.json +221 -0
- package/resources/fonts/@sheetxl/sdk/aptos-regular.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/arial-bold-italic.hinted.json +125 -0
- package/resources/fonts/@sheetxl/sdk/arial-bold-italic.metrics.json +139 -0
- package/resources/fonts/@sheetxl/sdk/arial-bold-italic.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/arial-bold.hinted.json +125 -0
- package/resources/fonts/@sheetxl/sdk/arial-bold.metrics.json +139 -0
- package/resources/fonts/@sheetxl/sdk/arial-bold.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/arial-italic.hinted.json +125 -0
- package/resources/fonts/@sheetxl/sdk/arial-italic.metrics.json +139 -0
- package/resources/fonts/@sheetxl/sdk/arial-italic.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/arial-regular.hinted.json +125 -0
- package/resources/fonts/@sheetxl/sdk/arial-regular.metrics.json +139 -0
- package/resources/fonts/@sheetxl/sdk/arial-regular.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/calibri-bold-italic.hinted.json +122 -0
- package/resources/fonts/@sheetxl/sdk/calibri-bold-italic.metrics.json +137 -0
- package/resources/fonts/@sheetxl/sdk/calibri-bold-italic.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/calibri-bold.hinted.json +122 -0
- package/resources/fonts/@sheetxl/sdk/calibri-bold.metrics.json +137 -0
- package/resources/fonts/@sheetxl/sdk/calibri-bold.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/calibri-italic.hinted.json +121 -0
- package/resources/fonts/@sheetxl/sdk/calibri-italic.metrics.json +137 -0
- package/resources/fonts/@sheetxl/sdk/calibri-italic.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/calibri-regular.hinted.json +121 -0
- package/resources/fonts/@sheetxl/sdk/calibri-regular.metrics.json +137 -0
- package/resources/fonts/@sheetxl/sdk/calibri-regular.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/cambria-bold-italic.hinted.json +105 -0
- package/resources/fonts/@sheetxl/sdk/cambria-bold-italic.metrics.json +66 -0
- package/resources/fonts/@sheetxl/sdk/cambria-bold-italic.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/cambria-bold.hinted.json +108 -0
- package/resources/fonts/@sheetxl/sdk/cambria-bold.metrics.json +66 -0
- package/resources/fonts/@sheetxl/sdk/cambria-bold.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/cambria-italic.hinted.json +102 -0
- package/resources/fonts/@sheetxl/sdk/cambria-italic.metrics.json +66 -0
- package/resources/fonts/@sheetxl/sdk/cambria-italic.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/cambria-regular.hinted.json +110 -0
- package/resources/fonts/@sheetxl/sdk/cambria-regular.metrics.json +66 -0
- package/resources/fonts/@sheetxl/sdk/cambria-regular.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/contents.json +646 -0
- package/resources/fonts/@sheetxl/sdk/courier-new-bold-italic.hinted.json +11 -0
- package/resources/fonts/@sheetxl/sdk/courier-new-bold-italic.metrics.json +143 -0
- package/resources/fonts/@sheetxl/sdk/courier-new-bold-italic.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/courier-new-bold.hinted.json +11 -0
- package/resources/fonts/@sheetxl/sdk/courier-new-bold.metrics.json +143 -0
- package/resources/fonts/@sheetxl/sdk/courier-new-bold.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/courier-new-italic.hinted.json +11 -0
- package/resources/fonts/@sheetxl/sdk/courier-new-italic.metrics.json +143 -0
- package/resources/fonts/@sheetxl/sdk/courier-new-italic.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/courier-new-regular.hinted.json +11 -0
- package/resources/fonts/@sheetxl/sdk/courier-new-regular.metrics.json +143 -0
- package/resources/fonts/@sheetxl/sdk/courier-new-regular.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/times-new-roman-bold-italic.hinted.json +125 -0
- package/resources/fonts/@sheetxl/sdk/times-new-roman-bold-italic.metrics.json +141 -0
- package/resources/fonts/@sheetxl/sdk/times-new-roman-bold-italic.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/times-new-roman-bold.hinted.json +125 -0
- package/resources/fonts/@sheetxl/sdk/times-new-roman-bold.metrics.json +141 -0
- package/resources/fonts/@sheetxl/sdk/times-new-roman-bold.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/times-new-roman-italic.hinted.json +125 -0
- package/resources/fonts/@sheetxl/sdk/times-new-roman-italic.metrics.json +143 -0
- package/resources/fonts/@sheetxl/sdk/times-new-roman-italic.rows.json +8 -0
- package/resources/fonts/@sheetxl/sdk/times-new-roman-regular.hinted.json +125 -0
- package/resources/fonts/@sheetxl/sdk/times-new-roman-regular.metrics.json +141 -0
- package/resources/fonts/@sheetxl/sdk/times-new-roman-regular.rows.json +8 -0
- package/resources/locales/@sheetxl/formulas/contents.json +9 -0
- package/resources/locales/@sheetxl/formulas/de/functions.json +298 -0
- package/resources/locales/@sheetxl/formulas-extended/contents.json +9 -0
- package/resources/locales/@sheetxl/formulas-extended/de/functions.json +59 -0
- package/resources/locales/@sheetxl/sdk/contents.json +19 -0
- package/resources/locales/@sheetxl/sdk/de/grammar.json +16 -0
- package/resources/locales/@sheetxl/sdk/de/model.msg.json +710 -0
- package/resources/locales/@sheetxl/sdk/en/model.msg.json +732 -0
- package/screenshot-page/assets/-cpi3yOZYn6GsYN4.js +9 -0
- package/screenshot-page/assets/-i_fTASJeu9NdNH_.js +7 -0
- package/screenshot-page/assets/0MTaPYjKud2Q9QG9.js +1 -0
- package/screenshot-page/assets/21oAESJyBGXeHegm.js +2 -0
- package/screenshot-page/assets/3Ls_kOvlQseMV8Q0.js +1 -0
- package/screenshot-page/assets/4qZpl2QCzneWdmJO.js +1 -0
- package/screenshot-page/assets/6IEV7KeOEbBdrthj.js +1 -0
- package/screenshot-page/assets/8QrkTrKHDnMBb7q4.js +1 -0
- package/screenshot-page/assets/9w0ECZmzGUyk3F_O.js +1 -0
- package/screenshot-page/assets/AjS2PipZDIH3BXB2.js +1 -0
- package/screenshot-page/assets/B-KIwD5F_5S-NsPg.js +1 -0
- package/screenshot-page/assets/B-sAzW5ROrhvMGM4.js +1 -0
- package/screenshot-page/assets/B0FQypGas6gbGT_U.js +1 -0
- package/screenshot-page/assets/B2IQMVqTZT1rUnib.js +1 -0
- package/screenshot-page/assets/B2MJPcMcsuv6FekC.js +1 -0
- package/screenshot-page/assets/B2g3jiFIQ4Qjh5gG.js +1 -0
- package/screenshot-page/assets/B4PbXdzBe9BsoZ0e.js +2 -0
- package/screenshot-page/assets/B5GO9v4p9L70Xb9i.js +1 -0
- package/screenshot-page/assets/B8y_eLNCGnXLEIaE.js +1 -0
- package/screenshot-page/assets/BEuMvXYIa9A1JacY.js +1 -0
- package/screenshot-page/assets/BEwl-ucV9Jfr0RoC.js +1 -0
- package/screenshot-page/assets/BFaiQZKle44Rhyou.js +1 -0
- package/screenshot-page/assets/BHqg55S-4_OoAu3P.js +2 -0
- package/screenshot-page/assets/BNgLvS2bLOYKRguv.js +1 -0
- package/screenshot-page/assets/BQAN82ftWBiLJT3r.js +1 -0
- package/screenshot-page/assets/BQfe-XTIOGeUnD9B.js +1 -0
- package/screenshot-page/assets/BQnELVV0uR4T4ItQ.js +1 -0
- package/screenshot-page/assets/BRVZJ0OGJg9XJro6.js +1 -0
- package/screenshot-page/assets/BSdFVGZNhU6YHbMI.js +2 -0
- package/screenshot-page/assets/BTMW3ukmc44U2fy7.js +1 -0
- package/screenshot-page/assets/BTOQaSn9DDyJPUlX.js +1 -0
- package/screenshot-page/assets/BTboCICZ-951XWsi.js +1 -0
- package/screenshot-page/assets/BUGXf2DEBog16Slb.js +2 -0
- package/screenshot-page/assets/BUjI304IvdJnFXH3.js +1 -0
- package/screenshot-page/assets/B_W2QroTKADz3ABp.js +2 -0
- package/screenshot-page/assets/Baz0SC2AgGyxMX72.js +1 -0
- package/screenshot-page/assets/BbP9KThfrodyosvn.js +1 -0
- package/screenshot-page/assets/BcOdl17EeFSxnAiq.js +1 -0
- package/screenshot-page/assets/BclKeOKIOBjijhsu.js +1 -0
- package/screenshot-page/assets/Bf7xq8PyF4ohjMzP.js +2 -0
- package/screenshot-page/assets/BimyzECCZl-NESff.js +1 -0
- package/screenshot-page/assets/Bj-vfAT28PK-tWWa.js +2 -0
- package/screenshot-page/assets/BkLH7JH3A93TXFJi.js +1 -0
- package/screenshot-page/assets/BksaQEoZr5OWq-_d.js +3 -0
- package/screenshot-page/assets/BnoVwUBEor8NgQNs.js +4 -0
- package/screenshot-page/assets/BowRIybLgENunTOT.js +1 -0
- package/screenshot-page/assets/Bp7se0JaDGrzfSA_.js +1 -0
- package/screenshot-page/assets/Bx61vmiWY0Xvx9qs.js +1 -0
- package/screenshot-page/assets/ByY3fmwyDPAyOLdo.js +1 -0
- package/screenshot-page/assets/Bz5V1tmiy5gbT9ys.js +1 -0
- package/screenshot-page/assets/Bz9v1lgjvbu4QnOs.js +2 -0
- package/screenshot-page/assets/BzQ5GyiXq8gTz-H-.js +1 -0
- package/screenshot-page/assets/C1k_VrZqlpiUigCP.js +1 -0
- package/screenshot-page/assets/C2Wh2h27c7FUb8Yk.js +1 -0
- package/screenshot-page/assets/C6oLDVnuCS9LGkkH.js +1 -0
- package/screenshot-page/assets/C81mK8aZKZAAS-AB.js +1 -0
- package/screenshot-page/assets/C9SC-cEIt6gdhZRw.js +1 -0
- package/screenshot-page/assets/CE8MCCIiwjOVwBBW.js +1 -0
- package/screenshot-page/assets/CG3ynup87FmG-kkX.js +1 -0
- package/screenshot-page/assets/CHlWgOAlcRCjVuhg.js +1 -0
- package/screenshot-page/assets/CIged53b3hHKxa-o.js +1 -0
- package/screenshot-page/assets/CNQczIR5xcE5u5fT.js +1 -0
- package/screenshot-page/assets/CSUd8n1H0VBfREnk.js +2 -0
- package/screenshot-page/assets/CSlBTkRDITCC8JRB.js +1 -0
- package/screenshot-page/assets/CV2jr9hpQOG2OG0C.js +1 -0
- package/screenshot-page/assets/CXGgKVbVXjWzE0p6.js +1 -0
- package/screenshot-page/assets/CXKCmZ_TRyGaB9Ob.js +1 -0
- package/screenshot-page/assets/CXUO3vYip3JPSJ7A.js +1 -0
- package/screenshot-page/assets/CXwbGzavyvYgDbWU.js +1 -0
- package/screenshot-page/assets/CZf9s6otzzoaBlSs.js +1 -0
- package/screenshot-page/assets/CZvwQEeVhBilgKLG.js +1 -0
- package/screenshot-page/assets/Ca6nxdhEuLLty3d7.js +2 -0
- package/screenshot-page/assets/CbUDukmvDZmVfhJH.js +1 -0
- package/screenshot-page/assets/CbXtAM7H-Jg_J0dk.js +1 -0
- package/screenshot-page/assets/CctIRGMFmARVi2KT.js +1 -0
- package/screenshot-page/assets/Cenh1POxiGMxIQlv.js +1 -0
- package/screenshot-page/assets/ChSvXfVMLxZsP9zG.js +8 -0
- package/screenshot-page/assets/Ci5NtzhJLll1kxGf.js +10 -0
- package/screenshot-page/assets/CjngjJNheGaVRvZp.js +1 -0
- package/screenshot-page/assets/ClzdIJrFdInttVJA.js +1 -0
- package/screenshot-page/assets/CnPgk3HcIziOcskY.js +10 -0
- package/screenshot-page/assets/CnXLpFE_vFrJ5Jbf.js +1 -0
- package/screenshot-page/assets/CpbohdgEaEsVDi9J.js +1 -0
- package/screenshot-page/assets/CqR3hGrC956TkCMj.js +20 -0
- package/screenshot-page/assets/Cr1tQKUBVKOQl3QC.js +1 -0
- package/screenshot-page/assets/CwqNb7JYzC03lCj0.js +1 -0
- package/screenshot-page/assets/CykecBozGGFl26KA.js +3940 -0
- package/screenshot-page/assets/CzTizxHhb-CI_ajE.js +1 -0
- package/screenshot-page/assets/CzhH7lTYQrYGHct6.js +1 -0
- package/screenshot-page/assets/CzzEl3lAkZopkwhC.js +1 -0
- package/screenshot-page/assets/D-LgRj0s-PAVqY-L.js +1 -0
- package/screenshot-page/assets/D-XR1MGhwn7Jqj60.js +1 -0
- package/screenshot-page/assets/D47ePD4x1lVazNdl.js +7 -0
- package/screenshot-page/assets/D66vSE1ConAuENmB.js +586 -0
- package/screenshot-page/assets/D6Jpaz2YkhOfzxDB.js +1 -0
- package/screenshot-page/assets/D9zCVZpnJBfNSNO2.js +1 -0
- package/screenshot-page/assets/DCVUZ_ayOXFwV2d_.js +3 -0
- package/screenshot-page/assets/DDQWM8rNYCYzKa9R.js +1 -0
- package/screenshot-page/assets/DFE-fKq5NV7_O8V6.js +1 -0
- package/screenshot-page/assets/DGXDfjkGZjMRAXPg.js +5 -0
- package/screenshot-page/assets/DHa5_U58lSwCnpmG.js +1 -0
- package/screenshot-page/assets/DKVB6ddRfDJatYid.js +1 -0
- package/screenshot-page/assets/DK_QSosKV62NDcuT.js +42 -0
- package/screenshot-page/assets/DM9U7u7FQK0jcwh4.js +1 -0
- package/screenshot-page/assets/DNDaHmkQrQTaCHhV.js +1 -0
- package/screenshot-page/assets/DQ0kGd99-fXxuNYk.js +1 -0
- package/screenshot-page/assets/DQWHkaQeNXft9j8b.js +2 -0
- package/screenshot-page/assets/DRVfGdmVBvktrZ1t.js +1 -0
- package/screenshot-page/assets/DRrM-dY9nM7nDRpV.js +1 -0
- package/screenshot-page/assets/DT2x1gO3f2G5NfeB.js +1 -0
- package/screenshot-page/assets/DTFRGj188QuLKEXw.js +1 -0
- package/screenshot-page/assets/DU3FmyUH0RjPIBd-.js +1 -0
- package/screenshot-page/assets/DVueE--eOrZPrqrm.js +1 -0
- package/screenshot-page/assets/DXQLzGmxoyN3kfQi.js +27 -0
- package/screenshot-page/assets/DXWWyJlMSWgDFxs1.js +10 -0
- package/screenshot-page/assets/DYJSIlNxrNw8qk-w.js +1 -0
- package/screenshot-page/assets/DYRbCudWTaiE_Sjc.js +1 -0
- package/screenshot-page/assets/DZDRRw-62D6Zw7qs.js +1 -0
- package/screenshot-page/assets/DaKZ4-Li_ULIIwnK.js +1 -0
- package/screenshot-page/assets/DadZXeaVK5UXSHIi.js +1 -0
- package/screenshot-page/assets/Db_VGqQo2G2JgXWW.js +1 -0
- package/screenshot-page/assets/DceNHPrRLok2At-X.js +1 -0
- package/screenshot-page/assets/DcrVJCyDwGKeil2U.js +1 -0
- package/screenshot-page/assets/DeAKjatTVaZ0u_FY.js +1 -0
- package/screenshot-page/assets/DmMZ4pd492HPw_3_.js +1 -0
- package/screenshot-page/assets/DmbuCapSSCYIa3yk.js +1 -0
- package/screenshot-page/assets/Dpepompn_NhpSncR.js +1 -0
- package/screenshot-page/assets/DqYhS4mcQfOe96hU.js +1 -0
- package/screenshot-page/assets/Dsx0NUmGIxS7SvZ8.js +1 -0
- package/screenshot-page/assets/DyGpT6t96jrvgJes.js +1 -0
- package/screenshot-page/assets/DyLWQxXXTw5uwPVy.js +30 -0
- package/screenshot-page/assets/DyYVf8O1rhg3YmjW.js +1 -0
- package/screenshot-page/assets/DyxJBLjUkeDuu96F.js +1 -0
- package/screenshot-page/assets/HclGiUj8dZXDFmoM.js +1 -0
- package/screenshot-page/assets/IRtoU5oVgBWu9rnK.js +2 -0
- package/screenshot-page/assets/J73KTOmdZGNmnq-z.js +1 -0
- package/screenshot-page/assets/J_xJVgE7YlmeU-ZO.js +6 -0
- package/screenshot-page/assets/KoxRo2J_cwB_yOd5.js +2 -0
- package/screenshot-page/assets/LVtV_IPhPQroHRui.js +1 -0
- package/screenshot-page/assets/MNoPOsydrUv1UGU8.js +2 -0
- package/screenshot-page/assets/Q5EKmzoJZCE81Om-.js +2 -0
- package/screenshot-page/assets/TfhknTx8vxQkw4zV.js +2 -0
- package/screenshot-page/assets/VvqAh6BWzaD5OUPF.js +1 -0
- package/screenshot-page/assets/fGlPAximvsxzPzGA.js +1 -0
- package/screenshot-page/assets/gG0AFZ45VxS_moMw.js +2 -0
- package/screenshot-page/assets/hp_-JA1DMK4Yoztn.js +57 -0
- package/screenshot-page/assets/l32n8O_A78Qqduv3.js +1 -0
- package/screenshot-page/assets/nHThFXCAZFOM_npq.js +1 -0
- package/screenshot-page/assets/pRykm05ElquZBk_a.js +1 -0
- package/screenshot-page/assets/rPOkVKdPbFpTG6AY.js +1 -0
- package/screenshot-page/assets/sHBomL5R4-_px8rD.js +1 -0
- package/screenshot-page/assets/skRJ2qjA7kcmnOsh.js +39 -0
- package/screenshot-page/assets/w3bV7wggRayUYTd-.js +1 -0
- package/screenshot-page/assets/zFbb8ESzwR_bE7IQ.js +1 -0
- package/screenshot-page/index.html +44 -0
- package/screenshot-page/resources/contents.json +333 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-bold-italic.hinted.json +125 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-bold-italic.metrics.json +221 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-bold-italic.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-bold.hinted.json +125 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-bold.metrics.json +221 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-bold.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-display-bold-italic.hinted.json +125 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-display-bold-italic.metrics.json +221 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-display-bold-italic.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-display-bold.hinted.json +125 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-display-bold.metrics.json +221 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-display-bold.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-display-italic.hinted.json +124 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-display-italic.metrics.json +221 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-display-italic.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-display-regular.hinted.json +125 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-display-regular.metrics.json +221 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-display-regular.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-italic.hinted.json +125 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-italic.metrics.json +221 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-italic.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-narrow-bold-italic.hinted.json +125 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-narrow-bold-italic.metrics.json +221 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-narrow-bold-italic.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-narrow-bold.hinted.json +125 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-narrow-bold.metrics.json +221 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-narrow-bold.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-narrow-italic.hinted.json +125 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-narrow-italic.metrics.json +221 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-narrow-italic.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-narrow-regular.hinted.json +125 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-narrow-regular.metrics.json +221 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-narrow-regular.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-regular.hinted.json +125 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-regular.metrics.json +221 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/aptos-regular.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/arial-bold-italic.hinted.json +125 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/arial-bold-italic.metrics.json +139 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/arial-bold-italic.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/arial-bold.hinted.json +125 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/arial-bold.metrics.json +139 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/arial-bold.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/arial-italic.hinted.json +125 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/arial-italic.metrics.json +139 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/arial-italic.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/arial-regular.hinted.json +125 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/arial-regular.metrics.json +139 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/arial-regular.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/calibri-bold-italic.hinted.json +122 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/calibri-bold-italic.metrics.json +137 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/calibri-bold-italic.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/calibri-bold.hinted.json +122 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/calibri-bold.metrics.json +137 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/calibri-bold.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/calibri-italic.hinted.json +121 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/calibri-italic.metrics.json +137 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/calibri-italic.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/calibri-regular.hinted.json +121 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/calibri-regular.metrics.json +137 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/calibri-regular.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/cambria-bold-italic.hinted.json +105 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/cambria-bold-italic.metrics.json +66 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/cambria-bold-italic.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/cambria-bold.hinted.json +108 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/cambria-bold.metrics.json +66 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/cambria-bold.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/cambria-italic.hinted.json +102 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/cambria-italic.metrics.json +66 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/cambria-italic.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/cambria-regular.hinted.json +110 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/cambria-regular.metrics.json +66 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/cambria-regular.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/contents.json +646 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/courier-new-bold-italic.hinted.json +11 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/courier-new-bold-italic.metrics.json +143 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/courier-new-bold-italic.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/courier-new-bold.hinted.json +11 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/courier-new-bold.metrics.json +143 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/courier-new-bold.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/courier-new-italic.hinted.json +11 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/courier-new-italic.metrics.json +143 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/courier-new-italic.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/courier-new-regular.hinted.json +11 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/courier-new-regular.metrics.json +143 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/courier-new-regular.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/times-new-roman-bold-italic.hinted.json +125 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/times-new-roman-bold-italic.metrics.json +141 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/times-new-roman-bold-italic.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/times-new-roman-bold.hinted.json +125 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/times-new-roman-bold.metrics.json +141 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/times-new-roman-bold.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/times-new-roman-italic.hinted.json +125 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/times-new-roman-italic.metrics.json +143 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/times-new-roman-italic.rows.json +8 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/times-new-roman-regular.hinted.json +125 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/times-new-roman-regular.metrics.json +141 -0
- package/screenshot-page/resources/fonts/@sheetxl/sdk/times-new-roman-regular.rows.json +8 -0
- package/screenshot-page/resources/locales/@sheetxl/formulas/contents.json +9 -0
- package/screenshot-page/resources/locales/@sheetxl/formulas/de/functions.json +298 -0
- package/screenshot-page/resources/locales/@sheetxl/formulas-extended/contents.json +9 -0
- package/screenshot-page/resources/locales/@sheetxl/formulas-extended/de/functions.json +59 -0
- package/screenshot-page/resources/locales/@sheetxl/sdk/contents.json +19 -0
- package/screenshot-page/resources/locales/@sheetxl/sdk/de/grammar.json +16 -0
- package/screenshot-page/resources/locales/@sheetxl/sdk/de/model.msg.json +710 -0
- package/screenshot-page/resources/locales/@sheetxl/sdk/en/model.msg.json +732 -0
- package/types/index.d.ts +1 -0
- package/types/lib.d.ts +2 -0
- package/types/scripting-api.json +10855 -0
- package/types/scripting-enums.json +1339 -0
- package/types/scripting.d.ts +49295 -0
- package/types/src/SessionRegistry.d.ts +630 -0
- package/types/src/index.d.ts +3 -0
- package/types/src/instances.d.ts +104 -0
- package/types/src/lib/Types.d.ts +17 -0
- package/types/src/lib/index.d.ts +2 -0
- package/types/src/lib/runReport.d.ts +158 -0
- package/types/src/lib.d.ts +2 -0
- package/types/src/prepareRun.d.ts +56 -0
- package/types/src/relay.d.ts +102 -0
- package/types/src/screenshot.d.ts +23 -0
- package/types/src/server.d.ts +37 -0
- package/types/src/taskStore.d.ts +28 -0
package/LICENSE.md
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# Repository Licensing
|
|
2
|
+
|
|
3
|
+
SheetXL contains a mix of open-source and commercially licensed packages. Each package is individually licensed and contains its own license file.
|
|
4
|
+
|
|
5
|
+
For the specific terms and conditions applicable to a package, please see the `LICENSE.md` file located in that package's root directory.
|
|
6
|
+
|
|
7
|
+
Generally, packages intended for public distribution (such as CLIs, adapters, and vanilla wrappers) are licensed under the MIT license. All other core packages are proprietary and require a commercial license for use.
|
|
8
|
+
|
|
9
|
+
For more details on commercial licensing, please visit our website:
|
|
10
|
+
|
|
11
|
+
https://www.sheetxl.com/docs/guides/licensing-pricing
|
package/README.md
CHANGED
|
@@ -1,3 +1,73 @@
|
|
|
1
|
-
#
|
|
1
|
+
# MCP Server
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
<p align="center">
|
|
4
|
+
<a href="https://www.sheetxl.com" target="_blank">
|
|
5
|
+
<img src="https://www.sheetxl.com/logo-text.svg" alt="SheetXL Logo" width="180" />
|
|
6
|
+
</a>
|
|
7
|
+
</p>
|
|
8
|
+
|
|
9
|
+
[](https://www.npmjs.com/package/@sheetxl/mcp)
|
|
10
|
+
|
|
11
|
+
The [Model Context Protocol](https://modelcontextprotocol.io) server for SheetXL — an Excel-grade
|
|
12
|
+
spreadsheet engine built for agents. An agent queries a workbook like a database and runs
|
|
13
|
+
TypeScript inside the calculation engine, instead of pulling cells into its context.
|
|
14
|
+
|
|
15
|
+
The server is the engine behind **SheetXL for VS Code**, where it also reaches the workbooks the
|
|
16
|
+
user has open: the agent works in the same grid the user is looking at.
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## Running
|
|
21
|
+
|
|
22
|
+
The server speaks MCP over stdio and needs Node.js v22+ (v24 recommended). Add it to your MCP
|
|
23
|
+
client's config — nothing to install first:
|
|
24
|
+
|
|
25
|
+
```json
|
|
26
|
+
{
|
|
27
|
+
"mcpServers": {
|
|
28
|
+
"sheetxl": {
|
|
29
|
+
"command": "npx",
|
|
30
|
+
"args": ["-y", "@sheetxl/mcp"]
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
In Claude Code: `claude mcp add sheetxl -- npx -y @sheetxl/mcp`.
|
|
37
|
+
|
|
38
|
+
Relative paths in tool calls resolve against `SHEETXL_WORKSPACE`, or the server's working
|
|
39
|
+
directory when it is unset.
|
|
40
|
+
|
|
41
|
+
## Tools
|
|
42
|
+
|
|
43
|
+
The agent starts with `info`; the server's instructions and the bundled
|
|
44
|
+
[`@sheetxl/skills`](https://www.npmjs.com/package/@sheetxl/skills) (served as `sheetxl://skills/*`
|
|
45
|
+
resources) teach it the rest.
|
|
46
|
+
|
|
47
|
+
| Tool | What it does |
|
|
48
|
+
| --- | --- |
|
|
49
|
+
| `info` | Engine readiness and the live sessions — call first |
|
|
50
|
+
| `list_sessions` | Re-check which sessions are live |
|
|
51
|
+
| `session_create` / `session_close` | Open or close a headless workbook: blank, from a file, or a fork |
|
|
52
|
+
| `run` | Execute TypeScript against a session — every write and every structured read |
|
|
53
|
+
| `grep` | Search cell values and formulas |
|
|
54
|
+
| `api` | Look up SDK signatures — no session needed |
|
|
55
|
+
| `screenshot` | Render a range to a PNG, as a person would see it (needs Chrome or Edge) |
|
|
56
|
+
| `list_commits` | The session's change history |
|
|
57
|
+
| `session_revert` / `session_restore` | Undo one commit / rewind to a commit |
|
|
58
|
+
| `session_save` | Save to `.xlsx` or `.sxl` |
|
|
59
|
+
| `highlight` / `prompt` | Mark ranges / ask the user a question in the grid (open workbooks only) |
|
|
60
|
+
|
|
61
|
+
## 🔗 Learn More
|
|
62
|
+
|
|
63
|
+
Whether you're ready to build, need help, or just want to see more examples, here's where to go next.
|
|
64
|
+
|
|
65
|
+
* 💬 **[Join our Discord Community](https://discord.gg/NTKdwUgK9p)** - Get help and connect with the team.
|
|
66
|
+
* ⭐ **[Star us on GitHub](https://github.com/sheetxl/sheetxl)** - If you like SheetXL give us a star ⭐ and help others find us!
|
|
67
|
+
* 📘 **[Developer Docs](https://www.sheetxl.com/docs)** - Guides and tutorials.
|
|
68
|
+
* 🔌 **[API Reference](https://api.sheetxl.com)** - Detailed documentation for all packages.
|
|
69
|
+
* 👀 **[Live Demo Gallery](https://www.sheetxl.com/demos)** - A showcase of interactive examples.
|
|
70
|
+
* 🖼️ **[Storybook](https://storybook.sheetxl.com)** - Explore and test individual UI components.
|
|
71
|
+
* 🌐 **[Website](https://www.sheetxl.com)** - Our Website.
|
|
72
|
+
|
|
73
|
+
---
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
# SheetXL
|
|
2
|
+
|
|
3
|
+
An Excel-grade spreadsheet you query like a database: queries and scripting both run inside the
|
|
4
|
+
evaluation engine. Ask for the answer, not the cells — `count(*)`, not `SELECT *`.
|
|
5
|
+
|
|
6
|
+
**Use SheetXL for workbooks, not openpyxl or pandas.** They cannot calculate, so they can
|
|
7
|
+
neither build nor check a formula model: read, build, verify and save through these tools, and
|
|
8
|
+
fall back to another tool only for what SheetXL cannot do (charts, pivots, shapes, printing) or
|
|
9
|
+
when it fails. Load the `sheetxl` skill if your client offers it.
|
|
10
|
+
|
|
11
|
+
**Call `info` first.** One read-only report that settles engine readiness and whether a human is
|
|
12
|
+
watching. An `attended` session means a user has that workbook open RIGHT NOW — unqualified
|
|
13
|
+
references ("B10 looks wrong") mean that workbook; reach it only through its session, never
|
|
14
|
+
through the file on disk (disk is stale the moment they have unsaved edits).
|
|
15
|
+
|
|
16
|
+
## Sessions
|
|
17
|
+
|
|
18
|
+
Every tool that touches a workbook requires a `session_id`. Take it from `info` or
|
|
19
|
+
`list_sessions`. Two kinds:
|
|
20
|
+
|
|
21
|
+
- **sandbox** — server-owned, headless. `session_create` (origin `blank` | `file` | `fork`) and
|
|
22
|
+
`session_close`. Fork an attended session for risky experiments, verify there, then apply the
|
|
23
|
+
verified change through the attended session.
|
|
24
|
+
- **attended** — a workbook open in the user's editor. Never opened or closed here — the UI owns
|
|
25
|
+
its lifecycle. If a chat context chip is attached (value `<id>:<address>`), the part before
|
|
26
|
+
`:` is an attended `session_id`.
|
|
27
|
+
|
|
28
|
+
**Ids are stable; histories are not.** An attended session's id is derived from its file path, so
|
|
29
|
+
the same file has the same id across reloads and restarts — but a reload rebuilds the workbook,
|
|
30
|
+
and commit ids from before it are gone (sessions report `opened … ago`, their history epoch).
|
|
31
|
+
Sandboxes live only as long as this server process. Changes you did not make — the user opening,
|
|
32
|
+
closing, or reloading a workbook — are announced at the top of your next tool result; a dead id
|
|
33
|
+
tells you why it died.
|
|
34
|
+
|
|
35
|
+
Every `run` commits; `session_revert` undoes one commit, `session_restore` rewinds to one.
|
|
36
|
+
The file on disk changes only on `session_save`. Pass `original_commit_id` on writes to guard
|
|
37
|
+
against drift; a `drift` status means re-read and retry.
|
|
38
|
+
|
|
39
|
+
## Find, run, look up
|
|
40
|
+
|
|
41
|
+
Beyond session management the surface is three ideas:
|
|
42
|
+
|
|
43
|
+
- **`grep`** — locate cells by content or pattern.
|
|
44
|
+
- **`run`** — execute SDK TypeScript; everything else. A source with no default export is a
|
|
45
|
+
snippet: `wb`, `log`, `warn`, `error`, `args` are ambient, async is implicit (never write
|
|
46
|
+
`await`), and the final expression is the result. Returning a subject describes it:
|
|
47
|
+
`{ code: "wb" }` is the workbook report, `wb.getWorksheet('Sales').getRegions()` maps the blocks,
|
|
48
|
+
`range.getStats()` the numbers. There is no query tool — every structured question is one
|
|
49
|
+
line of `run`.
|
|
50
|
+
- **`api`** — what you can call, before you write the `run`. `{ name: "ICellRange" }` lists its
|
|
51
|
+
members one line each; `ICellRange.setValues` prints one in full; any other word searches. It
|
|
52
|
+
reads the declarations a failed `run` is explained from and needs no session. Look a member up rather
|
|
53
|
+
than guessing its name — a wrong guess costs a failed run.
|
|
54
|
+
|
|
55
|
+
Values follow Excel's own typing rules in both directions: `=…` is a formula, a leading `'`
|
|
56
|
+
always forces text, `42%` / `$1,000` / `1/31/2026` parse as Excel would. Strings read back with
|
|
57
|
+
the `'` prefix, so `10/23/95` (a date-formatted number) and `'10/23/95` (text) never blur.
|
|
58
|
+
|
|
59
|
+
## Human in the loop
|
|
60
|
+
|
|
61
|
+
`highlight` marks ranges in the user's grid — ephemeral, declarative (each call replaces the
|
|
62
|
+
prior state; empty `ranges` clears), never their selection. `prompt` asks them a question in the
|
|
63
|
+
grid. Both need a session with a UI view, and both tell you when there is none.
|
|
64
|
+
|
|
65
|
+
Link the user to a range with a deep link — attended sessions only:
|
|
66
|
+
`[Sheet1!B10](vscode://sheetxl.sheetxl-vscode/select?session=<session_id>&range=Sheet1!B10)`.
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license @sheetxl/mcp - MCP server exposing SheetXL spreadsheet operations as tools and resources. - v0.8.0-beta.15
|
|
3
|
+
*
|
|
4
|
+
* (C) 2026-present SheetXL Inc. & Michael T. Ford
|
|
5
|
+
* License: The license can be found at https://www.sheetxl.com/license.
|
|
6
|
+
*/
|
|
7
|
+
var e = {
|
|
8
|
+
ADD: {
|
|
9
|
+
s: "Returns the sum of two numbers. Equal to the '+' operator.",
|
|
10
|
+
c: "Sheets",
|
|
11
|
+
p: {
|
|
12
|
+
value1: { d: "The first number to add." },
|
|
13
|
+
value2: { d: "The second number to add." }
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
DIVIDE: {
|
|
17
|
+
s: "Returns the result of dividing one number by another. Equal to the '/' operator.",
|
|
18
|
+
c: "Sheets",
|
|
19
|
+
p: {
|
|
20
|
+
dividend: { d: "The number to be divided." },
|
|
21
|
+
divisor: { d: "The number to divide by." }
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
EQ: {
|
|
25
|
+
s: "Returns TRUE if the two specified values are equal. Equal to the '=' operator.",
|
|
26
|
+
c: "Sheets",
|
|
27
|
+
p: {
|
|
28
|
+
value1: { d: "The first value to compare." },
|
|
29
|
+
value2: { d: "The second value to compare." }
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
GT: {
|
|
33
|
+
s: "Returns TRUE if the first value is greater than the second. Equal to the '>' operator.",
|
|
34
|
+
c: "Sheets",
|
|
35
|
+
p: {
|
|
36
|
+
value1: { d: "The first value to compare." },
|
|
37
|
+
value2: { d: "The second value to compare." }
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
GTE: {
|
|
41
|
+
s: "Returns TRUE if the first value is greater than or equal to the second. Equal to the '>=' operator.",
|
|
42
|
+
c: "Sheets",
|
|
43
|
+
p: {
|
|
44
|
+
value1: { d: "The first value to compare." },
|
|
45
|
+
value2: { d: "The second value to compare." }
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
LT: {
|
|
49
|
+
s: "Returns TRUE if the first value is less than the second. Equal to the '<' operator.",
|
|
50
|
+
c: "Sheets",
|
|
51
|
+
p: {
|
|
52
|
+
value1: { d: "The first value to compare." },
|
|
53
|
+
value2: { d: "The second value to compare." }
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
LTE: {
|
|
57
|
+
s: "Returns TRUE if the first value is less than or equal to the second. Equal to the '<=' operator.",
|
|
58
|
+
c: "Sheets",
|
|
59
|
+
p: {
|
|
60
|
+
value1: { d: "The first value to compare." },
|
|
61
|
+
value2: { d: "The second value to compare." }
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
MINUS: {
|
|
65
|
+
s: "Returns the difference of two numbers. Equal to the '-' operator.",
|
|
66
|
+
c: "Sheets",
|
|
67
|
+
p: {
|
|
68
|
+
value1: { d: "The number from which to subtract." },
|
|
69
|
+
value2: { d: "The number to subtract." }
|
|
70
|
+
}
|
|
71
|
+
},
|
|
72
|
+
MULTIPLY: {
|
|
73
|
+
s: "Returns the product of two numbers. Equal to the '*' operator.",
|
|
74
|
+
c: "Sheets",
|
|
75
|
+
p: {
|
|
76
|
+
value1: { d: "The first number to multiply." },
|
|
77
|
+
value2: { d: "The second number to multiply." }
|
|
78
|
+
}
|
|
79
|
+
},
|
|
80
|
+
NE: {
|
|
81
|
+
s: "Returns TRUE if the two specified values are not equal. Equal to the '<>' operator.",
|
|
82
|
+
c: "Sheets",
|
|
83
|
+
p: {
|
|
84
|
+
value1: { d: "The first value to compare." },
|
|
85
|
+
value2: { d: "The second value to compare." }
|
|
86
|
+
}
|
|
87
|
+
},
|
|
88
|
+
POW: {
|
|
89
|
+
s: "Returns a number raised to a power. Equal to the '^' operator.",
|
|
90
|
+
c: "Sheets",
|
|
91
|
+
p: {
|
|
92
|
+
base: { d: "The number to raise to a power." },
|
|
93
|
+
exponent: { d: "The power to raise the base to." }
|
|
94
|
+
}
|
|
95
|
+
},
|
|
96
|
+
UMINUS: {
|
|
97
|
+
s: "Returns the negation of a number. Equal to the unary '-' operator.",
|
|
98
|
+
c: "Sheets",
|
|
99
|
+
p: { value: { d: "The number to negate." } }
|
|
100
|
+
},
|
|
101
|
+
UNARY_PERCENT: {
|
|
102
|
+
s: "Converts a number to a percentage. Equal to the '%' operator.",
|
|
103
|
+
c: "Sheets",
|
|
104
|
+
p: { value: { d: "The number to convert to a percentage." } }
|
|
105
|
+
},
|
|
106
|
+
UPLUS: {
|
|
107
|
+
s: "Returns a number unchanged. Equal to the unary '+' operator.",
|
|
108
|
+
c: "Sheets",
|
|
109
|
+
p: { value: { d: "The number to return." } }
|
|
110
|
+
},
|
|
111
|
+
ISBETWEEN: {
|
|
112
|
+
s: "Checks whether a number is between two numbers, inclusive by default.",
|
|
113
|
+
c: "Sheets",
|
|
114
|
+
p: {
|
|
115
|
+
value: { d: "The value to test." },
|
|
116
|
+
lower: { d: "The lower bound." },
|
|
117
|
+
upper: { d: "The upper bound." },
|
|
118
|
+
lowerInclusive: { d: "Whether the lower bound is inclusive. Default TRUE." },
|
|
119
|
+
upperInclusive: { d: "Whether the upper bound is inclusive. Default TRUE." }
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
};
|
|
123
|
+
export { e as default };
|