---
title: "Agent readiness score for shiken.ai: 59/100 (C, Needs work)"
description: "shiken.ai scores 59/100 (Needs work). Strongest layer: Access at 81%; weakest: Discovery at 29%. Biggest single fix: wikipedia / wikidata entity presence (about +6.3 points)."
canonical: https://outserp.ai/agent-ready/shiken.ai
markdown: https://outserp.ai/api/machine-content?path=%2Fagent-ready%2Fshiken.ai
site: Outserp
---
# Agent readiness score for shiken.ai: 59/100 (C, Needs work)

> shiken.ai scores 59/100 (Needs work). Strongest layer: Access at 81%; weakest: Discovery at 29%. Biggest single fix: wikipedia / wikidata entity presence (about +6.3 points).

Scanned: 2026-09-07 · rank 2 of 2 · JSON: https://outserp.ai/api/agent-ready/shiken.ai · Badge: https://outserp.ai/api/agent-ready/badge/shiken.ai.svg

## Layers

- Discovery (weight 20): 29% — 2/7 points
- Access (weight 30): 81% — 58.53/72 points
- Usability (weight 40): 58% — 38.67/67 points
- Payments (weight 10): n/a — 0/0 points

## Surfaces

- website: 82% (33/45 checks)
- api: not detected
- auth: not detected
- mcp: 75% (6/11 checks) — https://shiken.ai/mcp

## Fix these first

1. **Wikipedia / Wikidata entity presence** (`wikipedia-presence`, ≈ +6.3): Create a Wikidata item with official website (P856) = your domain; pursue a Wikipedia article once independent coverage exists.
2. **OAuth 2.0 support** (`oauth-support`, ≈ +3.3): Publish /.well-known/oauth-authorization-server with authorization, token and registration endpoints and PKCE S256.
3. **Scoped permissions** (`scoped-permissions`, ≈ +3.3): Declare scopes_supported in the OAuth metadata and per-operation security scopes in the OpenAPI spec.
4. **ARD discovery catalog** (`ard-catalog`, ≈ +3.2): Publish an Agentic Resource Discovery catalog with typed entries and a trust manifest (agenticresourcediscovery.org).
5. **OpenAPI spec published** (`openapi-spec`, ≈ +3.2): Publish OpenAPI 3.x at /openapi.json (alias it if the real file lives elsewhere) and reference it from llms.txt and /.well-known/api-catalog.
6. **NPM/PyPI SDK package** (`npm-sdk-package`, ≈ +3.2): Publish an SDK or CLI under your brand scope and set the package homepage / repository to your domain so it is verifiably yours.
7. **Listed in MCP registries** (`mcp-registry-listed`, ≈ +3.2): Publish server.json to the official MCP registry and an npm package under your scope with the homepage set to your domain.
8. **Agent auth discovery metadata** (`agent-auth-discovery-metadata`, ≈ +2): List the AS origin in PRM authorization_servers and add an agent_auth block (skill / auth_md / register_uri / identity_types_supported) to the AS metadata.

## Every check

| Status | Check | Points | Evidence |
| --- | --- | --- | --- |
| PASS | robots.txt AI crawler policy (`robots-ai-policy-quality`) | 2/2 | Explicit policy: 8 named AI crawler(s) in 1 group(s). |
| FAIL | ARD discovery catalog (`ard-catalog`) | 0/1 | No /.well-known/ard.json (and no legacy /.well-known/ai-catalog.json). |
| N/A | Brand name discoverability (`brand-search-accuracy`) | — | Search-based check; runs in the full audit. |
| N/A | Developer resource discoverability (`agentic-search-specific`) | — | Search-based check; runs in the full audit. |
| FAIL | Wikipedia / Wikidata entity presence (`wikipedia-presence`) | 0/2 | No Wikidata item mentions shiken.ai. |
| FAIL | NPM/PyPI SDK package (`npm-sdk-package`) | 0/1 | No npm or PyPI package found for the brand. |
| FAIL | Listed in MCP registries (`mcp-registry-listed`) | 0/1 | No verified MCP registry entry or official MCP package. |
| PASS | Content without JavaScript (`content-no-js`) | 3/3 | 7858 chars of raw-HTML text, 1 H1 + 50 other headings, 3.2% content ratio. |
| PASS | Not blocked by bot detection (`bot-detection`) | 2/2 | Homepage reachable for 6 AI User-Agents. |
| PASS | Agent crawler reachability (`agent-crawler-reachability`) | 2/2 | No AI crawler is disallowed in robots.txt (6 checked). |
| PASS | robots.txt agent-user policy (`robots-agent-user-policy`) | 2/2 | User-triggered agents are allowed. |
| PASS | Redirect hygiene (`redirect-hygiene`) | 1/1 | No meta-refresh, JS-redirect stubs or cross-domain hops across 6 pages. |
| PASS | Content behind auth (`docs-auth-gate`) | 2/2 | All 6 sampled pages are publicly readable. |
| PASS | Page token budget (`page-token-budget`) | 1/1 | All 6 measured pages fit (largest ~2K tokens). |
| PASS | Sitemap exists (`sitemap`) | 2/2 | Valid sitemap at https://shiken.ai/sitemap.xml with 298 entries. |
| PASS | Sitemap freshness (lastmod) (`sitemap-lastmod`) | 1/1 | 100% of entries carry lastmod; newest is 0 day(s) old. |
| PASS | llms.txt exists (`llms-txt-exists`) | 1/1 | Found https://shiken.ai/llms.txt (5725 characters). |
| PASS | llms.txt formatting (`llms-txt-formatting`) | 2/2 | Starts with a heading, 42 markdown links, 79 lines. |
| PASS | llms.txt links resolve (`llms-txt-links-resolve`) | 2/2 | All 25 same-origin links resolve. |
| PASS | Agent instruction / when-to-use (`agent-instruction`) | 3/3 | When-to-use guidance and calling instructions found. |
| FAIL | Agent discovery file (`agent-discovery-file`) | 0/2 | No agent discovery file at any conventional path. |
| FAIL | A2A agent card (`a2a-agent-card`) | 0/2 | No A2A agent card at /.well-known/agent-card.json. |
| FAIL | Agent Skills index (`agent-skills-index`) | 0/2 | No /.well-known/agent-skills/index.json. |
| PASS | Pricing info accessible (`pricing-info`) | 3/3 | https://shiken.ai/pricing exposes 19 price signals in raw HTML. |
| PASS | pricing.md exists (`pricing-md`) | 2/2 | /pricing.md with 25 price signal(s). |
| PASS | JSON-LD structured data (`json-ld`) | 4/4 | Organization with name, description, url + sameAs/logo/address/contactPoint (5 block(s)). |
| PASS | Organization schema completeness (`org-schema-completeness`) | 2/2 | Organization schema has contactPoint and address. |
| PASS | JSON-LD entity linking (sameAs) (`json-ld-entity-linking`) | 2/2 | sameAs links to 2 authority profiles. |
| PARTIAL | Schema type breadth (`schema-type-breadth`) | 1/2 | Some extended types found: FAQPage. |
| PASS | Metadata completeness (`metadata-completeness`) | 2/2 | All four metadata signals present. |
| PARTIAL | Trust anchor pages (`trust-anchors`) | 1.33/2 | Missing or thin: about. |
| PASS | Markdown agent docs (`markdown-negotiation`) | 1/1 | Homepage serves text/markdown; charset=utf-8 for Accept: text/markdown. |
| PASS | Markdown content negotiation (Vary) (`markdown-negotiation-vary`) | 1/1 | Vary: Accept, Accept-Encoding. |
| PARTIAL | Markdown URL fallback (.md) (`markdown-url-fallback`) | 1.2/2 | /index.md serves markdown; content pages have no .md twin. |
| PASS | Markdown alternate link (`markdown-link-alternate`) | 1/1 | Markdown alternate advertised and verified: https://shiken.ai/index.md. |
| PASS | Markdown frontmatter metadata (`markdown-frontmatter`) | 1/1 | Frontmatter with title, description, canonical. |
| PASS | Bot-UA markdown serving (`agent-ua-markdown`) | 1/1 | ChatGPT-User receives markdown on the homepage. |
| PASS | Code fence validity (`code-fence-validity`) | 1/1 | Code fences balanced across 2 markdown document(s). |
| FAIL | HTTP Link headers (RFC 8288) (`link-headers-discovery`) | 0/1 | No Link response headers on the homepage. |
| FAIL | OpenAPI spec published (`openapi-spec`) | 0/7 | The site advertises an API but no OpenAPI / Swagger description was found at any conventional path. |
| N/A | API catalog (RFC 9727) (`api-catalog-rfc9727`) | — | No API surface; catalog not expected. |
| PASS | Public API/docs linked from homepage (`public-api-docs`) | 3/3 | Docs link found on the homepage and resolves: /developers. |
| PASS | Developer portal (`developer-portal`) | 6/6 | Developer portal at /developers (3 developer signals). |
| PARTIAL | MCP well-known discovery (`mcp-well-known-discovery`) | 1/2 | Discoverable only via llms.txt. |
| PARTIAL | Agent-friendly 404s (`agent-friendly-404`) | 1.5/2 | Real 404 whose HTML body links to the sitemap / llms.txt / docs; no markdown variant. |
| FAIL | Web Bot Auth directory (`web-bot-auth-directory`) | 0/2 | No /.well-known/http-message-signatures-directory. |
| N/A | JSON error responses (`json-error-responses`) | — | No API surface. |
| N/A | API schema completeness (`api-schema-analysis`) | — | No OpenAPI operations. |
| N/A | Function calling compatibility (`function-calling-compat`) | — | No OpenAPI operations. |
| N/A | REST typed error model (`api-error-model`) | — | No OpenAPI operations. |
| N/A | REST versioning / deprecation policy (`api-versioning-policy`) | — | No API surface. |
| N/A | REST pagination pattern (`pagination-shape`) | — | No API surface. |
| N/A | REST async-job pattern (`async-job-pattern`) | — | No API surface. |
| N/A | REST response schema coverage (`response-schema-coverage`) | — | No OpenAPI operations. |
| N/A | Rate limit response headers (`rate-limit-headers`) | — | No API surface. |
| N/A | REST batch / bulk endpoint (`batch-endpoints`) | — | No API surface. |
| N/A | Idempotency-Key support (`idempotency-key-support`) | — | No API surface. |
| N/A | Sandbox / test environment (`sandbox-environment`) | — | No API surface. |
| FAIL | OAuth 2.0 support (`oauth-support`) | 0/5 | No OAuth 2.0 / OIDC support detected. |
| FAIL | OAuth Protected Resource metadata (RFC 9728) (`oauth-protected-resource`) | 0/2 | No /.well-known/oauth-protected-resource (RFC 9728). |
| FAIL | Scoped permissions (`scoped-permissions`) | 0/5 | No scoped permissions declared. |
| FAIL | auth.md exists (`auth-md-exists`) | 0/2 | No /auth.md at the site root. |
| FAIL | auth.md structure (`auth-md-structure`) | 0/2 | No /auth.md. |
| FAIL | Agent auth discovery metadata (`agent-auth-discovery-metadata`) | 0/3 | Neither PRM nor AS metadata found. |
| FAIL | Agent auth WWW-Authenticate hint (`agent-auth-www-authenticate`) | 0/1 | No 401 with WWW-Authenticate: Bearer resource_metadata=… found on the API roots. |
| FAIL | agent_auth endpoints reachable (`agent-auth-endpoints-reachable`) | 0/2 | No agent_auth block to probe. |
| PARTIAL | Agent onboarding friction (`onboarding-friction`) | 0.67/2 | Onboarding signals described but not verified live: free tier or trial, no sales wall. |
| PASS | MCP server / manifest (`mcp-server`) | 6/6 | MCP server at https://shiken.ai/mcp (streamable-http, 5 tools listed, found via llms.txt). |
| FAIL | MCP server card (`mcp-server-card`) | 0/2 | No /.well-known/mcp/server-card.json. |
| PASS | MCP server identity (`mcp-server-identity`) | 1/1 | serverInfo: shiken 1.0.0. |
| PASS | MCP modern transport (`mcp-transport-modern`) | 1/1 | Streamable HTTP, protocol 2025-03-26. |
| PASS | MCP tool listing (`mcp-tool-listing`) | 3/3 | 5 tools listed. |
| PASS | MCP tool descriptions (`mcp-tool-descriptions`) | 3/3 | 5/5 descriptions state purpose and when-to-use / returns. |
| PASS | MCP tool naming (`mcp-tool-naming`) | 2/2 | All 5 tool names are verb-first snake_case. |
| PARTIAL | MCP parameter schemas (`mcp-param-schemas`) | 1.4/2 | 5/5 tools have object schemas; 2/8 parameters described. |
| PASS | MCP tool annotations (`mcp-tool-annotations`) | 2/2 | 5/5 tools annotated. |
| PARTIAL | MCP error handling (`mcp-error-handling`) | 1.2/2 | Unknown method answered with JSON-RPC code -32001. |
| N/A | MCP resources exposed (`mcp-resource-listing`) | — | Server does not advertise resources (tool-only). |
| N/A | MCP resource quality (`mcp-resource-quality`) | — | No resources listed. |
| PARTIAL | MCP auth mechanism (`mcp-auth-mechanism`) | 1.2/2 | tools/call is gated (401) but the challenge has no resource_metadata pointer. |
| N/A | MCP OAuth metadata (`mcp-oauth-metadata`) | — | MCP server does not require authentication. |
| N/A | MCP PKCE S256 support (`mcp-pkce-s256`) | — | MCP server does not require authentication. |
| FAIL | CLI tool available (`cli-tool`) | 0/3 | No CLI tool found. |
| N/A | Multi-language SDK packages (`rest-sdk-packages`) | — | No API surface. |
| PARTIAL | Accessible document structure (`ax-document-structure`) | 2.7/3 | main=true, landmarks=4/4, h1=1, maxHeadingSkip=2. |
| PASS | Native interactive controls (`ax-native-controls`) | 3/3 | 93 native controls, 0 non-native div/span affordances (100% native). |
| PASS | Accessible names on controls (`ax-accessible-names`) | 2/2 | 92/93 interactive elements have a computable accessible name (99%). |
| N/A | Form control labeling (`ax-form-labeling`) | — | No form controls on the homepage. |
| PASS | Accessibility-tree injection safety (`ax-tree-injection-safe`) | 2/2 | No hidden instruction text detected in accessibility-tree attributes or off-screen content. |
| PASS | WebMCP support (`webmcp`) | 5/5 | WebMCP detected via inline script; tools: get_product_overview, get_pricing_plans, find_pages, open_page, open_contact_sales; readOnlyHint used. |

Full audit with agent journeys and model-graded checks: https://outserp.ai/agent-ready/shiken.ai
