Microsoft: 62 of 100 on Ora's agent-readiness scan

In short

Microsoft scores 62 of 100 on Ora's agent-readiness scan, grade C, read on 9 November 2026. 79 percent of the 132,085 domains Ora ranks score under 60, and the average score is 44. The strongest act layer so far, under a home page whose JSON-LD names nothing.

The score

Microsoft is a software and cloud company based in Redmond, Washington, and a major investor in OpenAI.

  • 62of 100, grade C
    Ora's agent-readiness scan of microsoft.com, read 9 November 2026, listed under Identity & Auth.
  • 16Discovery, of 17
    Whether assistants find the company: search presence, Wikipedia and Wikidata, catalogues.
  • 29Access, of 54
    Whether they can read it: the door, text without JavaScript, llms.txt, structured data.
  • 30Usability, of 57
    Whether they can act through it: an MCP server, an API with a specification, sign-in for agents.
  • 0Payments, of 0
    No check in this layer applied to the site.

79 percent of the 132,085 domains Ora ranks score under 60, and the average score is 44.

Ora's one-line summary: Microsoft offers strong developer resource discoverability and SDK packages, but lacks published OpenAPI specifications for agent integration.

What an assistant meets at the door

Before an assistant can read, compare or buy, it has to get in. These rows are the door: whether the bot shield lets the main agents through, what robots.txt tells the search, training and user-triggered agents, and whether the home page has text without running JavaScript.

The door at microsoft.com
CheckResultWhat Ora saw
Not blocked by bot detectionPass, 2 of 2Site accessible to 4 agent user-agents (ChatGPT-User, OAI-SearchBot, Claude-User, PerplexityBot).
Agent crawler reachabilityPass, 2 of 2Reachable to every agent we tested - ChatGPT-User: reachable, OAI-SearchBot: reachable, Claude-User: reachable, PerplexityBot: reachable
robots.txt AI crawler policyPass, 2 of 2AI search crawlers: allowed in 3 of 3 checks (3 crawlers on 1 page). AI training crawlers: allowed in 2 of 2 checks (2 crawlers on 1 page), not scored.
robots.txt agent-user policyPass, 2 of 2No applicable crawl or usage restriction found for 3 user-triggered agents (chatgpt-user, claude-user, perplexity-user) on 1 public page: https://microsoft.com/. Declared policy only;
Content without JavaScriptPartial, 2 of 36598 chars with H1, but 2.8% content ratio is below the 5% target
Homepage not hidden from searchPass, 1 of 1No noindex on the homepage: no robots, googlebot or bingbot meta tag and no X-Robots-Tag header hides it from search.

What it can read, and what it can do

The reading layer is what an assistant takes away from the pages: a text file written for it, markdown on request, structured data about the company, a sitemap. The act layer is whether it can do anything through a published interface rather than by clicking through the site.

Reading microsoft.com
CheckResultWhat Ora saw
llms.txt existsFail, 0 of 1No llms.txt found at /llms.txt or /.well-known/llms.txt.
llms.txt formattingFail, 0 of 2No llms.txt found to evaluate quality
Markdown agent docsFail, 0 of 1Missing markdown content negotiation. Homepage returned text/html when probed with Accept: text/markdown (expected text/markdown), and none of the well-known root paths (/llms.md, /auth.md, /agents.md, /developers.md).
Bot-UA markdown servingFail, 0 of 1No probed bot User-Agent (ChatGPT-User, Claude-User, Perplexity-User) receives markdown when requesting HTML. Optional: detect AI-bot UAs server-side and serve them a markdown representation directly.
JSON-LD structured dataPartial, 1 of 4JSON-LD found (1 block(s)) but no identity type - use SoftwareApplication, Product, Organization, Person, or Article so agents can tell what this site is
Organization schema completenessFail, 0 of 2No Organization type found in JSON-LD
Sitemap existsPass, 2 of 2Valid sitemap found at https://www.microsoft.com/store/sitemap-index.xml with multiple sitemaps entries
Metadata completenessPartial, 1 of 23/4 metadata signals present - missing: og:image
Page token budgetPass, 1 of 1All 1 measured page fit an agent context budget (largest ~2K tokens)
Acting through microsoft.com
CheckResultWhat Ora saw
MCP server / manifestPartial, 5 of 6First-party MCP server published by product org (npm, @playwright/mcp, 9357 score). Add live handshake at /.well-known/mcp for full credit.
MCP well-known discoveryFail, 0 of 2No MCP server URL discovered
Public API with reachable endpointsPartial, 3 of 7API described in documentation at https://developer.microsoft.com but no machine-verifiable API surface confirmed. Best-of-protocols score: 3/7.
Public API/docs linked from homepagePass, 3 of 3Documentation site found at https://developer.microsoft.com
OpenAPI spec publishedFail, 0 of 7No OpenAPI/Swagger specification found
Developer portalPass, 6 of 6Developer documentation portal found at https://developer.microsoft.com
OAuth 2.0 supportPass, 5 of 5OAuth endpoint found at https://login.microsoft.com/services/oauth2/authorize
Scoped permissionsFail, 0 of 5No declared OAuth scopes, security schemes, or scoped-permission documentation found
Multi-language SDK packagesPass, 3 of 3SDK packages found across 3 ecosystems: npm, pypi, rubygems
CLI tool availableFail, 0 of 3No CLI tool found
WebMCP supportDid not apply, 0 of 5Could not fully read this page (only 60 of 61 same-origin script bundles could be read). Nothing that was read uses WebMCP, but the unread part could, so this check is not scored.
Finding Microsoft
CheckResultWhat Ora saw
Wikipedia / Wikidata entity presencePass, 4 of 4Wikipedia "Microsoft" and Wikidata Q2283 both verified - domain confirmed on both sources
Brand name discoverabilityPass, 3 of 3microsoft.com ranks #1 for "Microsoft cloud platform" (search term updated)
Category share of voiceDid not apply, 0 of 6Category share of voice is in beta. It measures whether agents surface you for capability and use-case searches (not just your name).
Developer resource discoverabilityPass, 3 of 3Agent discovered 4 developer-resource types by name (auth docs, developer portal, OpenAPI spec, SDK documentation) across 5 pages

Ora probed the six payment checks and found no x402, MPP, UCP, ACP or AP2 signal, so the pay layer reads 0 of 0.

Three fixes to hand to the web team

Ora estimates how many points each open check would return. These are the largest on this read, in Ora's words where it gave them, so a leader can hand the list over without translating it.

  1. OpenAPI spec published, worth about 4.3 points by Ora's estimate: No OpenAPI/Swagger specification found.
  2. Scoped permissions, worth about 3.9 points by Ora's estimate: No declared OAuth scopes, security schemes, or scoped-permission documentation found.
  3. JSON error responses, worth about 3.1 points by Ora's estimate: API does not return JSON error responses (or no API detected).

Our read

Microsoft ships agent tooling from a home page that was not built for agents. All four agent user agents get in, robots.txt allows the crawlers, the sitemap is valid and the home page gives 6,598 characters with an H1 at a 2.8 percent text ratio; the one JSON-LD block carries no identity type, the metadata lacks og:image and there is no llms.txt, so the Access layer reads 29 of 54. The act layer is the strongest in this series so far: developer.microsoft.com, an OAuth endpoint at login.microsoft.com, SDKs on npm, PyPI and RubyGems, and a first-party MCP server on npm, credited in part for want of a live handshake at /.well-known/mcp; there is no OpenAPI specification and no declared scopes, so the Usability layer reads 30 of 57. Ora probed the six payment checks and found no protocol, so the pay layer reads 0 of 0. An Organization type in the JSON-LD is the cheapest fix; the handshake on the home domain is the one that fits.

Test your own site

Run the same scan on your own domain at ora.ai. The score, the layers and the fixes on this page come from its public result for microsoft.com; a scan of a public site takes a few minutes and needs no account.

Sources

  1. Ora report for microsoft.com (ora.ai/score/microsoft.com), read 9 Nov 2026. Vendor claim.

Last reviewed