About

I’m Vijay, a Microsoft 365 consultant. I work on SharePoint, Microsoft Search and Copilot deployments for large organizations, and I’ve been writing here since 2008.

I was a Microsoft MVP for SharePoint Server, awarded in 2010 for community contributions – the posts on this blog were a large part of that. I’ve written up the award itself and the MVP Open Day at Microsoft’s Hyderabad campus that came with it. I’m no longer an active MVP, but the habit that earned it – writing things up properly so the next person does not have to work them out from scratch – is still what this site is for.
These days I also contribute to the Microsoft 365 & Power Platform (PnP) community – a few of my SharePoint scripts are merged into Microsoft’s official PnP sample gallery – and I write a weekly LinkedIn newsletter, Copilot, Governed, on getting a tenant ready for Copilot safely.

What this site is

Five Number is where I write up the administrative reality of Microsoft 365 – the part between what a feature promises and what actually happens when you turn it on in a real tenant.

Most of what I publish now falls into three areas:

PnP PowerShell for SharePoint. Connecting, reporting, bulk changes, permission auditing. The scripts admins run every week, written out properly. There’s an index of these at PnP PowerShell for SharePoint Admins.

Copilot administration. What it can and cannot see, how licensing tiers change what users get, and how to get a tenant ready before a rollout rather than firefighting after one.

Governance and oversharing. Finding the permission problems that predate Copilot by years, because those are the ones that turn a rollout into an incident.

How the posts are written

Every script here was run against a live tenant before the post was written, and the output you see is what came back – including the errors. Where the official documentation turned out to be wrong when I actually ran the command, the post says so, because that is the part you cannot find anywhere else.

I keep a demo environment for this: a site with a deliberately awkward mix of column types, nested folders, version history, and permission inheritance broken in two places on purpose. A report that comes back empty proves nothing, so the test data always has something real to find.

The name

The blog started in 2008 under a different focus and the name stuck. It has covered SharePoint since the 2010 days, moved to SharePoint Online, and now spends most of its time on Microsoft 365 and Copilot. The older posts are still here – some of them are old enough to be history rather than how-to.

Tools I’ve built

Free tools that came out of the work here. Open source where the code allows.

  • PnP PowerShell Command Generator – pick an operation, tweak the values, copy a ready-to-run PnP PowerShell command. Runs entirely in your browser. There’s a write-up here.
  • User Access Explorer – see who can reach what across SharePoint Online, grouped by route so oversharing surfaces first. Ships with a GUI. Source on GitHub.
  • Sharing Link Auditor – find, risk-rate and revoke SharePoint Online sharing links tenant-wide. On the PowerShell Gallery (Install-Module SharingLinkAudit) and GitHub.
  • Microsoft Search Query Tool – query SharePoint, OneDrive and Copilot connectors from one box and read the exact Graph request and response, which the classic SharePoint Search Query Tool cannot do. Runs locally with your own delegated token. Source on GitHub.
  • CopilotGovernance – see what Copilot will see before you switch it on: surface oversharing (Everyone, sharing links, guests) across a whole tenant. On the PowerShell Gallery (Install-Module CopilotGovernance).
  • M365 Metrics Monitor – a small local dashboard for your Microsoft 365 admin numbers, built on the Graph with app-only auth. Source on GitHub.
  • SPFx Intranet Suite – open-source SharePoint Framework web parts for a modern intranet, including a List Dashboard that builds charts and KPIs from any list with no Power BI licence. Source on GitHub.
  • SPSchemaCompare – a side-by-side schema diff for SharePoint: what drifted between two sites, or between a saved baseline and a live site. On the PowerShell Gallery (Install-Module SPSchemaCompare).
  • PowerShellBookmark – save, recall and run the commands you type all day: bookmark by name or from history, and pull one up with a picker or tab-completion. On the PowerShell Gallery (Install-Module PowerShellBookmark).
  • m365-governed-mcp – a governance-first Model Context Protocol server for Microsoft 365, so an AI assistant only ever sees what the signed-in user is allowed to. On npm and GitHub.
  • Full Page Capture – a Chrome extension for full-page screenshots that also handles SharePoint’s inner-scroll pages, exporting to PNG, JPG, WebP or PDF. On the Chrome Web Store.
  • Five Number Lightbox – the WordPress plugin that runs the image lightbox on this site. On the WordPress plugin directory.

If something here helped, or you spotted something wrong, the contact page reaches me. Corrections are always welcome – I would rather fix a post than leave it wrong.