Files
Stefan Broenner 37aa032503 Docs site: task guides, LLM discoverability layer, and published reference corpus (#769)
* docs: improve discovery and documentation UX

Restructure feature documentation around canonical category pages, improve GitHub Pages navigation and SEO, and align contributor guidance with the canonical-first model.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f3240d8f-e245-4dfb-a1f5-79373ca1ca1f

* docs: add release note

Document the user-visible discovery and documentation navigation improvements.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f3240d8f-e245-4dfb-a1f5-79373ca1ca1f

* docs: complete site SEO improvements

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: f3240d8f-e245-4dfb-a1f5-79373ca1ca1f

* docs: add task guides, LLM discoverability layer, and skills reference to site

Intent-matching content (docs/guides/):
- Five canonical task guides built from verified material: refresh Power
  Query, automate PivotTables, query the Data Model with DAX, run VBA
  macros, and COM automation vs. file-parser libraries
- Guides hub index, Guides nav section, cross-links from feature docs,
  FEATURES.md, home page and troubleshooting

Machine-readable layer for AI assistants (gh-pages/hooks.py):
- /llms.txt (llmstxt.org format) and /llms-full.txt, generated from the
  resolved MkDocs nav so they cannot go stale
- Markdown mirror of every page, advertised via rel=alternate
- /tools.json derived from canonical feature docs, build fails on count
  mismatch with FEATURES.md
- FAQPage JSON-LD generated from existing question admonitions
- Explicit AI-crawler allow policy in robots.txt

Reference corpus (skills/shared/ -> /reference/):
- Publish all 24 expert files as a nav-grouped Reference section
- Fix stray outer code fences in conditionalformat, pivottable and
  slicer that also rendered wrong inside the shipped skill packages

Distribution metadata:
- Correct stale tool/operation counts in mcpb/manifest.json and the CLI
  package description
- Point NuGet PackageProjectUrl and .mcp/server.json at the docs site
- Extend check-doc-counts.ps1 to guard both, so this cannot recur

Validation:
- New gh-pages/audit_site.py gate (canonicals, metadata completeness,
  single H1, image dimensions, internal links, sitemap, llms outputs,
  mirror cleanliness, tools.json counts, robots policy) wired into the
  Pages deploy workflow, keeping the docs-only pre-commit path fast

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f3240d8f-e245-4dfb-a1f5-79373ca1ca1f

* docs: fix marketplace extension identifier and security PoC command

The publisher guide linked to itemName=sbroenne.excelmcp, but the
extension is published as sbroenne.excel-mcp (14 other references in
the repo already use the correct form), so both links 404.

The SECURITY.md path-traversal example invoked 'powerquery export',
which is not a command. Replaced with 'powerquery view', which does
take a file path and so actually illustrates the class of issue.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f3240d8f-e245-4dfb-a1f5-79373ca1ca1f

---------

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f3240d8f-e245-4dfb-a1f5-79373ca1ca1f
2026-08-15 12:25:52 +02:00
..

ExcelMcp CLI Examples

This directory contains example scripts demonstrating ExcelMcp CLI features.

Session Mode Demo

The session mode demo shows how to use sessions for high-performance multi-operation workflows.

Requirements

  • Windows with Excel installed
  • Excel CLI installed (standalone exe from the latest release or via dotnet tool install --global Sbroenne.ExcelMcp.CLI)

Running the Demo

Run these commands from PowerShell on Windows:

# 1. Create a new workbook and open a session (captures the session ID)
$session = (excelcli session create test-session.xlsx | ConvertFrom-Json).sessionId

# 2. Perform multiple operations against the same Excel instance
excelcli sheet create --session $session --sheet Sales
excelcli sheet create --session $session --sheet Customers
excelcli sheet create --session $session --sheet Products
excelcli sheet list --session $session
excelcli powerquery list --session $session

# 3. List active sessions
excelcli session list

# 4. Save all changes and close the session
excelcli session close --session $session --save

What the Demo Does

  1. Creates a test workbook (test-session.xlsx)
  2. Opens a session and captures the session ID
  3. Performs multiple operations using the same Excel instance:
    • Creates 3 worksheets (Sales, Customers, Products)
    • Lists worksheets
    • Lists Power Queries
  4. Lists active sessions
  5. Closes the session with --save (saves all changes)
  6. Leaves a saved workbook that you can open to verify the changes

Expected Performance

Session mode is 75-90% faster than running individual commands because:

  • Only one Excel instance is opened
  • No file open/close overhead between operations
  • All changes committed atomically

Cleanup

Remove-Item test-session.xlsx

Use Cases

Session mode is ideal for:

  • RPA workflows - Automated report generation
  • Data pipelines - ETL operations with multiple steps
  • Testing - Setting up test data across multiple sheets
  • Bulk operations - Making many changes to a workbook