{
 "$schema": "https://agentdrives.com/schemas/tool.schema.json",
 "id": "prd_01m57vgtjjxtjmjha5vxeafb9f",
 "ids": {
  "org": "org_01m57vgtjj2kqwrydhjyrvj25y",
  "surfaces": {
   "web": "srf_01m6bhkke2a7gycbv830t4h7fb",
   "api": "srf_01m6bhkke24krr55xfktggtw1z",
   "mcp": "srf_01m6bhkke2bmws271btv0maj3d",
   "cli": "srf_01m6bhkke20pp27c5w7da3ps1q",
   "sdk": "srf_01m6bhkke29abhevb4j1sy3prn"
  },
  "slugs": [
   "pinecone"
  ],
  "domain": "pinecone.io",
  "wikidata": "Q120549587"
 },
 "slug": "pinecone",
 "name": "Pinecone",
 "url": "https://www.pinecone.io",
 "domain": "pinecone.io",
 "category": "vector-databases",
 "category_name": "Vector databases",
 "tested_at": "2026-10-26",
 "run": "20261026T003637Z",
 "draft": false,
 "reviewed": true,
 "owner_verified": null,
 "origin": "editorial",
 "history": [
  {
   "run": "20261021T050150Z",
   "date": "2026-10-21",
   "level": 4,
   "engine": {
    "model": "claude-opus-5-5",
    "driver": 4,
    "signed": true,
    "inbox": [
     "agentdrives.com"
    ],
    "robots": "skip",
    "version": null,
    "commit": null,
    "prompts": {
     "version": null,
     "commit": null
    },
    "rules": {
     "version": null,
     "commit": null
    }
   },
   "stop": "delete",
   "paid": false,
   "agent_paid": null
  },
  {
   "run": "20261023T234501Z",
   "date": "2026-10-23",
   "level": 1,
   "engine": {
    "model": "anthropic/opus",
    "driver": 4,
    "signed": true,
    "inbox": [
     "agentdrives.com"
    ],
    "robots": "skip",
    "version": null,
    "commit": null,
    "prompts": {
     "version": null,
     "commit": null
    },
    "rules": {
     "version": null,
     "commit": null
    }
   },
   "stop": "signup",
   "why": "agent",
   "paid": false,
   "agent_paid": null
  },
  {
   "run": "20261026T003637Z",
   "date": "2026-10-26",
   "level": 1,
   "engine": {
    "model": "claude-opus-5-5",
    "driver": 5,
    "signed": true,
    "inbox": [
     "agentdrives.com"
    ],
    "robots": "skip",
    "version": "2026.10.25",
    "commit": "12db9b239d2f67056567f6e048e27e0e5abc6a10",
    "prompts": {
     "version": "2026.10.25",
     "commit": "91b82cb48a69d1b477a3a4749cea228ed563c85c"
    },
    "rules": {
     "version": "2026.10.25",
     "commit": "6076b99274a3dc4f96f06f95d78404f71141246d"
    }
   },
   "stop": "signup",
   "paid": false,
   "agent_paid": null
  }
 ],
 "level": 1,
 "level_name": "Needs a person",
 "level_selfhost": null,
 "entry": "closed",
 "door": {
  "passed": 1,
  "tries": 3,
  "self_start": false
 },
 "badges": [],
 "not_counted": null,
 "stages": [
  {
   "key": "in",
   "label": "Access",
   "state": "part",
   "text": "Gets in on 1 of the last 3 drives",
   "at": "signup"
  },
  {
   "key": "work",
   "label": "Use",
   "state": "unreached",
   "text": "Work not measured"
  },
  {
   "key": "pay",
   "label": "Pay",
   "state": "unreached",
   "text": "Payment not reached",
   "value": "unreached",
   "route": "card_checkout"
  },
  {
   "key": "leave",
   "label": "Leave",
   "state": "unreached",
   "text": "Leaving not reached",
   "how": "no-account"
  }
 ],
 "outcomes": [
  {
   "key": "find",
   "label": "Learn",
   "state": "yes",
   "text": "Docs it can act on: llms.txt, an OpenAPI and an MCP server",
   "have": [
    "llms_txt",
    "openapi",
    "mcp"
   ],
   "docs": "complete"
  },
  {
   "key": "access",
   "label": "Access",
   "state": "part",
   "text": "Gets in on 1 of the last 3 drives",
   "at": "signup",
   "stage": "in"
  },
  {
   "key": "use",
   "label": "Use",
   "state": "unreached",
   "text": "Work not measured",
   "stage": "work"
  },
  {
   "key": "pay",
   "label": "Pay",
   "state": "unreached",
   "text": "Payment not reached",
   "value": "unreached",
   "route": "card_checkout",
   "stage": "pay"
  },
  {
   "key": "leave",
   "label": "Leave",
   "state": "unreached",
   "text": "Leaving not reached",
   "how": "no-account",
   "stage": "leave"
  }
 ],
 "access": [
  {
   "key": "person",
   "label": "A person sets it up",
   "routes": [],
   "minutes": null,
   "core": null
  }
 ],
 "minutes": null,
 "next": {
  "to": 2,
  "text": "Next: let an agent sign up on its own"
 },
 "stop": "signup",
 "core": null,
 "scores": {
  "coverage": null,
  "reliability": null,
  "resilience": null,
  "setup": 100,
  "surface_coverage": null,
  "docs_accuracy": null,
  "docs_completeness": null
 },
 "parts": {
  "holds_up": null,
  "docs_match": null,
  "setup": 100,
  "security": "private",
  "standards": [
   {
    "standard": "OpenAPI",
    "state": "behind",
    "behind": 2,
    "value": "3.0.3"
   }
  ]
 },
 "reliability_method": null,
 "resilience": null,
 "stress": [
  {
   "capability": "List indexes and read their configuration/schema",
   "probe": "bad credential on list indexes",
   "outcome": "401 application/json {\"error\":{\"code\":\"UNAUTHENTICATED\",\"message\":\"Invalid API key\"},\"status\":401}",
   "grade": "clear",
   "idempotent": null,
   "rate_limit": null
  },
  {
   "capability": "Generate text embeddings via hosted inference models",
   "probe": "missing credential on embed",
   "outcome": "401 application/json {\"error\":{\"code\":\"UNAUTHENTICATED\",\"message\":\"Missing api-key header\"},\"status\":401}",
   "grade": "clear",
   "idempotent": null,
   "rate_limit": null
  },
  {
   "capability": "Generate text embeddings via hosted inference models",
   "probe": "rate limit burst on keyless GET /models",
   "outcome": "15 x 200; no RateLimit, X-RateLimit-* or Retry-After headers",
   "grade": "clear",
   "idempotent": null,
   "rate_limit": "none-seen"
  },
  {
   "capability": "Generate text embeddings via hosted inference models",
   "probe": "bad enum on GET /models",
   "outcome": "400 application/json {\"error\":{\"code\":\"INVALID_ARGUMENT\",\"message\":\"Invalid type, expected one of [embed, rerank]\"},\"status\":400} (names only the first bad field)",
   "grade": "clear",
   "idempotent": null,
   "rate_limit": null
  }
 ],
 "surface_audit": {
  "totals": {
   "items": 256,
   "documented": 255,
   "safe": 252,
   "exercised": 16,
   "passed": 15,
   "skipped": 4,
   "blocked": 236,
   "not_run": 0,
   "match": 14,
   "drift": 2,
   "broken_doc": 0,
   "docs_complete": 71,
   "docs_partial": 184,
   "docs_missing": 0,
   "errors_clear": 1,
   "errors_vague": 0,
   "errors_silent": 0
  }
 },
 "coverage_core": null,
 "coverage_own": null,
 "after_wall": null,
 "coverage_source": "computed",
 "driver": {
  "version": 5,
  "model": "claude-opus-5-5",
  "profile": "full",
  "assisted": false,
  "handoff": false
 },
 "methodology": 42,
 "rules_date": "2026-10-30",
 "engine": {
  "model": "claude-opus-5-5",
  "driver": 5,
  "signed": true,
  "inbox": [
   "agentdrives.com"
  ],
  "robots": "skip",
  "version": "2026.10.25",
  "commit": "12db9b239d2f67056567f6e048e27e0e5abc6a10",
  "prompts": {
   "version": "2026.10.25",
   "commit": "91b82cb48a69d1b477a3a4749cea228ed563c85c"
  },
  "rules": {
   "version": "2026.10.25",
   "commit": "6076b99274a3dc4f96f06f95d78404f71141246d"
  }
 },
 "same_level_drives": 2,
 "drives": 3,
 "same_stop_drives": 2,
 "works_assisted": null,
 "freshness": "fresh",
 "newer_drives": null,
 "nothing_to_pay": false,
 "core_gated": false,
 "profiles": {},
 "agent_check": {
  "rung": "signup",
  "vendor": "Cloudflare Turnstile (via Auth0 Bot Detection)",
  "visible": true,
  "type": "challenge",
  "human": null,
  "how": "Let verified bots and signed agents past the check on sign-up: in Cloudflare, add a WAF custom rule that skips the bot challenge on your sign-up paths for verified bots and for signed agents (rule field cf.bot_management.signed_agent; since 1 July 2026 signed agents count as verified bots), and render Turnstile only when the request is not from a verified agent.",
  "recognises_us": true,
  "vendor_id": "cloudflare",
  "signed": true
 },
 "agent_pass": null,
 "who_gets_in": {
  "server": {
   "state": "captcha"
  },
  "signed": {
   "state": "page",
   "kind": "home",
   "at": "2026-10-26"
  },
  "browser": {
   "state": "captcha",
   "measured": false
  },
  "our_key": "verified",
  "robots": null,
  "tip": false
 },
 "ladder": {
  "docs": {
   "status": "headless",
   "note": "llms.txt (docs and www), markdown pages (.md and Accept: text/markdown), OpenAPI 3.0.3 specs for 2026-07, a docs MCP server and a CLI reference, all fetched without a browser."
  },
  "signup": {
   "status": "human",
   "cause": "check",
   "note": "The only sign-up for our own account (Auth0 passwordless email on login.pinecone.io) showed a Cloudflare Turnstile 'Verify you are human' checkbox after the email; we don't solve it. Other doors are Google, GitHub, Microsoft, company SSO and cloud marketplaces: a person's accounts."
  },
  "verify": {
   "status": "",
   "note": "Not reached: the sign-up stopped at the Cloudflare Turnstile.",
   "reached": false
  },
  "credentials": {
   "status": "",
   "note": "Not reached: API keys (console, Admin API, 'pc api-key create') need an account; the sign-up stopped at the Cloudflare Turnstile.",
   "via": "",
   "reached": false
  },
  "first_call": {
   "status": "",
   "route": "account",
   "note": "Not reached: every data and control call needs an API key ('Missing api-key header', 401); only the docs MCP and GET /models answer without one.",
   "reached": false
  },
  "first_action": {
   "status": "",
   "note": "Not reached: creating an index needs an API key.",
   "reached": false
  },
  "pay": {
   "status": "",
   "grade": "P2",
   "rails": [
    "card checkout in the console",
    "AWS/GCP/Azure marketplaces"
   ],
   "rail_ids": [
    "card"
   ],
   "first_party": true,
   "rail_scope": "none",
   "trial_path": "free tier",
   "route": "card_checkout",
   "checkout": {
    "reached": "no",
    "processor": "none",
    "captcha": "none",
    "three_ds": "not_seen",
    "card_form": true,
    "phone_field": "none",
    "wallets": [],
    "rail_offer": "none",
    "price": "20.00",
    "currency": "USD",
    "period": "month",
    "plan": "Builder",
    "last_button": "Upgrade"
   },
   "person": "none",
   "ours": "no account",
   "note": "No 402, MPP, x402 or Stripe Projects listing was found and no payment went through (no 402 on the product's own endpoint). The docs say to upgrade in the console (Settings > Billing > Plans), enter a card and click Upgrade; Builder is $20/month by card only; the Standard trial gives $300 for 21 days without up-front payment. The OpenAPI specs have no billing operation. The checkout was not reached because there was no account (the sign-up stopped at the Cloudflare Turnstile); the checkout details come from the docs.",
   "reached": false
  },
  "cancel": {
   "status": "",
   "note": "Nothing to cancel: the drive started no plan. Docs 'Downgrade your billing plan': downgrade to Starter in the console, choosing what to keep; no billing API or CLI.",
   "docs_grade": "",
   "reached": false
  },
  "delete": {
   "status": "",
   "note": "No account was made; the keyless docs searches stored nothing. Docs 'Delete your account': leave every organization and delete those where you're the only member; the Admin API documents DELETE /admin/organizations/{organization_id}.",
   "account": false,
   "reached": false
  }
 },
 "routes": [
  {
   "route": "device_login",
   "offered": "documented",
   "tried": true,
   "not_tried": null,
   "result": "walled",
   "wall": {
    "type": "challenge",
    "owner": "product"
   },
   "person": "none",
   "brings": "nothing",
   "fresh": true,
   "minutes": 2,
   "browser": null
  },
  {
   "route": "sso_enterprise",
   "offered": "documented",
   "tried": false,
   "not_tried": "policy",
   "result": null,
   "wall": null,
   "person": "none",
   "brings": "nothing",
   "fresh": true,
   "minutes": null,
   "browser": null
  }
 ],
 "checkout": {
  "reached": "no",
  "rail_offer": "none",
  "period": "month",
  "price": "20.00",
  "currency": "USD",
  "plan": "Builder"
 },
 "docs": {
  "at": "2026-10-26",
  "read": 592,
  "listed": 1199,
  "sampled": true,
  "overall": "complete",
  "getting_started": "found",
  "auth": "found",
  "errors": "found",
  "examples": "good",
  "freshness": "fresh",
  "newest": "2026-10-25",
  "core_pages": "9 of 9",
  "capabilities": "covered",
  "label": "No gaps in what we read"
 },
 "claims": null,
 "pay_options": {
  "checked": "2026-10-26",
  "source": "probe",
  "options": [],
  "agentic": [],
  "paid": null,
  "exercised": null,
  "detected_grade": null,
  "trial": {
   "no_card": null,
   "card_required": null,
   "free_plan": true
  },
  "owner_fixes": [
   {
    "title": "Accept x402 or MPP on your API",
    "how": "Answer an unpaid call with 402 and a payment challenge, so an agent pays per call or buys credits without an account or a card."
   },
   {
    "title": "List your plans on Stripe Projects",
    "how": "Agents buy a plan with `stripe projects add`, paid with a token under a spend cap the owner sets (projects.dev)."
   }
  ]
 },
 "surfaces": {
  "api": true,
  "openapi": true,
  "cli": true,
  "sdk": true,
  "mcp": "official",
  "llms_txt": true
 },
 "urls": {
  "docs": "https://docs.pinecone.io/guides/get-started/overview",
  "llms_txt": "https://www.pinecone.io/llms.txt",
  "mcp": "https://docs.pinecone.io/mcp"
 },
 "surface_notes": {
  "api": "REST, 109 operations in the 2026-07 specs (control, data, inference, admin, assistant)",
  "openapi": "3.0.3, versioned by date (2026-07)",
  "mcp": "official, 9 tools (npm stdio) plus a remote docs MCP",
  "cli": "pc 1.0.1, 64 commands, agentic JSON login mode",
  "sdk": "@pinecone-database/pinecone 9.1.0 (TypeScript)",
  "llms_txt": "docs llms.txt with per-product files and OpenAPI links"
 },
 "surface_sizes": [
  {
   "kind": "api",
   "listed": 109,
   "tested": 2
  },
  {
   "kind": "mcp",
   "listed": 13,
   "tested": 4
  },
  {
   "kind": "cli",
   "listed": 64,
   "tested": 10
  },
  {
   "kind": "sdk",
   "listed": 65,
   "tested": 0
  }
 ],
 "can_do": [
  "Search the Pinecone documentation from an MCP client without an account",
  "List Pinecone's hosted embedding and rerank models without a key"
 ],
 "cannot_do": [
  {
   "what": "Create an account and get an API key",
   "why": "The email sign-up shows a Cloudflare Turnstile 'Verify you are human' checkbox"
  },
  {
   "what": "Create indexes, upsert, search, embed, rerank or chat with an assistant",
   "why": "Every call needs an API key from an account"
  },
  {
   "what": "Buy a plan",
   "why": "Card checkout in the console only, behind the same sign-up; no payment API or agent rail"
  }
 ],
 "blockers": [
  "Cloudflare Turnstile on the email sign-up at login.pinecone.io"
 ],
 "tips_for_agents": [
  "Use the docs MCP at https://docs.pinecone.io/mcp (no key, MCP 2026-07-28) to look things up before coding",
  "For the CLI in an agent, use 'pc login -j': it returns the login URL as JSON and a background listener catches the 127.0.0.1 callback; or 'pc auth configure --api-key'",
  "Send X-Pinecone-Api-Version: 2026-07 on every call; errors come back as JSON {error:{code,message},status}",
  "GET https://api.pinecone.io/models lists the hosted embed and rerank models without a key"
 ],
 "selfhost": {
  "install": {
   "status": "skipped",
   "minutes": 0,
   "note": "No local edition: Pinecone Local reached end of life on 7 Oct 2026 (release notes), its docs removed."
  }
 },
 "edge_case": "none",
 "summary": "Pinecone has a broad agent surface: dated OpenAPI specs, a CLI with an agentic JSON login, an official MCP server and a keyless docs MCP on the current spec. But the only sign-up for our own account, passwordless email on login.pinecone.io, showed a Cloudflare Turnstile checkbox, so our agent got no account or key and drove none of the core work. Without an account it could only search the docs and list hosted models.",
 "wall": "Cloudflare Turnstile on the email sign-up",
 "plan_scope": "",
 "robots_stop": null,
 "robots": {
  "rule": "star",
  "step": null,
  "seen": "2026-10-26",
  "held": false
 },
 "terms": null,
 "terms_read": "2026-10-26",
 "email_gate": null,
 "plain": {
  "summary": "Pinecone is a vector database that stores data so software can search it by meaning. Our agent could read the documentation and list the hosted models on its own, but it could not create an account. The email sign-up showed a Cloudflare 'Verify you are human' checkbox.",
  "can_do": [
   "Search the Pinecone documentation from an agent without an account",
   "List Pinecone's hosted embedding and rerank models without a key"
  ],
  "cannot_do": [
   {
    "what": "Create an account and get an API key",
    "why": "The email sign-up shows a visible Cloudflare human check"
   },
   {
    "what": "Create indexes, store data, search, embed, rerank or use the assistant",
    "why": "Every call needs an API key from an account"
   },
   {
    "what": "Buy a plan",
    "why": "Only a card form in the console, behind the same sign-up"
   }
  ]
 },
 "plan_gated": [],
 "reply": null,
 "capabilities": [
  {
   "id": "cap-01",
   "capability": "Create a vector/document index",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "POST /indexes",
    "mcp": "create-index-for-model",
    "cli": "pinecone index create",
    "ui": "Console > Indexes > Create index"
   },
   "check": "GET /indexes/{name} returns status.ready true",
   "capability_id": "cap_9a3jhdb4",
   "source": "https://docs.pinecone.io/guides/index-data/create-an-index.md",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-02",
   "capability": "Upsert records into an index",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "POST /vectors/upsert (or /records/namespaces/{ns}/upsert)",
    "mcp": "upsert-records",
    "cli": "pinecone",
    "ui": null
   },
   "check": "describe-index-stats shows increased vector count for the namespace",
   "capability_id": "cap_m34x9t4v",
   "source": "https://docs.pinecone.io/guides/index-data/upsert-data",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-03",
   "capability": "Run a vector/semantic search over an index",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "POST /query",
    "mcp": "search-records",
    "cli": "pinecone",
    "ui": "Console > Index > Browse"
   },
   "check": "response matches array contains scored record ids",
   "capability_id": "cap_een15d28",
   "source": "https://docs.pinecone.io/guides/search/semantic-search",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-04",
   "capability": "Run a full-text (lexical/BM25) search over an index",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "POST /query",
    "mcp": "search-records",
    "cli": null,
    "ui": null
   },
   "check": "response matches array contains records scored by BM25",
   "capability_id": "cap_0gwx7zby",
   "source": "https://docs.pinecone.io/guides/search/full-text-search",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-05",
   "capability": "Query records with metadata filters",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "POST /query (filter param)",
    "mcp": "search-records",
    "cli": null,
    "ui": null
   },
   "check": "returned matches all satisfy the supplied filter expression",
   "capability_id": "cap_bsb5z2vr",
   "source": "https://docs.pinecone.io/guides/index-data/create-an-index.md",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-06",
   "capability": "Delete records from an index",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "POST /vectors/delete",
    "mcp": null,
    "cli": null,
    "ui": "Console > Index > Browse"
   },
   "check": "subsequent fetch of the deleted id returns empty",
   "capability_id": "cap_z5zsc472",
   "source": "https://docs.pinecone.io/guides/manage-data/delete-data",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-07",
   "capability": "Generate text embeddings via hosted inference models",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "POST /embed",
    "mcp": null,
    "cli": null,
    "ui": null
   },
   "check": "response contains embedding vectors with declared dimension",
   "capability_id": "cap_0g9776e9",
   "source": "https://docs.pinecone.io/reference/api/introduction.md",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-08",
   "capability": "Rerank search results with a hosted or external model",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "POST /rerank",
    "mcp": "rerank-documents",
    "cli": null,
    "ui": null
   },
   "check": "response returns documents re-ordered with new relevance scores",
   "capability_id": null,
   "unmapped": "own_feature",
   "source": "https://docs.pinecone.io/guides/search/rerank-results.md",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-09",
   "capability": "Chat with an AI assistant grounded in uploaded files",
   "weight": "core",
   "plan": "paid",
   "surfaces": {
    "api": "POST /assistant/chat/{assistant_name}",
    "mcp": "assistant MCP server",
    "cli": null,
    "ui": "Console > Assistant"
   },
   "check": "chat response includes cited answer referencing an uploaded file",
   "capability_id": "cap_dy1t95mf",
   "source": "https://docs.pinecone.io/guides/assistant/overview.md",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-10",
   "capability": "Create a namespace",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": "POST /namespaces (2025-10 API)",
    "mcp": null,
    "cli": null,
    "ui": null
   },
   "check": "GET /namespaces/{name} returns the namespace",
   "capability_id": null,
   "unmapped": "own_feature",
   "source": "https://docs.pinecone.io/guides/manage-data/manage-namespaces.md",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-11",
   "capability": "List indexes and read their configuration/schema",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": "GET /indexes",
    "mcp": "list-indexes, describe-index",
    "cli": "pinecone index list",
    "ui": "Console > Indexes"
   },
   "check": "list response enumerates created indexes with dimension/metric",
   "capability_id": "cap_xqrrtrx2",
   "source": "https://docs.pinecone.io/reference/api/introduction.md",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-12",
   "capability": "Read index statistics (record counts, namespaces)",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": "POST /describe_index_stats",
    "mcp": "describe-index-stats",
    "cli": null,
    "ui": "Console > Index"
   },
   "check": "response totalVectorCount matches known upserted count",
   "capability_id": "cap_n0zefvzh",
   "source": "https://docs.pinecone.io/guides/operations/mcp-server.md",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-13",
   "capability": "Back up an index",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": "POST /backups",
    "mcp": null,
    "cli": null,
    "ui": "Console > Index > Backups"
   },
   "check": "GET /backups/{id} shows status Ready",
   "capability_id": "cap_drp5sav8",
   "source": "https://docs.pinecone.io/guides/manage-data/backups-overview.md",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-14",
   "capability": "Restore an index from a backup",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": "POST /indexes (source_collection/backup_id)",
    "mcp": null,
    "cli": null,
    "ui": "Console > Backups > Restore"
   },
   "check": "new index record count matches the backup's record count",
   "capability_id": "cap_ykvspbps",
   "source": "https://docs.pinecone.io/guides/manage-data/backups-overview.md",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-15",
   "capability": "Upload a file to an assistant",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": "POST /assistant/files/{assistant_name}",
    "mcp": "assistant MCP server",
    "cli": null,
    "ui": "Console > Assistant"
   },
   "check": "GET /assistant/files/{assistant_name}/{file_id} shows status Available",
   "capability_id": "cap_facpbh70",
   "source": "https://docs.pinecone.io/guides/assistant/files-overview",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-16",
   "capability": "Retrieve raw context snippets from an assistant",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": "POST /assistant/context/{assistant_name}",
    "mcp": null,
    "cli": null,
    "ui": null
   },
   "check": "response returns ranked context snippets with source file references",
   "capability_id": null,
   "unmapped": "own_feature",
   "source": "https://docs.pinecone.io/guides/assistant/context-snippets-overview",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-17",
   "capability": "Search across multiple indexes with deduplication and reranking",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": "cascading-search",
    "cli": null,
    "ui": null
   },
   "check": "response merges results from more than one index into one deduplicated ranked list",
   "capability_id": null,
   "unmapped": "own_feature",
   "source": "https://docs.pinecone.io/guides/operations/mcp-server.md",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-18",
   "capability": "Configure metadata fields for filterable indexing",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": "configure_index (metadata_config) / createnamespace",
    "mcp": null,
    "cli": null,
    "ui": null
   },
   "check": "subsequent filter query on the configured field returns matches",
   "capability_id": "cap_47me9ba3",
   "source": "https://docs.pinecone.io/guides/manage-data/manage-namespaces.md",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-19",
   "capability": "Resize/scale index compute (pods/replicas)",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": "POST /indexes/{name} (configure)",
    "mcp": null,
    "cli": null,
    "ui": "Console > Index > Configuration"
   },
   "check": "describe-index shows updated replica/pod count",
   "capability_id": "cap_jajhkrq5",
   "source": "https://docs.pinecone.io/reference/api/introduction.md",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-20",
   "capability": "Stream database changes (bulk import/export)",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": "POST /bulk/imports",
    "mcp": null,
    "cli": null,
    "ui": "Console > Index > Import"
   },
   "check": "GET /bulk/imports/{id} shows status Completed with record count",
   "capability_id": "cap_yr6whrah",
   "source": "https://docs.pinecone.io/guides/index-data/import-data",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-21",
   "capability": "Search Pinecone documentation from an agent",
   "weight": "peripheral",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": "search-docs",
    "cli": null,
    "ui": null
   },
   "check": "tool call returns doc excerpts relevant to the query",
   "capability_id": null,
   "unmapped": "own_feature",
   "source": "https://docs.pinecone.io/guides/operations/mcp-server.md",
   "result": "not_tried",
   "via": null
  },
  {
   "id": "cap-22",
   "capability": "Create an API key",
   "weight": "peripheral",
   "plan": "free",
   "surfaces": {
    "api": "POST /organizations/{org_id}/projects/{project_id}/api-keys",
    "mcp": null,
    "cli": null,
    "ui": "Console > API Keys"
   },
   "check": "GET api-keys lists the created key with its name",
   "capability_id": "cap_wbg916v9",
   "source": "https://docs.pinecone.io/reference/api/introduction.md",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-23",
   "capability": "Create and manage a project",
   "weight": "peripheral",
   "plan": "free",
   "surfaces": {
    "api": "POST /organizations/{org_id}/projects",
    "mcp": null,
    "cli": null,
    "ui": "Console > Projects"
   },
   "check": "GET /projects/{id} returns the created project",
   "capability_id": "cap_vk1kvzkm",
   "source": "https://docs.pinecone.io/guides/projects",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-24",
   "capability": "Invite a member to an organization/project",
   "weight": "peripheral",
   "plan": "free",
   "surfaces": {
    "api": "POST /organizations/{org_id}/invites",
    "mcp": null,
    "cli": null,
    "ui": "Console > Access > Invite"
   },
   "check": "GET /invites lists the pending invite for the email",
   "capability_id": "cap_3w8sjh12",
   "source": "https://docs.pinecone.io/admin/organizations/understanding-organizations.md",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-25",
   "capability": "Set a member's role/permissions (RBAC)",
   "weight": "peripheral",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Console > Access"
   },
   "check": "member's role shown in Access list changes to the assigned role",
   "capability_id": "cap_bs3hvrpm",
   "source": "https://docs.pinecone.io/admin/security/manage-rbac.md",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-26",
   "capability": "Configure SAML SSO",
   "weight": "peripheral",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Console > Organization > SSO"
   },
   "check": "SSO configuration page shows connected identity provider",
   "capability_id": "cap_pz4pecfg",
   "source": "https://docs.pinecone.io/admin/security/configure-single-sign-on/okta.md",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-27",
   "capability": "Read usage and billing",
   "weight": "peripheral",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Console > Billing"
   },
   "check": "Billing page shows current usage figures for the project",
   "capability_id": "cap_n0zefvzh",
   "source": "https://www.pinecone.io/pricing/",
   "result": "blocked",
   "via": null
  }
 ],
 "stale": false,
 "unreachable_since": null,
 "not_driven_since": null,
 "icon": "/logos/pinecone.png",
 "agent_kinds": {
  "browser": {
   "who": "An assistant in a browser",
   "passed": [],
   "stop": "signup",
   "why": "it asks for a Cloudflare Turnstile check our agent doesn't solve",
   "tone": "wall",
   "text": "Signing up needs a person: it asks for a Cloudflare Turnstile check our agent doesn't solve."
  },
  "direct": {
   "who": "An agent talking to it directly",
   "passed": [],
   "stop": "signup",
   "why": "it asks for a Cloudflare Turnstile check our agent doesn't solve",
   "tone": "wall",
   "text": "Signing up needs a person: it asks for a Cloudflare Turnstile check our agent doesn't solve."
  }
 },
 "sdk": null,
 "surface_reach": {
  "surfaces": {
   "api": true,
   "mcp": true
  },
  "read_at": "2026-11-01T23:36:49Z"
 },
 "connect": {
  "mcp": {
   "url": "https://docs.pinecone.io/mcp",
   "transport": "streamable-http",
   "state": "tested",
   "tools": {
    "count": 1,
    "names": [
     "search_website"
    ],
    "read_at": "2026-11-01"
   }
  },
  "docs": {
   "url": "https://docs.pinecone.io/guides/get-started/overview",
   "state": "tested"
  }
 },
 "surface_sources": {
  "mcp": "https://docs.pinecone.io/mcp",
  "docs": "https://docs.pinecone.io/guides/get-started/overview",
  "llms_txt": "https://www.pinecone.io/llms.txt",
  "api": "https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_control_2026-07.oas.yaml",
  "cli": "https://docs.pinecone.io/reference/cli/command-reference",
  "sdk": "https://docs.pinecone.io/reference/sdks/node/overview",
  "openapi": "https://www.pinecone.io/openapi.json"
 },
 "copilot_connector": null,
 "stripe_directory": null,
 "in_stripe_directory": null,
 "stripe_projects": null,
 "pay_rails": [],
 "stop_evidence": {
  "at": "signup",
  "date": "2026-10-26",
  "line": "The only sign-up for our own account (Auth0 passwordless email on login.pinecone.io) showed a Cloudflare Turnstile 'Verify you are human' checkbox after the email; we don't solve it. Other doors are Google, GitHub, Microsoft, company SSO and cloud marketplaces: a person's accounts."
 },
 "wall_vendor": {
  "vendor": "Cloudflare",
  "id": "cloudflare",
  "kind": "bot check",
  "at": "signup"
 },
 "mcp_sign_in": {
  "sign_in": false,
  "prm": null,
  "registration": null,
  "device": null
 },
 "safety_issues": 4,
 "fix_counts": {
  "small": 2,
  "medium": 1,
  "large": 1,
  "total": 4
 },
 "evidence_sha256": "0a36f4b9cd40a48079fa4deef1afa171b590299bedae4c0b298efb1f72e1aae6",
 "first_seen": "2026-10-21",
 "license": {
  "name": "CC BY 4.0",
  "url": "https://creativecommons.org/licenses/by/4.0/"
 },
 "correction": {
  "status": "none",
  "open": 0,
  "since": null,
  "reply_by": null
 },
 "attribution": {
  "vendor": "Cloudflare Turnstile",
  "at": "signup",
  "state": "seen",
  "stopped": true,
  "line": "Sign-up asked for a Cloudflare Turnstile check. Our agent doesn't solve these, so it stopped."
 },
 "confirmation": {
  "state": "confirmed",
  "drives": 3,
  "agree": 2,
  "review": null,
  "text": "2 of 3 drives agree"
 },
 "stop_shot": null,
 "stop_shot_hash": null,
 "attempts_count": 91,
 "detail": {
  "public": false,
  "in": [
   "report",
   "api"
  ],
  "since": "2026-10-17"
 },
 "what_it_does": "Pinecone is a vector database that stores data so software can search it by meaning.",
 "kind": "product",
 "rules_version": "rules-2026-10-30-42",
 "rules_url": "https://agentdrives.com/method/changelog#rules-2026-10-30-42",
 "category_median": null,
 "peers": {
  "DOCS-08": {
   "basis": "category",
   "n": 6,
   "below": 0,
   "above": 1
  },
  "DOCS-10": {
   "basis": "category",
   "n": 6,
   "below": 5,
   "above": 0
  },
  "DOCS-11": {
   "basis": "category",
   "n": 6,
   "below": 2,
   "above": 0
  },
  "ERR-01": {
   "basis": "category",
   "n": 6,
   "below": 0,
   "above": 0
  },
  "ERR-02": {
   "basis": "category",
   "n": 6,
   "below": 3,
   "above": 0
  },
  "ERR-03": {
   "basis": "category",
   "n": 6,
   "below": 1,
   "above": 0
  },
  "ERR-04": {
   "basis": "all",
   "n": 36,
   "below": 0,
   "above": 12,
   "percentile": 33
  },
  "ERR-07": {
   "basis": "category",
   "n": 6,
   "below": 2,
   "above": 0
  },
  "FIND-06": {
   "basis": "category",
   "n": 6,
   "below": 1,
   "above": 0
  },
  "IN-03": {
   "basis": "category",
   "n": 6,
   "below": 2,
   "above": 0
  },
  "IN-08": {
   "basis": "all",
   "n": 120,
   "below": 55,
   "above": 0,
   "percentile": 73
  },
  "IN-11": {
   "basis": "category",
   "n": 6,
   "below": 0,
   "above": 3
  },
  "IN-12": {
   "basis": "category",
   "n": 6,
   "below": 0,
   "above": 3
  },
  "LEAVE-03": {
   "basis": "category",
   "n": 6,
   "below": 2,
   "above": 1
  },
  "MCP-03": {
   "basis": "category",
   "n": 5,
   "below": 0,
   "above": 0
  },
  "MCP-04": {
   "basis": "category",
   "n": 5,
   "below": 2,
   "above": 0
  },
  "MCP-05": {
   "basis": "category",
   "n": 5,
   "below": 2,
   "above": 0
  },
  "MCP-06": {
   "basis": "category",
   "n": 5,
   "below": 3,
   "above": 0
  },
  "MCP-07": {
   "basis": "category",
   "n": 5,
   "below": 2,
   "above": 0
  },
  "MCP-08": {
   "basis": "all",
   "n": 37,
   "below": 0,
   "above": 22,
   "percentile": 20
  },
  "MCP-09": {
   "basis": "all",
   "n": 32,
   "below": 4,
   "above": 16,
   "percentile": 31
  },
  "MCP-11": {
   "basis": "category",
   "n": 5,
   "below": 0,
   "above": 0
  },
  "PAY-05": {
   "basis": "category",
   "n": 6,
   "below": 0,
   "above": 0
  },
  "PROTO-02": {
   "basis": "category",
   "n": 6,
   "below": 0,
   "above": 0
  }
 },
 "probe": null,
 "probe_history": [],
 "surface_changes": [],
 "agent_reports": null,
 "verdict": null,
 "changes": {
  "source": "store",
  "drives": [
   {
    "run": "20261021T050150Z",
    "date": "2026-10-21",
    "level": 4,
    "stop": "delete",
    "entry": "self-start",
    "driver": 4,
    "listed": true,
    "paid": false,
    "agent_paid": null
   },
   {
    "run": "20261023T234501Z",
    "date": "2026-10-23",
    "level": 1,
    "stop": "signup",
    "entry": "closed",
    "driver": 4,
    "listed": true,
    "paid": false,
    "agent_paid": null
   },
   {
    "run": "20261026T003637Z",
    "date": "2026-10-26",
    "level": 1,
    "stop": "signup",
    "entry": "closed",
    "driver": 5,
    "listed": true,
    "paid": false,
    "agent_paid": null
   }
  ],
  "events": [
   {
    "property": "entry",
    "before": "self-start",
    "after": "closed",
    "cause": "drive",
    "before_run": "20261021T050150Z",
    "after_run": "20261023T234501Z",
    "at": "2026-10-23",
    "methodology": 42,
    "methodology_before": null,
    "rules_version": "rules-2026-10-30-42",
    "rules_url": "https://agentdrives.com/method/changelog#rules-2026-10-30-42"
   },
   {
    "property": "level",
    "before": 4,
    "after": 1,
    "cause": "drive",
    "before_run": "20261021T050150Z",
    "after_run": "20261023T234501Z",
    "at": "2026-10-23",
    "methodology": 42,
    "methodology_before": null,
    "rules_version": "rules-2026-10-30-42",
    "rules_url": "https://agentdrives.com/method/changelog#rules-2026-10-30-42",
    "paid": false
   },
   {
    "property": "stop",
    "before": "delete",
    "after": "signup",
    "cause": "drive",
    "before_run": "20261021T050150Z",
    "after_run": "20261023T234501Z",
    "at": "2026-10-23",
    "methodology": 42,
    "methodology_before": null,
    "rules_version": "rules-2026-10-30-42",
    "rules_url": "https://agentdrives.com/method/changelog#rules-2026-10-30-42"
   }
  ],
  "feed": "https://agentdrives.com/api/tools/pinecone/changes.json"
 },
 "agreement": null,
 "method_release": "2026-Q4.27",
 "found": {
  "agent_blockers": 1,
  "surface_issues": 2
 },
 "agent_surfaces": {
  "api": {
   "state": "tested",
   "reachable": true,
   "documented": 109,
   "tested": 2,
   "source": "https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_control_2026-07.oas.yaml"
  },
  "mcp": {
   "state": "tested",
   "reachable": true,
   "documented": 13,
   "tested": 4,
   "source": "https://docs.pinecone.io/mcp"
  },
  "cli": {
   "state": "tested",
   "reachable": true,
   "documented": 64,
   "tested": 10,
   "source": "https://docs.pinecone.io/reference/cli/command-reference"
  },
  "sdk": {
   "state": "documented",
   "documented": 65,
   "tested": 0,
   "source": "https://docs.pinecone.io/reference/sdks/node/overview"
  },
  "docs": {
   "state": "tested",
   "documented": 1199,
   "tested": 592,
   "source": "https://docs.pinecone.io/guides/get-started/overview"
  },
  "payment": {
   "state": "none_found",
   "documented": null,
   "tested": null,
   "source": null
  }
 },
 "issues_found": 3,
 "rank": null,
 "rank_of": 3,
 "rank_change": null,
 "rank_since": null,
 "links": {
  "category": [
   {
    "label": "Data and storage",
    "href": "https://agentdrives.com/categories/data"
   },
   {
    "label": "Vector databases",
    "href": "https://agentdrives.com/categories/vector-databases"
   }
  ],
  "tasks": [],
  "walls": [
   {
    "label": "Bot checks",
    "href": "https://agentdrives.com/access/get-in/bot-checks",
    "note": "kept our agent out"
   },
   {
    "label": "Cloudflare bot check",
    "href": "https://agentdrives.com/vendors/cloudflare",
    "note": "the check, and every product we met it at"
   },
   {
    "label": "Let signed AI agents past your bot check",
    "href": "https://agentdrives.com/guides/let-signed-agents-past-your-bot-check",
    "note": "fix guide"
   }
  ],
  "vendors": [],
  "standards": [
   {
    "label": "MCP",
    "href": "https://agentdrives.com/standards/mcp",
    "note": "tools an agent can call"
   },
   {
    "label": "OpenAPI",
    "href": "https://agentdrives.com/standards/openapi",
    "note": "its API, described"
   },
   {
    "label": "llms.txt",
    "href": "https://agentdrives.com/standards/llms-txt",
    "note": "its docs, listed for agents"
   }
  ],
  "steps": [
   {
    "label": "Find",
    "href": "https://agentdrives.com/access/find"
   },
   {
    "label": "Get in",
    "href": "https://agentdrives.com/access/get-in",
    "note": "stopped here"
   },
   {
    "label": "Use",
    "href": "https://agentdrives.com/access/use"
   },
   {
    "label": "Pay",
    "href": "https://agentdrives.com/access/pay"
   },
   {
    "label": "Leave",
    "href": "https://agentdrives.com/access/leave"
   }
  ],
  "rivals": [
   {
    "label": "Chroma",
    "href": "https://agentdrives.com/tools/trychroma",
    "slug": "trychroma",
    "level": 1
   },
   {
    "label": "turbopuffer",
    "href": "https://agentdrives.com/tools/turbopuffer",
    "slug": "turbopuffer",
    "level": 1
   },
   {
    "label": "LanceDB",
    "href": "https://agentdrives.com/tools/lancedb",
    "slug": "lancedb",
    "level": 4
   }
  ],
  "compare": [],
  "rail": [
   {
    "label": "Watch this product",
    "href": "https://agentdrives.com/watch"
   },
   {
    "label": "Get the data",
    "href": "https://agentdrives.com/data#plans"
   }
  ]
 },
 "capability_matrix": [
  {
   "id": "cap-01",
   "name": "Create a vector/document index",
   "core": true,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "untried",
    "cli": "untried",
    "ui": "untried"
   }
  },
  {
   "id": "cap-02",
   "name": "Upsert records into an index",
   "core": true,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "untried",
    "cli": "untried",
    "ui": "none"
   }
  },
  {
   "id": "cap-03",
   "name": "Run a vector/semantic search over an index",
   "core": true,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "untried",
    "cli": "untried",
    "ui": "untried"
   }
  },
  {
   "id": "cap-04",
   "name": "Run a full-text (lexical/BM25) search over an index",
   "core": true,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "untried",
    "cli": "none",
    "ui": "none"
   }
  },
  {
   "id": "cap-05",
   "name": "Query records with metadata filters",
   "core": true,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "untried",
    "cli": "none",
    "ui": "none"
   }
  },
  {
   "id": "cap-06",
   "name": "Delete records from an index",
   "core": true,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-07",
   "name": "Generate text embeddings via hosted inference models",
   "core": true,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "none",
    "cli": "none",
    "ui": "none"
   }
  },
  {
   "id": "cap-08",
   "name": "Rerank search results with a hosted or external model",
   "core": true,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "untried",
    "cli": "none",
    "ui": "none"
   }
  },
  {
   "id": "cap-09",
   "name": "Chat with an AI assistant grounded in uploaded files",
   "core": true,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "untried",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-10",
   "name": "Create a namespace",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "none",
    "cli": "none",
    "ui": "none"
   }
  },
  {
   "id": "cap-11",
   "name": "List indexes and read their configuration/schema",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "untried",
    "cli": "untried",
    "ui": "untried"
   }
  },
  {
   "id": "cap-12",
   "name": "Read index statistics (record counts, namespaces)",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "untried",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-13",
   "name": "Back up an index",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-14",
   "name": "Restore an index from a backup",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-15",
   "name": "Upload a file to an assistant",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "untried",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-16",
   "name": "Retrieve raw context snippets from an assistant",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "none",
    "cli": "none",
    "ui": "none"
   }
  },
  {
   "id": "cap-17",
   "name": "Search across multiple indexes with deduplication and reranking",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "untried",
    "cli": "none",
    "ui": "none"
   }
  },
  {
   "id": "cap-18",
   "name": "Configure metadata fields for filterable indexing",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "none",
    "cli": "none",
    "ui": "none"
   }
  },
  {
   "id": "cap-19",
   "name": "Resize/scale index compute (pods/replicas)",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-20",
   "name": "Stream database changes (bulk import/export)",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-21",
   "name": "Search Pinecone documentation from an agent",
   "core": false,
   "result": "untried",
   "surfaces": {
    "api": "none",
    "mcp": "untried",
    "cli": "none",
    "ui": "none"
   }
  },
  {
   "id": "cap-22",
   "name": "Create an API key",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-23",
   "name": "Create and manage a project",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-24",
   "name": "Invite a member to an organization/project",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-25",
   "name": "Set a member's role/permissions (RBAC)",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-26",
   "name": "Configure SAML SSO",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-27",
   "name": "Read usage and billing",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  }
 ],
 "category_place": {
  "category": "vector-databases",
  "products": 6,
  "higher": 3,
  "same_level": 2,
  "as_of": "2026-10-31",
  "stop": "signup",
  "rivals_by": "stop",
  "rivals": [
   "trychroma"
  ]
 },
 "page": "https://agentdrives.com/tools/pinecone?via=api"
}