Skip to content

How Meilisearch’s scores are calculated

The full audit trail, recomputed from the verdict data at build time through the same code that produced the leaderboard: verdict × quality × story weight per cell, cells sum to dimension scores, dimensions blend into the PA Score. Every number on the product page is reproducible from this page alone; for why the formula looks like this, see the methodology.

verdict factors: full ×1.0 · partial ×0.6 · disputed ×0.3 · none ×0.0 · n/a excluded from both sides · cell points = weight × quality × factor · cell max = weight × 10

PA Score29/100

Agent-ready 57.3 × 0.30 = 17.19

API quality 3.4 × 0.20 = 0.68

Openness 34.2 × 0.20 = 6.84

Built-in AI 21.3 × 0.15 = 3.19

Automation 8.6 × 0.15 = 1.29

(17.19 + 0.68 + 6.84 + 3.19 + 1.29) ÷ (0.30 + 0.20 + 0.20 + 0.15 + 0.15) = 29.19 ÷ 1.00 = 29.2

Scores are stored to 1 decimal; the product page’s pills round to whole numbers for display. Each dimension below shows the stories, verdicts, and cited evidence behind its number.

Agent-ready57.3/100×0.30 of the PA blend

Outside-in: can YOUR agent reach and drive this product — API, MCP, CLI, headless runs, agent docs.

Point an agent at llms.txt or agent-oriented docsweight 2

2 (weight) × 9 (quality) × 1.0 (full) = 18.0 of 20 max

  • [probe] https://www.meilisearch.com/llms.txtPROBE llms.txt: HTTP 200 at https://www.meilisearch.com/llms.txt # Meilisearch — Official Information (llms.txt) This file is maintained by **Meilisearch** to help AI assistants, searc
  • [probe] https://www.meilisearch.com/docs/getting_started/overview.mdPROBE docs-md: HTTP 200 at https://www.meilisearch.com/docs/getting_started/overview.md > ## Documentation Index > Fetch the complete documentation index at: https://www.meilisearch.com/docs/llms.txt > Use th

Run the product headlessly / in CI for automationweight 2

2 (weight) × 6 (quality) × 0.6 (partial) = 7.2 of 20 max

  • [claimed-docs] https://www.meilisearch.com/docs/resources/self_hosting/overview.mdMeilisearch is a single binary with no external dependencies. You can run it on any Linux, macOS, or Windows machine, on bare metal or in containers.
  • [claimed-docs] https://www.meilisearch.com/docs/resources/self_hosting/getting_started/install_locally.mdDownload the latest stable release of Meilisearch with cURL. Launch Meilisearch to start the server.
  • [claimed-docs] https://www.meilisearch.com/docs/resources/self_hosting/getting_started/install_locally.mdcurl -L https://install.meilisearch.com | sh
  • [claimed-docs] https://www.meilisearch.com/docs/resources/self_hosting/getting_started/install_locally.mdInstall Meilisearch locally on Linux, macOS, or Windows using cURL, Docker, Homebrew, APT, or from source.
  • [claimed-docs] https://www.meilisearch.com/integrations/dockerOfficial Meilisearch Docker images for easy deployment and development.
  • [claimed-docs] https://www.meilisearch.com/docs/resources/self_hosting/overview.mdFor production deployments, you will also need: A reverse proxy (Nginx or Caddy) for HTTPS termination A process manager (systemd)... A master key for authentication

Plug MCP servers into this product so it can use their toolsweight 3

n/a — not applicable to this product: excluded from numerator and denominator

  • [claimed-docs] https://www.meilisearch.com/docs/getting_started/integrations/mcp.mdOnce configured, you can create indexes, add documents, configure settings, and perform searches using natural language prompts.
  • [claimed-docs] https://www.meilisearch.com/integrations/mcpIndex documents, tune ranking rules, and search Meilisearch through natural conversation in the AI client you already use.
  • [probe] https://www.meilisearch.com/docs/getting_started/integrations/mcpofficial MCP server documented at https://www.meilisearch.com/docs/getting_started/integrations/mcp

Connect an agent via an official MCP serverweight 3

3 (weight) × 8 (quality) × 1.0 (full) = 24.0 of 30 max

  • [claimed-docs] https://www.meilisearch.com/docs/getting_started/integrations/mcp.mdOnce configured, you can create indexes, add documents, configure settings, and perform searches using natural language prompts.
  • [claimed-docs] https://www.meilisearch.com/docs/getting_started/integrations/mcp.mdyou can create indexes, add documents, configure settings, and perform searches using natural language prompts
  • [claimed-docs] https://www.meilisearch.com/integrations/mcpUpdate ranking rules, searchable attributes, and faceting through natural-language prompts.
  • [claimed-docs] https://www.meilisearch.com/integrations/mcpIndex documents, tune ranking rules, and search Meilisearch through natural conversation in the AI client you already use.
  • [probe] https://www.meilisearch.com/docs/getting_started/integrations/mcpofficial MCP server documented at https://www.meilisearch.com/docs/getting_started/integrations/mcp

Use an official CLIweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [claimed-docs] https://www.meilisearch.com/docs/resources/self_hosting/overview.mdMeilisearch is a single binary with no external dependencies. You can run it on any Linux, macOS, or Windows machine, on bare metal or in containers.
  • [claimed-docs] https://www.meilisearch.com/docs/resources/self_hosting/getting_started/install_locally.mdDownload the latest stable release of Meilisearch with cURL. Launch Meilisearch to start the server.
  • [claimed-docs] https://www.meilisearch.com/docs/resources/self_hosting/getting_started/install_locally.mdInstall Meilisearch locally on Linux, macOS, or Windows using cURL, Docker, Homebrew, APT, or from source.
  • [claimed-docs] https://www.meilisearch.com/integrations/dockerOfficial Meilisearch Docker images for easy deployment and development.
  • [claimed-docs] https://www.meilisearch.com/docs/getting_started/integrations/mcp.mdOnce configured, you can create indexes, add documents, configure settings, and perform searches using natural language prompts.

Drive the product through a documented public APIweight 3

3 (weight) × 8 (quality) × 1.0 (full) = 24.0 of 30 max

  • [claimed-docs] https://www.meilisearch.com/docs/getting_started/first_project.mdcreating a project and an index, adding documents to it, and performing your first search with the default web interface
  • [claimed-docs] https://www.meilisearch.com/docs/resources/self_hosting/overview.mdMeilisearch is a single binary with no external dependencies. You can run it on any Linux, macOS, or Windows machine, on bare metal or in containers.
  • [claimed-docs] https://www.meilisearch.com/solutions/app-searchTyped SDKs for JavaScript, Python, Ruby, PHP, Go, Rust, Java, Swift, Dart, and .NET.
  • [claimed-docs] https://www.meilisearch.com/solutions/app-searchIntegrate powerful search into your mobile and web applications with our easy-to-use APIs and SDKs for every major language.
  • [claimed-docs] https://www.meilisearch.com/integrations/javascriptThe official JavaScript client for Meilisearch, with full TypeScript support for Node.js and browser environments.
  • [claimed-docs] https://www.meilisearch.com/integrations/pythonThe official Python client for Meilisearch with async support and type hints.
  • [probe] https://www.meilisearch.com/llms.txtPROBE llms.txt: HTTP 200 at https://www.meilisearch.com/llms.txt # Meilisearch — Official Information (llms.txt) This file is maintained by **Meilisearch** to help AI assistants, searc
  • [probe] https://www.meilisearch.com/docs/getting_started/overview.mdPROBE docs-md: HTTP 200 at https://www.meilisearch.com/docs/getting_started/overview.md > ## Documentation Index > Fetch the complete documentation index at: https://www.meilisearch.com/docs/llms.txt > Use th
  • [probe] https://www.meilisearch.com/openapi.jsonPROBE openapi: all candidate paths 404 (https://www.meilisearch.com/openapi.json, https://www.meilisearch.com/swagger.json, https://www.meilisearch.com/api/openapi.json, https://www.meilisearch.com/.well-known/openapi.json)

Issue scoped/least-privilege API credentials for an agentweight 2

2 (weight) × 7 (quality) × 1.0 (full) = 14.0 of 20 max

  • [claimed-docs] https://www.meilisearch.com/docs/capabilities/security/overview.mdTenant tokens are short-lived, scoped credentials generated from an API key. They embed search rules (filters) that automatically apply to every search request, ensuring users only see their own data.
  • [claimed-docs] https://www.meilisearch.com/docs/capabilities/security/overview.mdTenant tokens are short-lived, scoped credentials generated from an API key. They embed search rules (filters) that automatically apply to every search request
  • [claimed-docs] https://www.meilisearch.com/docs/capabilities/security/overview.mdtenant tokens serve a similar purpose to Algolia's secured API keys or PostgreSQL's row-level security (RLS)
  • [claimed-docs] https://www.meilisearch.com/docs/capabilities/security/overview.mdMeilisearch uses API keys and tenant tokens to control access to your data.
  • [claimed-docs] https://www.meilisearch.com/docs/capabilities/security/overview.mdAPI keys authenticate requests, while tenant tokens restrict what data each user can see within a shared index.
  • [claimed-docs] https://www.meilisearch.com/docs/getting_started/integrations/mcp.mdOnce configured, you can create indexes, add documents, configure settings, and perform searches using natural language prompts.

Build against official SDKsweight 2

2 (weight) × 8 (quality) × 1.0 (full) = 16.0 of 20 max

  • [claimed-docs] https://www.meilisearch.com/solutions/app-searchTyped SDKs for JavaScript, Python, Ruby, PHP, Go, Rust, Java, Swift, Dart, and .NET.
  • [claimed-docs] https://www.meilisearch.com/solutions/app-searchIntegrate powerful search into your mobile and web applications with our easy-to-use APIs and SDKs for every major language.
  • [claimed-docs] https://www.meilisearch.com/integrations/javascriptThe official JavaScript client for Meilisearch, with full TypeScript support for Node.js and browser environments.
  • [claimed-docs] https://www.meilisearch.com/integrations/pythonThe official Python client for Meilisearch with async support and type hints.
  • [claimed-docs] https://www.meilisearch.com/integrations/laravelFirst-party Meilisearch driver for Laravel Scout, the official Laravel search package.
  • [claimed-docs] https://www.meilisearch.com/integrations/dockerOfficial Meilisearch Docker images for easy deployment and development.
  • [community] https://news.ycombinator.com/item?id=34707727The other issue we faced is their Rails gems falling out of step with the server, and when fixes came out, the Rails gem was incompatible for a while.

Subscribe to events via webhooksweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

no evidence cited — the verdict rests on absence of evidence, re-checked on refresh

Agent-ready = 103.2 ÷ 180 × 100 = 57.3

API quality3.4/100×0.20 of the PA blend

The programmable surface once an agent is there — machine-readable spec, interactive docs, sandbox, versioning discipline.

Explore an interactive API reference with runnable examplesweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [probe] https://www.meilisearch.com/openapi.jsonPROBE openapi: all candidate paths 404 (https://www.meilisearch.com/openapi.json, https://www.meilisearch.com/swagger.json, https://www.meilisearch.com/api/openapi.json, https://www.meilisearch.com/.well-known/openapi.json)
  • [probe] https://www.meilisearch.com/docs/getting_started/overview.mdPROBE docs-md: HTTP 200 at https://www.meilisearch.com/docs/getting_started/overview.md > ## Documentation Index > Fetch the complete documentation index at: https://www.meilisearch.com/docs/llms.txt > Use th

Download a machine-readable API spec (OpenAPI or equivalent)weight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [probe] https://www.meilisearch.com/openapi.jsonPROBE openapi: all candidate paths 404 (https://www.meilisearch.com/openapi.json, https://www.meilisearch.com/swagger.json, https://www.meilisearch.com/api/openapi.json, https://www.meilisearch.com/.well-known/openapi.json)

Test against a sandbox environment without touching production dataweight 1

1 (weight) × 4 (quality) × 0.6 (partial) = 2.4 of 10 max

  • [claimed-docs] https://www.meilisearch.com/docs/resources/self_hosting/overview.mdMeilisearch is a single binary with no external dependencies. You can run it on any Linux, macOS, or Windows machine, on bare metal or in containers.
  • [claimed-docs] https://www.meilisearch.com/docs/resources/self_hosting/getting_started/install_locally.mdDownload the latest stable release of Meilisearch with cURL. Launch Meilisearch to start the server.
  • [claimed-docs] https://www.meilisearch.com/docs/resources/self_hosting/getting_started/install_locally.mdcurl -L https://install.meilisearch.com | sh
  • [claimed-docs] https://www.meilisearch.com/docs/resources/self_hosting/getting_started/install_locally.mdInstall Meilisearch locally on Linux, macOS, or Windows using cURL, Docker, Homebrew, APT, or from source.
  • [claimed-docs] https://www.meilisearch.com/pricing14-day free trial, no credit card required

Rely on versioned APIs with a documented deprecation policyweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

no evidence cited — the verdict rests on absence of evidence, re-checked on refresh

API quality = 2.4 ÷ 70 × 100 = 3.4

Openness34.2/100×0.20 of the PA blend

Can you leave, inspect, or self-host — data export, open source, portability.

Do everything through the API that I can do in the UIweight 2

2 (weight) × 6 (quality) × 0.6 (partial) = 7.2 of 20 max

  • [claimed-docs] https://www.meilisearch.com/docs/getting_started/first_project.mdcreating a project and an index, adding documents to it, and performing your first search with the default web interface
  • [claimed-docs] https://www.meilisearch.com/docs/resources/self_hosting/overview.mdMeilisearch is a single binary with no external dependencies. You can run it on any Linux, macOS, or Windows machine, on bare metal or in containers.
  • [claimed-docs] https://www.meilisearch.com/docs/getting_started/integrations/mcp.mdOnce configured, you can create indexes, add documents, configure settings, and perform searches using natural language prompts.
  • [claimed-docs] https://www.meilisearch.com/cloudGuarantees the Read High Availability of the service with native support for clusterization.
  • [probe] https://www.meilisearch.com/openapi.jsonPROBE openapi: all candidate paths 404 (https://www.meilisearch.com/openapi.json, https://www.meilisearch.com/swagger.json, https://www.meilisearch.com/api/openapi.json, https://www.meilisearch.com/.well-known/openapi.json)

Export all of my data in open formats and leaveweight 3

3 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 30 max

  • [claimed-docs] https://www.meilisearch.com/docs/resources/self_hosting/overview.mdMeilisearch is a single binary with no external dependencies. You can run it on any Linux, macOS, or Windows machine, on bare metal or in containers.
  • [claimed-docs] https://www.meilisearch.com/docs/resources/self_hosting/getting_started/install_locally.mdDownload the latest stable release of Meilisearch with cURL. Launch Meilisearch to start the server.
  • [claimed-docs] https://www.meilisearch.com/docs/resources/self_hosting/getting_started/install_locally.mdInstall Meilisearch locally on Linux, macOS, or Windows using cURL, Docker, Homebrew, APT, or from source.

Read the product's source under an open licenseweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

no evidence cited — the verdict rests on absence of evidence, re-checked on refresh

Self-host the core productweight 3

3 (weight) × 9 (quality) × 1.0 (full) = 27.0 of 30 max

  • [claimed-docs] https://www.meilisearch.com/docs/resources/self_hosting/overview.mdMeilisearch is a single binary with no external dependencies. You can run it on any Linux, macOS, or Windows machine, on bare metal or in containers.
  • [claimed-docs] https://www.meilisearch.com/docs/resources/self_hosting/getting_started/install_locally.mdDownload the latest stable release of Meilisearch with cURL. Launch Meilisearch to start the server.
  • [claimed-docs] https://www.meilisearch.com/docs/resources/self_hosting/getting_started/install_locally.mdcurl -L https://install.meilisearch.com | sh
  • [claimed-docs] https://www.meilisearch.com/docs/resources/self_hosting/overview.mdFor production deployments, you will also need: A reverse proxy (Nginx or Caddy) for HTTPS termination A process manager (systemd)... A master key for authentication
  • [claimed-docs] https://www.meilisearch.com/docs/resources/self_hosting/getting_started/install_locally.mdInstall Meilisearch locally on Linux, macOS, or Windows using cURL, Docker, Homebrew, APT, or from source.
  • [claimed-docs] https://www.meilisearch.com/integrations/kubernetesHelm charts for deploying Meilisearch on Kubernetes.
  • [claimed-docs] https://www.meilisearch.com/integrations/dockerOfficial Meilisearch Docker images for easy deployment and development.
  • [community] https://hn.algolia.com/api/v1/items/43680699Running Meilisearch on a Hetzner AX52 (64GB RAM) with ~80,000,000 documents across 13 indexes; searches are fast and it's 'bored' at idle load. Had early hiccups with high CPU during heavy indexing before batch indexing was introduced, which the team helped fix via Discord; now smooth sailing. Would recommend Meilisearch.
  • [community] https://hn.algolia.com/api/v1/items/43680699I installed coolify on a VM and it had a one-click Meilisearch docker install. I sent 1,000,000 records to it and it 'just worked' on a little $8/mo Hetzner instance.
  • [community] https://hn.algolia.com/api/v1/items/43680699I recently stood up the server in our k8s cluster and that part was also pretty easy, at least compared to elastic.

Openness = 34.2 ÷ 100 × 100 = 34.2

Built-in AI21.3/100×0.15 of the PA blend

Inside-out: how agentic the product itself is for its users — built-in assistants, autonomous features.

Get AI-generated insights and suggestions from my data inside the productweight 2

2 (weight) × 4 (quality) × 0.6 (partial) = 4.8 of 20 max

  • [claimed-docs] https://www.meilisearch.com/products/conversational-searchLet users ask questions and get real answers, grounded in your own content. No hallucinations, no guessing.
  • [claimed-docs] https://www.meilisearch.com/products/ragThe retrieval layer your AI applications need. Give your models accurate, current context from your own data.
  • [claimed-docs] https://www.meilisearch.com/products/personalizationThree users search for "laptop". Each sees results ranked by their unique preferences, no extra configuration needed.
  • [claimed-docs] https://www.meilisearch.com/products/personalizationTailor every search to every user. Surface what is most relevant to each person based on their preferences and behavior.
  • [claimed-docs] https://www.meilisearch.com/docs/getting_started/integrations/mcp.mdOnce configured, you can create indexes, add documents, configure settings, and perform searches using natural language prompts.

Set up automations that run autonomously in the backgroundweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [claimed-docs] https://www.meilisearch.com/docs/getting_started/integrations/mcp.mdOnce configured, you can create indexes, add documents, configure settings, and perform searches using natural language prompts.
  • [claimed-docs] https://www.meilisearch.com/integrations/mcpIndex documents, tune ranking rules, and search Meilisearch through natural conversation in the AI client you already use.
  • [probe] https://www.meilisearch.com/docs/getting_started/integrations/mcpofficial MCP server documented at https://www.meilisearch.com/docs/getting_started/integrations/mcp

Delegate tasks to a built-in AI assistant inside the productweight 3

3 (weight) × 4 (quality) × 0.6 (partial) = 7.2 of 30 max

  • [claimed-docs] https://www.meilisearch.com/docs/getting_started/integrations/mcp.mdOnce configured, you can create indexes, add documents, configure settings, and perform searches using natural language prompts.
  • [claimed-docs] https://www.meilisearch.com/docs/getting_started/integrations/mcp.mdyou can create indexes, add documents, configure settings, and perform searches using natural language prompts
  • [claimed-docs] https://www.meilisearch.com/integrations/mcpUpdate ranking rules, searchable attributes, and faceting through natural-language prompts.
  • [claimed-docs] https://www.meilisearch.com/integrations/mcpIndex documents, tune ranking rules, and search Meilisearch through natural conversation in the AI client you already use.
  • [probe] https://www.meilisearch.com/docs/getting_started/integrations/mcpofficial MCP server documented at https://www.meilisearch.com/docs/getting_started/integrations/mcp

Operate the product with natural-language commandsweight 2

2 (weight) × 6 (quality) × 0.6 (partial) = 7.2 of 20 max

  • [claimed-docs] https://www.meilisearch.com/docs/getting_started/integrations/mcp.mdOnce configured, you can create indexes, add documents, configure settings, and perform searches using natural language prompts.
  • [claimed-docs] https://www.meilisearch.com/docs/getting_started/integrations/mcp.mdyou can create indexes, add documents, configure settings, and perform searches using natural language prompts
  • [claimed-docs] https://www.meilisearch.com/integrations/mcpUpdate ranking rules, searchable attributes, and faceting through natural-language prompts.
  • [claimed-docs] https://www.meilisearch.com/integrations/mcpIndex documents, tune ranking rules, and search Meilisearch through natural conversation in the AI client you already use.
  • [probe] https://www.meilisearch.com/docs/getting_started/integrations/mcpofficial MCP server documented at https://www.meilisearch.com/docs/getting_started/integrations/mcp

Built-in AI = 19.2 ÷ 90 × 100 = 21.3

Automation8.6/100×0.15 of the PA blend

Depth of automation primitives — rules, scheduling, bulk operations, webhooks.

Perform bulk operations across many items at onceweight 2

2 (weight) × 5 (quality) × 0.6 (partial) = 6.0 of 20 max

  • [claimed-docs] https://www.meilisearch.com/docs/getting_started/first_project.mdcreating a project and an index, adding documents to it, and performing your first search with the default web interface
  • [claimed-docs] https://www.meilisearch.com/docs/getting_started/integrations/mcp.mdOnce configured, you can create indexes, add documents, configure settings, and perform searches using natural language prompts.
  • [community] https://hn.algolia.com/api/v1/items/43680699Running Meilisearch on a Hetzner AX52 (64GB RAM) with ~80,000,000 documents across 13 indexes; searches are fast and it's 'bored' at idle load. Had early hiccups with high CPU during heavy indexing before batch indexing was introduced, which the team helped fix via Discord; now smooth sailing. Would recommend Meilisearch.
  • [community] https://hn.algolia.com/api/v1/items/43680699We needed a 16GB machine to import all the data into Meilisearch, as batch indexing is quite memory intensive, but once it's all indexed we scaled it back to half that RAM and it works great - very performant.
  • [community] https://hn.algolia.com/api/v1/items/43680699I installed coolify on a VM and it had a one-click Meilisearch docker install. I sent 1,000,000 records to it and it 'just worked' on a little $8/mo Hetzner instance.
  • [community] https://news.ycombinator.com/item?id=34707727My team tried to use Meilisearch for large datasets; it's impossible to plan RAM usage. With little search traffic it used little RAM, but with heavy search traffic it consumed more than we could provision, making it unpredictable and expensive. We switched to Manticore instead.
  • [community] https://news.ycombinator.com/item?id=34707727We've used Meilisearch in production and it is the closest thing to self hosted Algolia you can get. Unfortunately indexing performance for constantly changing records wasn't great and Meilisearch would fall behind on indexing for hours; we had to transition to Elastic for our fast-paced ecommerce system.

Define rules that trigger actions automatically on eventsweight 3

3 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 30 max

  • [claimed-docs] https://www.meilisearch.com/pricingDynamic Search Rules ... Boost, pin, or bury results based on the context of each request
  • [claimed-docs] https://www.meilisearch.com/pricingPersonalization Adapt search results for each user based on their preferences and behavior ... Dynamic Search Rules Boost, pin, or bury results based on the context of each request
  • [claimed-docs] https://www.meilisearch.com/docs/capabilities/full_text_search/relevancy/ranking_rules.mdMeilisearch contains seven built-in ranking rules in the following order: ["words", "typo", "proximity", "attributeRank", "sort", "wordPosition", "exactness"]

Schedule recurring jobs or workflowsweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

no evidence cited — the verdict rests on absence of evidence, re-checked on refresh

Version, review, and roll back my automationsweight 1

n/a — not applicable to this product: excluded from numerator and denominator

no evidence cited — the verdict rests on absence of evidence, re-checked on refresh

Automation = 6.0 ÷ 70 × 100 = 8.6