{
  "data": {
    "a": {
      "slug": "elasticsearch",
      "name": "Elasticsearch",
      "vendor": "Elastic",
      "vendorUrl": "https://www.elastic.co",
      "kind": "http-api",
      "category": "vector-search",
      "summary": "Elasticsearch is Elastic's search engine and vector database, with keyword, vector and hybrid search over a REST API. Agents reach it through that API or the Agent Builder MCP server on Elastic Cloud and Elastic Stack 9.2 or later.",
      "url": "https://www.anchorterminal.com/tools/elasticsearch",
      "markdownUrl": "https://www.anchorterminal.com/tools/elasticsearch.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/elasticsearch.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/elasticsearch.json",
      "repo": "https://github.com/elastic/elasticsearch",
      "license": "AGPL-3.0, SSPL-1.0 or Elastic Licence 2.0 at the user's choice for most source. The `x-pack` folder is under Elastic Licence 2.0 only. Elastic Cloud is a proprietary service under Elastic's terms",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "@elastic/elasticsearch"
        },
        {
          "registry": "pypi",
          "name": "elasticsearch"
        }
      ],
      "auth": "mixed",
      "authNotes": "Self-serve. The REST API takes `Authorization: ApiKey \u003ckey\u003e`, with keys created in Kibana or by `POST /_security/api_key` and limited by role descriptors and an expiry. The Agent Builder MCP server takes the same kind of key, which needs the `feature_agentBuilder.read` Kibana privilege, or OAuth 2.1 on Serverless projects, where a registered client and a browser consent give each user a revocable connection.",
      "pricing": "usage",
      "pricingNotes": "Serverless bills by use, with search from $0.09 a VCU-hour, ingest from $0.14, storage from $0.047 a GB a month and egress from $0.05 a GB. Agent Builder has 1,000 free executions a month, then from $0.025 each. A 14-day Elastic Cloud trial needs no credit card. Self-managed Elasticsearch is free to run under its source licences (https://www.elastic.co/pricing/serverless-search, checked 2026-10-08).",
      "priceSummary": "$0.09 / unit",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs index, the Serverless OpenAPI file or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 3136798,
        "pypiWeekly": 7755257,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://www.elastic.co/docs/solutions/search",
      "llmsTxt": "https://www.elastic.co/docs/llms.txt",
      "openapi": "https://www.elastic.co/docs/api/doc/elasticsearch-serverless.json",
      "capabilities": [
        "db.vector",
        "db.hybrid",
        "db.fulltext",
        "db.filters",
        "db.serverless"
      ],
      "tags": [
        "hosted",
        "usage",
        "free-trial",
        "no-card",
        "open-source",
        "self-hosted",
        "mcp",
        "oauth",
        "openapi",
        "llms-txt",
        "typescript",
        "python",
        "status-page",
        "bug-bounty",
        "soc2",
        "sla"
      ],
      "lastRelease": "2026-10-06",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 67.7,
        "grade": "B",
        "agentReady": false,
        "rank": 224,
        "ranked": true,
        "rankOf": 842,
        "categoryRank": 6,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 77,
          "maintenance": 83,
          "payments": 35,
          "reliability": 62,
          "schema": 88,
          "security": 72,
          "transparency": 71
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": -2,
        "negativeNotes": [
          "Sixteen Elasticsearch security advisories were posted between 25 September and 6 October 2026. The one we read, ESA-2026-199 (CVE-2026-103009, CVSS 7.1), is an authorisation bypass in cross-cluster search on self-managed clusters, fixed in 8.19.23, 9.4.8 and 9.5.5, and Elastic says Serverless is not affected. Fixed and disclosed, so a small deduction (https://discuss.elastic.co/c/announcements/security-announcements/31)."
        ],
        "verdict": "Keyword, dense and sparse vector, and hybrid search with rank fusion sit behind one OpenAPI-described REST API, with API keys scoped to indices and privileges. The status page lists more than 20 incidents marked major since July 2026, and Elasticsearch 9.5.0 returned incorrect results for some queries without raising an error.",
        "bestFor": "Retrieval that needs keyword relevance, filters and vectors in one query, and teams already running Elastic for logs or security.",
        "strengths": [
          "OpenAPI 3.0.3 file for the Serverless API with 311 operations, plus llms.txt and a Markdown twin of every docs page",
          "API keys take role descriptors that limit indices and privileges, with an expiry, and the MCP server accepts OAuth 2.1 on Serverless",
          "Agent Builder MCP server is generally available on Serverless and on Elastic Stack 9.3 and later",
          "14-day Elastic Cloud trial with no credit card, and unit prices published for Serverless",
          "Public bug bounty on HackerOne, CVE Numbering Authority status and dated security advisories"
        ],
        "weaknesses": [
          "More than 20 status notices marked major between 10 July and 8 October 2026, three of them regional service incidents",
          "Elasticsearch 9.5.0 (29 July 2026) returned incorrect results for some `must_not` queries with no error, fixed in 9.5.1 and 9.5.2",
          "No request rate limit with numbers was found in the reviewed documentation",
          "The 99.95 per cent Serverless SLA applies only at Platinum or Enterprise subscription level",
          "The monthly terms forbid use of the cloud service for benchmarking, competitive or comparative purposes",
          "Search compute on Serverless does not scale to zero, so an idle project is still billed a baseline"
        ],
        "agentNotes": [
          "Send `Authorization: ApiKey \u003ckey\u003e` to the project's Elasticsearch URL. The MCP server is on the Kibana URL at `/api/agent_builder/mcp`",
          "Create the MCP key with `feature_agentBuilder.read` and only the index patterns needed, or the endpoint answers 403",
          "On 429, wait and retry with exponential backoff. Do not set short client timeouts, because a retried request joins the back of the queue",
          "Page past 10,000 hits with `search_after`, not `from` and `size`",
          "Tool calls made directly through the Tools API skip Agent Builder's confirmation prompts, so restrict the key instead"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 67.7
          }
        ],
        "editorialScores": {
          "ergonomics": 77,
          "maintenance": 83,
          "payments": 35,
          "reliability": 62,
          "schema": 88,
          "security": 72,
          "transparency": 70
        },
        "provenanceScore": 71
      },
      "connect": {
        "install": "npm install @elastic/elasticsearch",
        "http": "curl -X GET \"${ES_URL}/_cat/indices?v=true\" \\\n  -H \"Authorization: ApiKey ${API_KEY}\"",
        "config": {
          "mcpServers": {
            "elastic-agent-builder": {
              "args": [
                "mcp-remote",
                "${KIBANA_URL}/api/agent_builder/mcp",
                "--header",
                "Authorization:${AUTH_HEADER}"
              ],
              "command": "npx",
              "env": {
                "AUTH_HEADER": "ApiKey ${API_KEY}",
                "KIBANA_URL": "${KIBANA_URL}"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/db.vector",
        "tool": "https://letme.dev/elasticsearch"
      },
      "area": "developer",
      "unitPrices": [
        {
          "item": "Serverless search compute, VCU-hour",
          "unit": "compute-unit",
          "usd": 0.09,
          "note": "Quoted as a floor on the pricing page"
        },
        {
          "item": "Serverless ingest compute, VCU-hour",
          "unit": "compute-unit",
          "usd": 0.14,
          "note": "Quoted as a floor on the pricing page"
        },
        {
          "item": "Serverless storage",
          "unit": "gb-month",
          "usd": 0.047,
          "note": "Quoted as a floor on the pricing page"
        },
        {
          "item": "Serverless egress",
          "unit": "gb",
          "usd": 0.05,
          "note": "Quoted as a floor on the pricing page"
        },
        {
          "item": "Agent Builder execution",
          "unit": "call",
          "usd": 0.025,
          "note": "After 1,000 free executions a month, quoted as a floor"
        }
      ],
      "provenance": {
        "legalEntity": "Elasticsearch B.V.",
        "domain": "elastic.co",
        "domainRegistered": "",
        "endpointOnVendorDomain": true,
        "terms": "https://www.elastic.co/agreements/cloud-monthly",
        "privacy": "https://www.elastic.co/legal/product-privacy-statement",
        "statusPage": "https://status.elastic.co",
        "changelog": "https://www.elastic.co/docs/release-notes/elasticsearch",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The Cloud Monthly Terms of Service (effective 12 September 2025) name the contracting entity by customer location, Elasticsearch, Inc. for the United States and Elasticsearch B.V. or Elastic International B.V. elsewhere. The page is a cover that links the PDF.",
          "Customers with an order form are under the Elastic Cloud Service Subscription Agreement of 5 March 2026 at https://www.elastic.co/agreements/global/cloud-services.",
          "The Product Privacy Statement (7 September 2026) is issued by Elastic N.V. and its subsidiaries and covers Elastic Cloud Hosted, Serverless and self-managed software. The General Privacy Statement covers only websites and events.",
          "www.elastic.co/.well-known/security.txt returned 404. Reports go to HackerOne or security@elastic.co.",
          "No RDAP service answered for elastic.co, so the registration date is not recorded.",
          "Project endpoints are on Elastic Cloud hostnames that we did not call. `endpointOnVendorDomain` rests on the docs, not on a request."
        ],
        "score": 71
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/elasticsearch.json",
      "live": {
        "slug": "elasticsearch",
        "vendorStatus": {
          "page": "https://status.elastic.co",
          "indicator": "major",
          "summary": "Partial System Outage",
          "checkedAt": "2026-10-09T10:41:35.800130842Z"
        },
        "updatedAt": "2026-10-09T10:41:35.800130842Z"
      }
    },
    "answer": "Vespa scores 70 (BB) on agent readiness against Elasticsearch's 67.7 (B), and leads in 6 of 7 scored categories. Elasticsearch leads on schema \u0026 documentation.",
    "b": {
      "slug": "vespa",
      "name": "Vespa",
      "vendor": "Vespa.ai AS",
      "vendorUrl": "https://vespa.ai",
      "kind": "http-api",
      "category": "vector-search",
      "summary": "Vespa is an open-source search engine from Vespa.ai AS for vector, text and hybrid retrieval with ranking, run self-hosted or on Vespa Cloud. Agents reach it through HTTP query and document APIs, the Vespa CLI and a Python client.",
      "url": "https://www.anchorterminal.com/tools/vespa",
      "markdownUrl": "https://www.anchorterminal.com/tools/vespa.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/vespa.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/vespa.json",
      "repo": "https://github.com/vespa-engine/vespa",
      "license": "Apache-2.0 for the engine, the Vespa CLI and pyvespa. Vespa Cloud is a paid hosted service",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "pypi",
          "name": "pyvespa"
        }
      ],
      "auth": "mixed",
      "authNotes": "Vespa Cloud data-plane requests use mutual TLS with a client certificate placed in the application package, or a bearer token on a separate token endpoint. Each client is limited to `read`, `write` or both. Tokens are created in the console, have versions for rotation, expire (30 days by default) and can be revoked. The control plane uses a browser login through Auth0 (`vespa auth login`) or an application key pair for CI. Access is self-serve after a browser sign-up. A self-hosted Vespa has no authentication until the operator configures mTLS.",
      "pricing": "usage",
      "pricingNotes": "Vespa Cloud charges by the hour for allocated resources. Startup is $0.05 a vCPU-hour, $0.005 a GB-hour of memory and $0.0002 a GB-hour of disk, on dev zones with community support and no SLA. Basic starts at $0.10 a vCPU-hour, Commercial at $0.145 and Enterprise at $0.18 with a $20,000 monthly minimum. Unit prices fall with volume by up to 50 per cent. The trial has $300 of credits, needs no card and stops the application when credits run out. Self-hosting the Apache-2.0 engine is free (https://cloud.vespa.ai/price-calculator-content, checked 2026-10-09).",
      "priceSummary": "$0.05 / vCPU-hr",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs index, the pricing page or the price calculator (checked 2026-10-09).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 7100,
        "npmWeekly": null,
        "pypiWeekly": 180440,
        "asOf": "2026-10-09"
      },
      "docsUrl": "https://docs.vespa.ai/",
      "llmsTxt": "https://docs.vespa.ai/llms.txt",
      "capabilities": [
        "db.vector",
        "db.hybrid",
        "db.fulltext",
        "db.filters"
      ],
      "tags": [
        "open-source",
        "self-hosted",
        "hosted",
        "usage-based",
        "free-trial",
        "no-card",
        "cli",
        "llms-txt",
        "python",
        "java",
        "status-page",
        "sla",
        "soc2",
        "enterprise"
      ],
      "lastRelease": "2026-10-01",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 70,
        "grade": "BB",
        "agentReady": true,
        "rank": 157,
        "ranked": true,
        "rankOf": 842,
        "categoryRank": 4,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 80,
          "maintenance": 91,
          "payments": 40,
          "reliability": 80,
          "schema": 58,
          "security": 75,
          "transparency": 85
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-09"
        },
        "negative": -2,
        "negativeNotes": [
          "GHSA-v86h-xr9p-pgm5, moderate severity (CVSS 6.8), published 4 September 2026. Two local file inclusion flaws in the deployment API let an authorised deployer read files readable by the config server process, in versions up to 8.746.22. Patched in 8.748.3 and disclosed in public, so a small deduction (https://github.com/vespa-engine/vespa/security/advisories/GHSA-v86h-xr9p-pgm5)."
        ],
        "verdict": "Vespa Cloud publishes hourly unit prices, a 99.5% uptime agreement for paying customers and a trial with $300 of credits and no card. Every call needs an application package deployed first, no OpenAPI file was found in the reviewed documentation, and Vespa.ai says it has no official public MCP server.",
        "bestFor": "Teams that need hybrid retrieval with custom ranking at scale and can maintain a schema and application package.",
        "strengths": [
          "Data-plane clients use mTLS certificates or tokens, each limited to `read`, `write` or both, with token versions, expiry and revocation",
          "Unit prices are public, from $0.05 a vCPU-hour on Startup, and the trial gives $300 of credits with no card",
          "Every docs page has a Markdown twin, with `llms.txt` and `llms-full.txt` on docs.vespa.ai",
          "16 release tags between 12 July and 29 September 2026, and pyvespa 1.2.8 on 1 October 2026",
          "Sub-processor list updated 12 August 2026 with locations, and logs are kept for at most 30 days in the application's region"
        ],
        "weaknesses": [
          "No OpenAPI file was found in the docs index. The APIs are described in reference pages only",
          "Vespa.ai states it has no official public MCP server. An MCP endpoint must be added to the user's own application",
          "No call works until a schema and `services.xml` are deployed as an application package",
          "The Service Agreement named in the DPA is not on the product terms page, which links only the privacy policy, DPA and SLA",
          "Advisory GHSA-v86h-xr9p-pgm5 (moderate, 4 September 2026) let authorised deployers read config server files before 8.748.3"
        ],
        "agentNotes": [
          "Deploy an application package with a schema before feeding or querying. Use `vespa deploy` and wait for the endpoint to report ready",
          "Send a token as `Authorization: Bearer` only to the endpoint marked Token. The mTLS endpoint needs the client certificate and key",
          "Set `hits`, `offset` and `presentation.summary` on queries. `hits` is capped at 400 by default and the query timeout defaults to 0.5s",
          "On 429 from `/document/v1` reduce the feed rate and back off. On 507 stop feeding, because the cluster is out of memory or disk",
          "Use the `condition` parameter for test-and-set writes and expect 412 when it fails or the document is missing"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 70
          }
        ],
        "editorialScores": {
          "ergonomics": 80,
          "maintenance": 91,
          "payments": 40,
          "reliability": 80,
          "schema": 58,
          "security": 75,
          "transparency": 86
        },
        "provenanceScore": 84
      },
      "connect": {
        "install": "brew install vespa-cli",
        "http": "curl -H \"Authorization: Bearer $TOKEN\" $ENDPOINT"
      },
      "letme": {
        "capability": "https://letme.dev/db.vector",
        "tool": "https://letme.dev/vespa"
      },
      "area": "developer",
      "unitPrices": [
        {
          "item": "Startup plan, one vCPU for an hour",
          "unit": "vcpu-hour",
          "usd": 0.05,
          "note": "Memory $0.005 and disk $0.0002 a GB-hour are charged as well"
        },
        {
          "item": "Commercial plan, one vCPU for an hour (initial price)",
          "unit": "vcpu-hour",
          "usd": 0.145,
          "note": "Memory $0.0145 and disk $0.0005 a GB-hour are charged as well. Prices fall with volume"
        }
      ],
      "provenance": {
        "legalEntity": "Vespa.ai AS",
        "domain": "vespa.ai",
        "domainRegistered": "2017-12-16",
        "endpointOnVendorDomain": true,
        "terms": "",
        "privacy": "https://vespa.ai/privacy-policy/",
        "statusPage": "https://status.vespa.ai",
        "changelog": "https://github.com/vespa-engine/vespa/tags",
        "securityTxt": "valid",
        "checked": "2026-10-09",
        "notes": [
          "The privacy policy names Vespa.ai AS, Prinsens gate 49, 7011 Trondheim, Norway, as controller for vespa.ai and console.vespa-cloud.com.",
          "No terms document is set. The product terms page links only the privacy policy, the DPA and the SLA, and the Service Agreement the DPA refers to was not found on the site.",
          "The DPA, last updated 18 October 2023, names Vespa.AI Norway AS as processor, a different name from the privacy policy's.",
          "Application endpoints answer on vespa-app.cloud and the console and control plane on vespa-cloud.com, both second domains of the vendor's.",
          "security.txt at vespa.ai expires on 31 December 2026 and points to a vulnerability disclosure programme on Intigriti.",
          "RDAP for vespa.ai gives a registration date of 2017-12-16."
        ],
        "score": 84
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/vespa.json",
      "live": {
        "slug": "vespa",
        "vendorStatus": {
          "page": "https://status.vespa.ai",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-09T07:58:40.039920611Z"
        },
        "updatedAt": "2026-10-09T07:58:40.039920611Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Elastic",
        "b": "Vespa.ai AS",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Pay per use",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "AGPL-3.0, SSPL-1.0 or Elastic Licence 2.0 at the user's choice for most source. The `x-pack` folder is under Elastic Licence 2.0 only. Elastic Cloud is a proprietary service under Elastic's terms",
        "b": "Apache-2.0 for the engine, the Vespa CLI and pyvespa. Vespa Cloud is a paid hosted service",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-06",
        "b": "2026-10-01",
        "name": "Last release"
      },
      {
        "a": "couldn't be read",
        "b": "no document linked",
        "name": "Terms last updated"
      },
      {
        "a": "2026-09-07",
        "b": "no date given",
        "name": "Privacy policy last updated"
      },
      {
        "a": "couldn't be read",
        "b": "",
        "name": "Customer content may train models"
      },
      {
        "a": "couldn't be read",
        "b": "",
        "name": "Terms restrict automated access"
      },
      {
        "a": "couldn't be read",
        "b": "",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "couldn't be read",
        "b": "",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "couldn't be read",
        "b": "",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "3.1M npm/wk, 7.8M PyPI/wk",
        "b": "7.1k stars, 180k PyPI/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Vespa scores 70 (BB) on agent readiness against Elasticsearch's 67.7 (B), and leads in 6 of 7 scored categories. Elasticsearch leads on schema \u0026 documentation.",
        "question": "Which is better for AI agents, Elasticsearch or Vespa?"
      },
      {
        "answer": "Both take an API key or an OAuth sign-in.",
        "question": "Do Elasticsearch and Vespa need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for Elasticsearch. No hosted endpoint is listed for Vespa.",
        "question": "Can an agent call Elasticsearch and Vespa without installing anything?"
      },
      {
        "answer": "Yes. Elasticsearch is open source (AGPL-3.0, SSPL-1.0 or Elastic Licence 2.0 at the user's choice for most source. The `x-pack` folder is under Elastic Licence 2.0 only. Elastic Cloud is a proprietary service under Elastic's terms). Vespa is open source (Apache-2.0 for the engine, the Vespa CLI and pyvespa. Vespa Cloud is a paid hosted service).",
        "question": "Are Elasticsearch and Vespa open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Schema \u0026 documentation, 88 against 58"
        ],
        "also": null,
        "goodFor": "Retrieval that needs keyword relevance, filters and vectors in one query, and teams already running Elastic for logs or security.",
        "slug": "elasticsearch",
        "watchFor": "More than 20 status notices marked major between 10 July and 8 October 2026, three of them regional service incidents"
      },
      {
        "aheadOn": [
          "Reliability, 80 against 62",
          "Payments \u0026 pricing, 40 against 35",
          "Maintenance \u0026 community, 91 against 83",
          "Transparency \u0026 trust, 85 against 71"
        ],
        "also": [
          "Agent-ready, a grade of BB or better"
        ],
        "goodFor": "Teams that need hybrid retrieval with custom ranking at scale and can maintain a schema and application package.",
        "slug": "vespa",
        "watchFor": "No OpenAPI file was found in the docs index. The APIs are described in reference pages only"
      }
    ],
    "job": {
      "capability": "db.vector",
      "name": "Db vector"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/chroma-vs-elasticsearch.json",
        "title": "Chroma API + MCP vs Elasticsearch",
        "url": "https://www.anchorterminal.com/compare/chroma-vs-elasticsearch"
      },
      {
        "json": "https://www.anchorterminal.com/compare/chroma-vs-vespa.json",
        "title": "Chroma API + MCP vs Vespa",
        "url": "https://www.anchorterminal.com/compare/chroma-vs-vespa"
      },
      {
        "json": "https://www.anchorterminal.com/compare/elasticsearch-vs-epsilla.json",
        "title": "Elasticsearch vs Epsilla Vector Database",
        "url": "https://www.anchorterminal.com/compare/elasticsearch-vs-epsilla"
      },
      {
        "json": "https://www.anchorterminal.com/compare/elasticsearch-vs-lancedb.json",
        "title": "Elasticsearch vs LanceDB",
        "url": "https://www.anchorterminal.com/compare/elasticsearch-vs-lancedb"
      },
      {
        "json": "https://www.anchorterminal.com/compare/elasticsearch-vs-milvus-zilliz.json",
        "title": "Elasticsearch vs Milvus and Zilliz Cloud API + MCP",
        "url": "https://www.anchorterminal.com/compare/elasticsearch-vs-milvus-zilliz"
      },
      {
        "json": "https://www.anchorterminal.com/compare/elasticsearch-vs-pinecone.json",
        "title": "Elasticsearch vs Pinecone API + MCP",
        "url": "https://www.anchorterminal.com/compare/elasticsearch-vs-pinecone"
      },
      {
        "json": "https://www.anchorterminal.com/compare/elasticsearch-vs-qdrant.json",
        "title": "Elasticsearch vs Qdrant API + MCP",
        "url": "https://www.anchorterminal.com/compare/elasticsearch-vs-qdrant"
      },
      {
        "json": "https://www.anchorterminal.com/compare/elasticsearch-vs-typesense.json",
        "title": "Elasticsearch vs Typesense API + MCP",
        "url": "https://www.anchorterminal.com/compare/elasticsearch-vs-typesense"
      },
      {
        "json": "https://www.anchorterminal.com/compare/elasticsearch-vs-upstash-vector.json",
        "title": "Elasticsearch vs Upstash Vector API + MCP",
        "url": "https://www.anchorterminal.com/compare/elasticsearch-vs-upstash-vector"
      },
      {
        "json": "https://www.anchorterminal.com/compare/elasticsearch-vs-weaviate.json",
        "title": "Elasticsearch vs Weaviate API + MCP",
        "url": "https://www.anchorterminal.com/compare/elasticsearch-vs-weaviate"
      },
      {
        "json": "https://www.anchorterminal.com/compare/epsilla-vs-vespa.json",
        "title": "Epsilla Vector Database vs Vespa",
        "url": "https://www.anchorterminal.com/compare/epsilla-vs-vespa"
      },
      {
        "json": "https://www.anchorterminal.com/compare/lancedb-vs-vespa.json",
        "title": "LanceDB vs Vespa",
        "url": "https://www.anchorterminal.com/compare/lancedb-vs-vespa"
      },
      {
        "json": "https://www.anchorterminal.com/compare/milvus-zilliz-vs-vespa.json",
        "title": "Milvus and Zilliz Cloud API + MCP vs Vespa",
        "url": "https://www.anchorterminal.com/compare/milvus-zilliz-vs-vespa"
      },
      {
        "json": "https://www.anchorterminal.com/compare/pinecone-vs-vespa.json",
        "title": "Pinecone API + MCP vs Vespa",
        "url": "https://www.anchorterminal.com/compare/pinecone-vs-vespa"
      },
      {
        "json": "https://www.anchorterminal.com/compare/qdrant-vs-vespa.json",
        "title": "Qdrant API + MCP vs Vespa",
        "url": "https://www.anchorterminal.com/compare/qdrant-vs-vespa"
      },
      {
        "json": "https://www.anchorterminal.com/compare/typesense-vs-vespa.json",
        "title": "Typesense API + MCP vs Vespa",
        "url": "https://www.anchorterminal.com/compare/typesense-vs-vespa"
      },
      {
        "json": "https://www.anchorterminal.com/compare/upstash-vector-vs-vespa.json",
        "title": "Upstash Vector API + MCP vs Vespa",
        "url": "https://www.anchorterminal.com/compare/upstash-vector-vs-vespa"
      },
      {
        "json": "https://www.anchorterminal.com/compare/vespa-vs-weaviate.json",
        "title": "Vespa vs Weaviate API + MCP",
        "url": "https://www.anchorterminal.com/compare/vespa-vs-weaviate"
      }
    ],
    "scores": [
      {
        "by": 18,
        "edge": "vespa",
        "elasticsearch": 62,
        "key": "reliability",
        "name": "Reliability",
        "vespa": 80,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 30,
        "edge": "elasticsearch",
        "elasticsearch": 88,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "vespa": 58,
        "weight": 13
      },
      {
        "by": 3,
        "edge": "vespa",
        "elasticsearch": 77,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "vespa": 80,
        "weight": 13
      },
      {
        "by": 3,
        "edge": "vespa",
        "elasticsearch": 72,
        "key": "security",
        "name": "Security \u0026 auth",
        "vespa": 75,
        "weight": 14
      },
      {
        "by": 5,
        "edge": "vespa",
        "elasticsearch": 35,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "vespa": 40,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 8,
        "edge": "vespa",
        "elasticsearch": 83,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "vespa": 91,
        "weight": 7
      },
      {
        "by": 14,
        "edge": "vespa",
        "elasticsearch": 71,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "vespa": 85,
        "weight": 7
      }
    ],
    "summary": "Vespa scores 70 (BB) on agent readiness against Elasticsearch's 67.7 (B), and leads in 6 of 7 scored categories. Elasticsearch leads on schema \u0026 documentation. Both do db vector.",
    "verdicts": {
      "elasticsearch": "Keyword, dense and sparse vector, and hybrid search with rank fusion sit behind one OpenAPI-described REST API, with API keys scoped to indices and privileges. The status page lists more than 20 incidents marked major since July 2026, and Elasticsearch 9.5.0 returned incorrect results for some queries without raising an error.",
      "vespa": "Vespa Cloud publishes hourly unit prices, a 99.5% uptime agreement for paying customers and a trial with $300 of credits and no card. Every call needs an application package deployed first, no OpenAPI file was found in the reviewed documentation, and Vespa.ai says it has no official public MCP server."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/elasticsearch-vs-vespa",
    "json": "https://www.anchorterminal.com/compare/elasticsearch-vs-vespa.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/elasticsearch-vs-vespa.md",
    "slim": "https://www.anchorterminal.com/compare/elasticsearch-vs-vespa.min.md"
  },
  "markdown": "Vespa scores 70 (BB) on agent readiness against Elasticsearch's 67.7 (B), and leads in 6 of 7 scored categories. Elasticsearch leads on schema \u0026 documentation. Both do db vector.\n\n- Elasticsearch: grade B, 67.7/100, rank #224 of 842. Markdown https://www.anchorterminal.com/tools/elasticsearch.md · JSON https://www.anchorterminal.com/api/v1/tools/elasticsearch.json\n- Vespa: grade BB, 70/100, rank #157 of 842. Markdown https://www.anchorterminal.com/tools/vespa.md · JSON https://www.anchorterminal.com/api/v1/tools/vespa.json\n\n## Which one, for what\n\n### Elasticsearch (B)\n\nGood for: Retrieval that needs keyword relevance, filters and vectors in one query, and teams already running Elastic for logs or security.\n\nAhead on:\n- Schema \u0026 documentation, 88 against 58\n\nWatch for: More than 20 status notices marked major between 10 July and 8 October 2026, three of them regional service incidents\n\n### Vespa (BB)\n\nGood for: Teams that need hybrid retrieval with custom ranking at scale and can maintain a schema and application package.\n\nAhead on:\n- Reliability, 80 against 62\n- Payments \u0026 pricing, 40 against 35\n- Maintenance \u0026 community, 91 against 83\n- Transparency \u0026 trust, 85 against 71\n\nAlso in its favour:\n- Agent-ready, a grade of BB or better\n\nWatch for: No OpenAPI file was found in the docs index. The APIs are described in reference pages only\n\n\n## Score by category\n\n| Category | Weight | Elasticsearch | Vespa | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 62 | 80 | Vespa +18 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 88 | 58 | Elasticsearch +30 |\n| Agent ergonomics | 13% (16.2 this run) | 77 | 80 | Vespa +3 |\n| Security \u0026 auth | 14% (17.5 this run) | 72 | 75 | Vespa +3 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 35 | 40 | Vespa +5 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 83 | 91 | Vespa +8 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 71 | 85 | Vespa +14 |\n| Negative events | ≤15 | -2 | -2 | |\n| **Total** | | **67.7 · B** | **70 · BB** | |\n\n## Facts side by side\n\n| Fact | Elasticsearch | Vespa |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Elastic | Vespa.ai AS |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports | HTTP | HTTP |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Pay per use | Pay per use |\n| x402 | no | no |\n| Licence | AGPL-3.0, SSPL-1.0 or Elastic Licence 2.0 at the user's choice for most source. The `x-pack` folder is under Elastic Licence 2.0 only. Elastic Cloud is a proprietary service under Elastic's terms | Apache-2.0 for the engine, the Vespa CLI and pyvespa. Vespa Cloud is a paid hosted service |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-06 | 2026-10-01 |\n| Terms last updated | couldn't be read | no document linked |\n| Privacy policy last updated | 2026-09-07 | no date given |\n| Customer content may train models | couldn't be read |  |\n| Terms restrict automated access | couldn't be read |  |\n| Terms restrict benchmarking | couldn't be read |  |\n| Terms or service can change without notice | couldn't be read |  |\n| Arbitration or class-action waiver | couldn't be read |  |\n| Popularity | 3.1M npm/wk, 7.8M PyPI/wk | 7.1k stars, 180k PyPI/wk |\n\n## Verdicts\n\n**Elasticsearch.** Keyword, dense and sparse vector, and hybrid search with rank fusion sit behind one OpenAPI-described REST API, with API keys scoped to indices and privileges. The status page lists more than 20 incidents marked major since July 2026, and Elasticsearch 9.5.0 returned incorrect results for some queries without raising an error.\n\n**Vespa.** Vespa Cloud publishes hourly unit prices, a 99.5% uptime agreement for paying customers and a trial with $300 of credits and no card. Every call needs an application package deployed first, no OpenAPI file was found in the reviewed documentation, and Vespa.ai says it has no official public MCP server.\n\n## Before you call either\n\n### Elasticsearch\n\n1. Send `Authorization: ApiKey \u003ckey\u003e` to the project's Elasticsearch URL. The MCP server is on the Kibana URL at `/api/agent_builder/mcp`\n2. Create the MCP key with `feature_agentBuilder.read` and only the index patterns needed, or the endpoint answers 403\n3. On 429, wait and retry with exponential backoff. Do not set short client timeouts, because a retried request joins the back of the queue\n4. Page past 10,000 hits with `search_after`, not `from` and `size`\n5. Tool calls made directly through the Tools API skip Agent Builder's confirmation prompts, so restrict the key instead\n\n### Vespa\n\n1. Deploy an application package with a schema before feeding or querying. Use `vespa deploy` and wait for the endpoint to report ready\n2. Send a token as `Authorization: Bearer` only to the endpoint marked Token. The mTLS endpoint needs the client certificate and key\n3. Set `hits`, `offset` and `presentation.summary` on queries. `hits` is capped at 400 by default and the query timeout defaults to 0.5s\n4. On 429 from `/document/v1` reduce the feed rate and back off. On 507 stop feeding, because the cluster is out of memory or disk\n5. Use the `condition` parameter for test-and-set writes and expect 412 when it fails or the document is missing\n\n## Questions\n\n### Which is better for AI agents, Elasticsearch or Vespa?\n\nVespa scores 70 (BB) on agent readiness against Elasticsearch's 67.7 (B), and leads in 6 of 7 scored categories. Elasticsearch leads on schema \u0026 documentation.\n\n### Do Elasticsearch and Vespa need an API key?\n\nBoth take an API key or an OAuth sign-in.\n\n### Can an agent call Elasticsearch and Vespa without installing anything?\n\nNo hosted endpoint is listed for Elasticsearch. No hosted endpoint is listed for Vespa.\n\n### Are Elasticsearch and Vespa open source?\n\nYes. Elasticsearch is open source (AGPL-3.0, SSPL-1.0 or Elastic Licence 2.0 at the user's choice for most source. The `x-pack` folder is under Elastic Licence 2.0 only. Elastic Cloud is a proprietary service under Elastic's terms). Vespa is open source (Apache-2.0 for the engine, the Vespa CLI and pyvespa. Vespa Cloud is a paid hosted service).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/elasticsearch-vs-vespa.json, and with the fewest tokens: https://www.anchorterminal.com/compare/elasticsearch-vs-vespa.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"elasticsearch\", \"b\": \"vespa\"}`. From a terminal: `anchor compare elasticsearch vespa`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/elasticsearch.json and https://www.anchorterminal.com/api/v1/tools/vespa.json\n\n## Other comparisons with Elasticsearch or Vespa\n\n- [Chroma API + MCP vs Elasticsearch](https://www.anchorterminal.com/compare/chroma-vs-elasticsearch.md)\n- [Chroma API + MCP vs Vespa](https://www.anchorterminal.com/compare/chroma-vs-vespa.md)\n- [Elasticsearch vs Epsilla Vector Database](https://www.anchorterminal.com/compare/elasticsearch-vs-epsilla.md)\n- [Elasticsearch vs LanceDB](https://www.anchorterminal.com/compare/elasticsearch-vs-lancedb.md)\n- [Elasticsearch vs Milvus and Zilliz Cloud API + MCP](https://www.anchorterminal.com/compare/elasticsearch-vs-milvus-zilliz.md)\n- [Elasticsearch vs Pinecone API + MCP](https://www.anchorterminal.com/compare/elasticsearch-vs-pinecone.md)\n- [Elasticsearch vs Qdrant API + MCP](https://www.anchorterminal.com/compare/elasticsearch-vs-qdrant.md)\n- [Elasticsearch vs Typesense API + MCP](https://www.anchorterminal.com/compare/elasticsearch-vs-typesense.md)\n- [Elasticsearch vs Upstash Vector API + MCP](https://www.anchorterminal.com/compare/elasticsearch-vs-upstash-vector.md)\n- [Elasticsearch vs Weaviate API + MCP](https://www.anchorterminal.com/compare/elasticsearch-vs-weaviate.md)\n- [Epsilla Vector Database vs Vespa](https://www.anchorterminal.com/compare/epsilla-vs-vespa.md)\n- [LanceDB vs Vespa](https://www.anchorterminal.com/compare/lancedb-vs-vespa.md)\n- [Milvus and Zilliz Cloud API + MCP vs Vespa](https://www.anchorterminal.com/compare/milvus-zilliz-vs-vespa.md)\n- [Pinecone API + MCP vs Vespa](https://www.anchorterminal.com/compare/pinecone-vs-vespa.md)\n- [Qdrant API + MCP vs Vespa](https://www.anchorterminal.com/compare/qdrant-vs-vespa.md)\n- [Typesense API + MCP vs Vespa](https://www.anchorterminal.com/compare/typesense-vs-vespa.md)\n- [Upstash Vector API + MCP vs Vespa](https://www.anchorterminal.com/compare/upstash-vector-vs-vespa.md)\n- [Vespa vs Weaviate API + MCP](https://www.anchorterminal.com/compare/vespa-vs-weaviate.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-09",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Elasticsearch vs Vespa",
        "url": ""
      }
    ],
    "description": "Vespa scores 70 (BB) on agent readiness against Elasticsearch's 67.7 (B), and leads in 6 of 7 scored categories. Elasticsearch leads on schema \u0026 documentation. Both do db vector. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Elasticsearch B 67.7",
      "Vespa BB 70",
      "scores"
    ],
    "h1": "Elasticsearch vs Vespa",
    "image": "https://www.anchorterminal.com/assets/og/compare-elasticsearch-vs-vespa.png",
    "path": "/compare/elasticsearch-vs-vespa",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Elasticsearch vs Vespa for AI agents, B 67.7 vs BB 70",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/compare/elasticsearch-vs-vespa"
  },
  "tokens": {
    "markdown": 2350,
    "slim": 680
  },
  "version": 1
}
