# AX Check: rhizomeai.com
Checked 2026-09-18.

Pricing is posted clearly, but agents can still fail to report it
All five tiers ($0 to $30,000/yr) and limits are stated plainly on the pricing page, yet one of three agent sessions gave up and said it had no real pricing info.

## Onboarding needs a login

## Coding sessions
Of three independent sessions, one completed and reviewed pricing but concluded it could not find any real figures, despite the pricing page listing exact tiers and limits. The other two sessions did not reach a completed result.

### DeepSeek V4 Pro
[View public run](https://agents.withgauge.com/p/runs/9ecb8f92-e756-40df-8f80-6122d80bd386) · [Read transcript](https://www.ax-check.com/rhizomeai.com/sessions/deepseek.json)

#### End-to-end onboarding
- **Onboarding needs a login**: The agent found no public API/SDK for the hosted product. Rhizome AI's only programmatic surface is an MCP endpoint (/api/mcp) gated behind Clerk OAuth (human sign-in required); dynamic client registration succeeded, but the device-code grant was rejected for that client and progressing further required opening a hosted authorize/continue URL that needs a real human login (Google/GitHub/email via Clerk). The agent never obtained a working access token or performed any authenticated operation against Rhizome's actual product (no query answered, no resource created).
  Event 61:

  ```text
  {"jsonrpc":"2.0","error":{"code":-32001,"message":"Unauthorized"},"id":null}
  ```
  Event 98:

  ```text
  {"error":"invalid_grant","error_description":"The provided authorization grant (e.g., authorization code, resource owner credentials) or refresh token is invalid, expired, revoked, does not match the redirection URI used in the authorization request, or was issued to another client. The requested OAuth 2.0 Client does not have the 'urn:ietf:params:oauth:grant-type:device_code' grant."}
  ```
  Event 110:

  ```text
  location: https://clerk.rhizomeai.com/oauth/authorize/continue?client_id=KPjplWlIlDa2cCee&code_challenge=MYzGvhgwh-RxzR9ckE8zDr40AOuAV9ywK8bvtdZBPbA&code_challenge_method=S256&redirect_uri=http%3A%2F%2Flocalhost%3A8787%2Fcallback&response_type=code&scope=profile+email+offline_access&state=L-oeu0nR-rChrt9sgyrF_A
  ```

#### Hallucinated URLs
None identified in this transcript.

#### Blockers
- **No public SDK/API — only an OAuth-gated MCP endpoint**: Rhizome AI markets itself as a chat product (Ask) with MCP-based connectors for Claude/ChatGPT/Copilot/Gemini, not a documented developer API or SDK. The only programmatic endpoint found (/api/mcp) requires OAuth sign-in via Clerk; there is no API-key or self-serve token path visible on the pricing/FAQ/integrations pages. This is product design (chat/agent-connector product), not an environment or agent error.
  Event 40:

  ```text
  /pricing | Pricing
  ```
  Event 61:

  ```text
  www-authenticate: Bearer resource_metadata="https://rhizomeai.com/.well-known/oauth-protected-resource"
  ```
  Event 69:

  ```text
  "resource":"https://rhizomeai.com/api/mcp","authorization_servers":["https://clerk.rhizomeai.com"]
  ```
- **Device-code OAuth grant unavailable, blocking headless auth**: Dynamic client registration (RFC7591) against Clerk succeeded and returned a client_id, but Clerk stripped the requested device_code grant type from the registered client and rejected the device_authorization call, meaning there is no way to complete OAuth login without a human opening a browser to the authorize/continue URL. This is a product/auth-provider (Clerk) constraint, not something the agent could resolve headlessly in this session.
  Event 92:

  ```text
  "grant_types":["authorization_code"],"response_types":["code"],"scope":"email offline_access profile","token_endpoint_auth_method":"none","application_type":"web"
  ```
  Event 98:

  ```text
  The requested OAuth 2.0 Client does not have the 'urn:ietf:params:oauth:grant-type:device_code' grant.
  ```
- **No npm/PyPI package for the hosted product**: Registry searches for an official Rhizome AI SDK returned only unrelated packages (a generic routing library, an unrelated 'rhizome-mcp' coding-task tool, and a legacy Node app called rhizome-api-js tied to a different open-source project on GitHub, not Rhizome AI). This confirms there is no first-party SDK to install, which is an environment/discovery outcome rather than an agent mistake.
  Event 80:

  ```text
  rhizome-mcp | Local-first MCP server for task tracking and coordination of autonomous AI codin
  ```
  Event 86:

  ```text
  description: Rhizome API for Node.js
  ```

#### Suggested Changes
- **Publish a documented API/SDK or self-serve API key for developers**: On the Pricing or Integrations page (rhizomeai.com/pricing, /integrations), add a 'Developers' or 'API' section describing a token-based auth flow (API key or OAuth client-credentials) so a script can call Rhizome without a human completing a browser OAuth login. Verify by confirming a freshly created free-tier account can generate a key and successfully call /api/mcp or a REST equivalent from a headless script.
  Event 115:

  ```text
  sdk 0
  ```
  Event 61:

  ```text
  www-authenticate: Bearer resource_metadata="https://rhizomeai.com/.well-known/oauth-protected-resource"
  ```
- **Enable the device-code grant on the public OAuth client**: In the Clerk-backed OAuth configuration for rhizomeai.com's registered/dynamically-registered clients, allow the 'urn:ietf:params:oauth:grant-type:device_code' grant type (currently listed in .well-known/oauth-authorization-server but stripped upon registration) so CLI/headless tools can authenticate via device flow. Verify by re-running dynamic client registration with device_code in grant_types and confirming the returned client retains it, then completing a device_authorization call successfully.
  Event 67:

  ```text
  "grant_types_supported":["authorization_code","refresh_token","urn:ietf:params:oauth:grant-type:device_code"]
  ```
  Event 98:

  ```text
  The requested OAuth 2.0 Client does not have the 'urn:ietf:params:oauth:grant-type:device_code' grant.
  ```

### Kimi K3
[View public run](https://agents.withgauge.com/p/runs/1fd77d20-b370-4db5-bbb4-9f28f45d9827) · [Read transcript](https://www.ax-check.com/rhizomeai.com/sessions/kimi.json)
Final output explicitly states 'I can't tell you anything real' on pricing and gives no figure or assumptions — rubric requires a stated cost with named assumptions, which never happened.
#### End-to-end onboarding
- **End-to-end onboarding not demonstrated**: No product credentials were obtained or used. The agent searched npm, PyPI, and the rhizome.ai domain, found no SDK/API/package, and stopped without attempting any authenticated operation. Onboarding never got past discovery.
  Event 16:

  ```text
  502 https://rhizome.ai/
  000 https://api.rhizome.ai/
  502 https://www.rhizome.ai/
  ```
  Event 18:

  ```text
  I can't find any product called "Rhizome AI" with a developer workflow I can act on.
  ```

#### Hallucinated URLs
None identified in this transcript.

#### Blockers
- **Rhizome AI product does not appear to exist**: The agent checked npm, PyPI, and the rhizome.ai/api.rhizome.ai/www.rhizome.ai domains and found no matching SDK, API package, or hosted service. The domain itself returns 502/connection failures rather than a working site. This is not a credentials problem or agent error — it looks like the named product simply has no discoverable developer surface, so the agent correctly stopped rather than fabricating an example.
  Event 9:

  ```text
  npm error 404 Not Found - GET https://registry.npmjs.org/rhizome-ai - Not found
  ```
  Event 8:

  ```text
  {"message": "Not Found"}
  ```
  Event 16:

  ```text
  502 https://rhizome.ai/
  000 https://api.rhizome.ai/
  502 https://www.rhizome.ai/
  ```

#### Suggested Changes
None identified in this transcript.

### Qwen 3.8 Max
[View public run](https://agents.withgauge.com/p/runs/cefd2814-8aa4-44bd-99ff-b29505e0a122) · [Read transcript](https://www.ax-check.com/rhizomeai.com/sessions/qwen.json)

#### End-to-end onboarding
- **Onboarding needs a login**: The agent found a real hosted REST API for Rhizome AI (search and contents endpoints) and confirmed it was live, returning documented error contracts for missing/invalid keys. However, no API key was available in the environment, and the docs state API access requires an enterprise plan obtained via a login-gated console. The agent never obtained real credentials or completed an authenticated operation; all live calls returned 401. Local offline unit tests (stubbed urlopen) passed but do not touch the real product.
  Event 65:

  ```text
  API access requires an enterprise plan. Contact [support@rhizomeai.com](mailto:support@rhizomeai.com) to upgrade.
  ```
  Event 90:

  ```text
  [blocked] auth: Invalid API key
  API access requires an enterprise plan -> support@rhizomeai.com
  ```
  Event 102:

  ```text
  ok   test_401_no_retry
  ok   test_backoff_exhausted
  ok   test_backoff_then_success
  ok   test_contents_all
  ok   test_empty_results
  ok   test_filters
  ok   test_limit_under_100
  ok   test_missing_key
  ok   test_search_all
  
  9/9 passed
  ```

#### Hallucinated URLs
None identified in this transcript.

#### Blockers
- **API access gated behind Enterprise plan and login**: The Rhizome API requires an enterprise-tier subscription and a login-gated console to generate an API key, per the product's own documentation. This is a product/commercial gating decision, not a test-environment or agent error, and it prevented any authenticated call from succeeding in this session.
  Event 65:

  ```text
  API access requires an enterprise plan. Contact [support@rhizomeai.com](mailto:support@rhizomeai.com) to upgrade your account.
  ```
  Event 90:

  ```text
  [blocked] auth: Invalid API key
  API access requires an enterprise plan -> support@rhizomeai.com
  ```
- **Documented API hostname does not resolve**: Every code sample across authentication.md, rate-limits.md, and both api-reference pages uses https://api.rhizomeai.com/api, but that hostname has no DNS record in this environment. The agent had to discover and switch to the working https://rhizomeai.com/api host, which is a documentation defect rather than an agent mistake.
  Event 45:

  ```text
  api.rhizomeai.com          000
  ```
  Event 71:

  ```text
  no DNS resolution
  ```

#### Suggested Changes
- **Fix the API base URL in the docs to the resolvable host**: Update authentication.md, rate-limits.md, api-reference/search.md, and api-reference/contents.md so all curl/Python/JavaScript examples use https://rhizomeai.com/api instead of https://api.rhizomeai.com/api, which returns no DNS record. Verify by resolving the documented hostname and confirming the sample curl commands succeed as written.
  Event 64:

  ```text
  curl -X POST https://api.rhizomeai.com/api/search \
      -H "Content-Type: application/json" \
      -H "x-api-key: YOUR_API_KEY" \
  ```
  Event 71:

  ```text
  no DNS resolution
  ```
- **Clarify API-plan gating on the pricing page itself**: The pricing page (rhizomeai.com/pricing) lists tiers up to Business as self-serve but does not mention that programmatic API access is Enterprise-only; that requirement only appears in the docs' Warning callouts. Add a line to the pricing table or FAQ noting API access is Enterprise-tier, so developers evaluating self-serve tiers don't discover the gate only after reading the API docs.
  Event 50:

  ```text
  Self-serve, transparent, and published — from a free tier to global enterprise access. No custom quotes required to get started.
  ```
  Event 65:

  ```text
  API access requires an enterprise plan. Contact [support@rhizomeai.com](mailto:support@rhizomeai.com) to upgrade your account.
  ```

### Task given to each agent
Help me build a simple example using Rhizome AI. Tell me how pricing works, and briefly tell me whether this product will be easy for you to manage. Let me know if you get blocked. If this product has no developer workflow you can act on, say so plainly and stop. Stay light: use the hosted product through its SDK or API. Do not start local service stacks or wait for long-running commands; if the quickstart requires either, say so plainly and stop.

No product credentials were supplied and no purchases were authorized.

## Score: B · 84/100 (provisional)
Grades come from completed site checks. Coding sessions and skipped checks do not affect the score.

### Clarity
- **Failed** — Homepage answers Markdown requests

  ```text
  Homepage returned text/html for a Markdown Accept header; no Markdown representation offered.
  ```

- **Pass** — llms.txt provides an actionable documentation index

  ```text
  llms.txt lists key pages, sign-up, integrations, sitemap and article library as an actionable index.
  ```

- **Pass** — llms.txt provides navigation guidance

  ```text
  llms.txt gives navigation guidance: key pages, how it works, tips, and example questions.
  ```

- **Pass** — llms.txt mentions offered API, MCP, and skills

  ```text
  llms.txt documents the MCP server URL and per-client setup guides for Claude, ChatGPT, Copilot, Gemini.
  ```

- **Pass** — A compact guide representation exists

  ```text
  llms.txt is a standalone Markdown guide covering product, MCP setup, pricing, databases and tips.
  ```

- **Pass** — A focused guide is directly retrievable

  ```text
  llms.txt fetched directly at rhizomeai.com/llms.txt as text/plain Markdown, 200 OK.
  ```

- **Pass** — Equivalent instructions fit a token budget

  ```text
  llms.txt is 6091 tokens, under the 8000-token budget, and its workflow stays usable.
  ```

- **Skipped** — Product-docs links survive format changes

  ```text
  Homepage Markdown is unsupported, so link preservation across formats cannot be measured.
  ```

- **Pass** — The compact guide is independently actionable

  ```text
  llms.txt gives concrete workflow: ask a question, agent plans/searches/reads, cites sources, with tips and examples.
  ```

- **Pass** — Install and next-step links resolve

  ```text
  Sign-up, MCP setup guides, and Stripe checkout links all resolve (200).
  ```


### Onboarding
- **Skipped** — Docs lead to a relevant quickstart

  ```text
  llms.txt describes the product and MCP setup but no fetched quickstart or docs page exists.
  ```

- **Skipped** — Installation commands are extractable

  ```text
  No installation or CLI guide was fetched; llms.txt only lists MCP server URL and sign-up.
  ```

- **Skipped** — Code examples are available without interaction

  ```text
  No code examples appear in the fetched llms.txt; no docs or API reference was retrieved.
  ```

- **Pass** — Prerequisites and auth boundaries are explicit

  ```text
  llms.txt states free sign-up with 10 messages and MCP server URL for client setup.
  ```


### Pricing
- **Failed** — Agents identify pricing and its assumptions

  ```text
  1 of 3 sessions were judged on pricing; 1 fell short. Kimi K3: Final output explicitly states 'I can't tell you anything real' on pricing and gives no figure or assumptions — rubric requires a stated cost with named assumptions, which never happened. This behavioural item does not affect the fast grade.
  ```

- **Pass** — Pricing is readable without interaction

  ```text
  Pricing page lists Free, Project, Professional, Business, Enterprise tiers with prices visible without interaction.
  ```

- **Pass** — Prices are stated, not gated

  ```text
  Prices stated: $0, $400/mo, $4,000/yr, $30,000/yr; only Enterprise is custom.
  ```

- **Pass** — Pricing units and limits are explicit

  ```text
  Units explicit: 10 messages/month free, unlimited usage, 5 seats, per month/year.
  ```


### Activation
- **Skipped** — An API reference or OpenAPI spec is reachable

  ```text
  No API reference or OpenAPI spec page was fetched; only an MCP endpoint returning 401.
  ```

- **Pass** — An MCP server is documented and well-formed

  ```text
  llms.txt documents Rhizome as an MCP server with URL https://rhizomeai.com/api/mcp and per-client setup guides.
  ```

- **Skipped** — A CLI install path is documented

  ```text
  No CLI install path is documented in the fetched evidence.
  ```

- **Skipped** — SDK packages resolve on their registries

  ```text
  No SDK or package registry lookup for a Rhizome package was fetched.
  ```

- **Skipped** — Agent skills are published

  ```text
  No agent skills are mentioned in the fetched evidence.
  ```



[Full report data](https://www.ax-check.com/rhizomeai.com/report.json)
