data
Meilisearch MCP, CLI, and Lua Integration for AI Agents
Meilisearch integration docs for AI agents: MCP gateway setup, Meilisearch CLI commands, Lua API reference, credentials, and function schemas.Meilisearch for agents
Credentials can be configured manually in web or CLI hosts.
Use this integration from Lua code mode, the headless integrations CLI, or the KosmoKrator MCP gateway. The same package metadata powers all three surfaces.
Agent Surfaces
Machine-Readable Metadata
Function Catalog
| Function | Type | Parameters | Description |
|---|---|---|---|
meilisearch.meilisearch_add_documents | Write write | 0 | Add a list of documents or replace them if they already exist. If you send an already existing document (same id) the whole existing document will be overwritten by the new document. Fields previously in the document not present in the new document are removed. If the provided index does not exist, it will be created. For a partial update of the document see [add or update documents route](/reference/api/documents/add-or-update-documents). > Use the reserved `_geo` object to add geo coordinates to a document. > `_geo` is an object made of `lat` and `lng` field. |
meilisearch.meilisearch_cancel_logs | Write write | 0 | Call this route to make the engine stop sending logs to the client that opened the `POST /logs/stream` connection. |
meilisearch.meilisearch_cancel_tasks | Write write | 0 | Cancel enqueued and/or processing [tasks](https://www.meilisearch.com/docs/learn/async/asynchronous_operations). You must provide at least one filter (e.g. `uids`, `indexUids`, `statuses`) to specify which tasks to cancel. |
meilisearch.meilisearch_chat | Write write | 0 | Request a chat completion |
meilisearch.meilisearch_clear_all_documents | Write write | 0 | Permanently delete all documents in the specified index. Settings and index metadata are preserved. |
meilisearch.meilisearch_compact | Write write | 0 | Trigger a compaction process on the specified index. Compaction reorganizes the index database to reclaim space and improve read performance. |
meilisearch.meilisearch_compact_task_queue | Write write | 0 | Trigger a compaction process on the task queue database and return its size before and after compaction. A successful compaction requires restarting the instance before it can safely resume normal writes. |
meilisearch.meilisearch_create_api_key | Write write | 0 | Create a new API key with the specified name, description, actions, and index scopes. The key value is returned only once at creation time; store it securely. |
meilisearch.meilisearch_create_dump | Write write | 0 | Trigger a dump creation process. When complete, a dump file is written to the [dump directory](https://www.meilisearch.com/docs/learn/self_hosted/configure_meilisearch_at_launch#dump-directory). The directory is created if it does not exist. |
meilisearch.meilisearch_create_index | Write write | 0 | Create a new index with an optional [primary key](https://www.meilisearch.com/docs/learn/getting_started/primary_key). If no primary key is provided, Meilisearch will [infer one](https://www.meilisearch.com/docs/learn/getting_started/primary_key#meilisearch-guesses-your-primary-key) from the first batch of documents. |
meilisearch.meilisearch_create_snapshot | Write write | 0 | Trigger a snapshot creation process. When complete, a snapshot file is written to the snapshot directory. The directory is created if it does not exist. |
meilisearch.meilisearch_delete_all | Write write | 0 | Resets all settings of the index to their default values. |
meilisearch.meilisearch_delete_api_key | Write write | 0 | Permanently delete the specified API key. The key will no longer be valid for authentication. |
meilisearch.meilisearch_delete_chat | Write write | 0 | Delete a chat workspace |
meilisearch.meilisearch_delete_document | Write write | 0 | Delete a single document by its [primary key](https://www.meilisearch.com/docs/learn/getting_started/primary_key). |
meilisearch.meilisearch_delete_documents_batch | Write write | 0 | Delete multiple documents in one request by providing an array of [primary key](https://www.meilisearch.com/docs/learn/getting_started/primary_key) values. |
meilisearch.meilisearch_delete_documents_by_filter | Write write | 0 | Delete all documents in the index that match the given filter expression. |
meilisearch.meilisearch_delete_index | Write write | 0 | Permanently delete an index and all its documents, settings, and task history. |
meilisearch.meilisearch_delete_rule | Write write | 0 | Delete a search rule by its unique identifier. |
meilisearch.meilisearch_delete_tasks | Write write | 0 | Permanently delete [tasks](https://docs.meilisearch.com/learn/advanced/asynchronous_operations.html) matching the given filters. You must provide at least one filter (e.g. `uids`, `indexUids`, `statuses`) to specify which tasks to delete. |
meilisearch.meilisearch_delete_webhook | Write write | 0 | Permanently remove a webhook by its UUID. The webhook will no longer receive task notifications. |
meilisearch.meilisearch_deletechat | Write write | 0 | Resets the `chat` setting to its default value. |
meilisearch.meilisearch_deletedictionary | Write write | 0 | Resets the `dictionary` setting to its default value. |
meilisearch.meilisearch_deletedisplayed_attributes | Write write | 0 | Resets the `displayedAttributes` setting to its default value. |
meilisearch.meilisearch_deletedistinct_attribute | Write write | 0 | Resets the `distinctAttribute` setting to its default value. |
meilisearch.meilisearch_deleteembedders | Write write | 0 | Resets the `embedders` setting to its default value. |
meilisearch.meilisearch_deletefacet_search | Write write | 0 | Resets the `facetSearch` setting to its default value. |
meilisearch.meilisearch_deletefaceting | Write write | 0 | Resets the `faceting` setting to its default value. |
meilisearch.meilisearch_deletefilterable_attributes | Write write | 0 | Resets the `filterableAttributes` setting to its default value. |
meilisearch.meilisearch_deleteforeign_keys | Write write | 0 | Resets the `foreignKeys` setting to its default value. |
meilisearch.meilisearch_deletelocalized_attributes | Write write | 0 | Resets the `localizedAttributes` setting to its default value. |
meilisearch.meilisearch_deletenon_separator_tokens | Write write | 0 | Resets the `nonSeparatorTokens` setting to its default value. |
meilisearch.meilisearch_deletepagination | Write write | 0 | Resets the `pagination` setting to its default value. |
meilisearch.meilisearch_deleteprefix_search | Write write | 0 | Resets the `prefixSearch` setting to its default value. |
meilisearch.meilisearch_deleteproximity_precision | Write write | 0 | Resets the `proximityPrecision` setting to its default value. |
meilisearch.meilisearch_deleteranking_rules | Write write | 0 | Resets the `rankingRules` setting to its default value. |
meilisearch.meilisearch_deletesearch_cutoff_ms | Write write | 0 | Resets the `searchCutoffMs` setting to its default value. |
meilisearch.meilisearch_deletesearchable_attributes | Write write | 0 | Resets the `searchableAttributes` setting to its default value. |
meilisearch.meilisearch_deleteseparator_tokens | Write write | 0 | Resets the `separatorTokens` setting to its default value. |
meilisearch.meilisearch_deletesortable_attributes | Write write | 0 | Resets the `sortableAttributes` setting to its default value. |
meilisearch.meilisearch_deletestop_words | Write write | 0 | Resets the `stopWords` setting to its default value. |
meilisearch.meilisearch_deletesynonyms | Write write | 0 | Resets the `synonyms` setting to its default value. |
meilisearch.meilisearch_deletetypo_tolerance | Write write | 0 | Resets the `typoTolerance` setting to its default value. |
meilisearch.meilisearch_documents_by_query_post | Write write | 0 | Retrieve a set of documents with optional filtering, sorting, and pagination. Use the request body to specify filters, sort order, and which fields to return. |
meilisearch.meilisearch_edit_documents_by_function | Write write | 0 | Use a [RHAI function](https://rhai.rs/book/engine/hello-world.html) to edit one or more documents directly in Meilisearch. The function receives each document and returns the modified document. This feature is experimental and must be enabled through the experimental route. |
meilisearch.meilisearch_export | Write write | 0 | Trigger an export that sends documents and settings from this instance to a remote Meilisearch server. Configure the remote URL and optional API key in the request body. |
meilisearch.meilisearch_get_all | Read read | 0 | Returns all settings of the index. Each setting is returned with its current value or the default if not set. |
meilisearch.meilisearch_get_api_key | Read read | 0 | Retrieve a single API key by its `uid` or by its `key` value. |
meilisearch.meilisearch_get_batch | Read read | 0 | Meilisearch groups compatible tasks ([asynchronous operations](https://www.meilisearch.com/docs/learn/async/asynchronous_operations)) into batches for efficient processing. For example, multiple document additions to the same index may be batched together. Retrieve a single batch by its unique identifier to monitor its progress and performance. |
meilisearch.meilisearch_get_batches | Read read | 0 | Meilisearch groups compatible tasks ([asynchronous operations](https://www.meilisearch.com/docs/learn/async/asynchronous_operations)) into batches for efficient processing. For example, multiple document additions to the same index may be batched together. List batches to monitor their progress and performance. Batches are always returned in descending order of uid. This means that by default, the most recently created batch objects appear first. Batch results are paginated and can be filtered with query parameters. |
meilisearch.meilisearch_get_chat | Read read | 0 | Get a chat workspace |
meilisearch.meilisearch_get_document | Read read | 0 | Retrieve a single document by its [primary key](https://www.meilisearch.com/docs/learn/getting_started/primary_key) value. |
meilisearch.meilisearch_get_documents | Read read | 0 | Retrieve documents in batches using query parameters for offset, limit, and optional filtering. Suited for browsing or exporting index contents. |
meilisearch.meilisearch_get_features | Read read | 0 | Return all experimental features that can be toggled via this API, and whether each one is currently enabled or disabled. |
meilisearch.meilisearch_get_health | Read read | 0 | The health check endpoint enables you to periodically test the health of your Meilisearch instance. Returns a simple status indicating that the server is available. |
meilisearch.meilisearch_get_index | Read read | 0 | Retrieve the metadata of a single index: its uid, [primary key](https://www.meilisearch.com/docs/learn/getting_started/primary_key), and creation/update timestamps. |
meilisearch.meilisearch_get_index_stats | Read read | 0 | Return statistics for a single index: document count, database size, indexing status, and field distribution. |
meilisearch.meilisearch_get_logs | Write write | 0 | Stream logs over HTTP. The format of the logs depends on the configuration specified in the payload. The logs are sent as multi-part, and the stream never stops, so ensure your client can handle a long-lived connection. To stop receiving logs, call the `DELETE /logs/stream` route. Only one client can listen at a time. An error is returned if you call this route while it is already in use by another client. |
meilisearch.meilisearch_get_metrics | Read read | 0 | Return metrics for the engine in Prometheus format. This is an [experimental feature](https://www.meilisearch.com/docs/learn/experimental/overview) and must be enabled before use. |
meilisearch.meilisearch_get_network | Read read | 0 | Return the list of Meilisearch instances currently known to this node (self and remotes). |
meilisearch.meilisearch_get_rule | Read read | 0 | Retrieve a single search rule by its unique identifier. |
meilisearch.meilisearch_get_settings | Read read | 0 | Get settings of a chat workspace |
meilisearch.meilisearch_get_stats | Read read | 0 | Return statistics for the Meilisearch instance and for each index. Includes database size, last update time, document counts, and indexing status per index. |
meilisearch.meilisearch_get_task | Read read | 0 | Retrieve a single [task](https://www.meilisearch.com/docs/learn/async/asynchronous_operations) by its uid. |
meilisearch.meilisearch_get_task_documents_file | Read read | 0 | Retrieve the document payload that was sent with this [task](https://www.meilisearch.com/docs/learn/async/asynchronous_operations). Only available for document-related tasks that are enqueued or processing. |
meilisearch.meilisearch_get_tasks | Read read | 0 | The `/tasks` route returns information about [asynchronous operations](https://docs.meilisearch.com/learn/advanced/asynchronous_operations.html) (indexing, document updates, settings changes, and so on). Tasks are returned in descending order of uid by default, so the most recently created or updated tasks appear first. Results are paginated and can be filtered using query parameters such as `indexUids`, `statuses`, `types`, and date ranges. |
meilisearch.meilisearch_get_version | Read read | 0 | Return the current Meilisearch version, including the commit SHA and build date. |
meilisearch.meilisearch_get_webhook | Read read | 0 | Retrieve a single webhook by its UUID. |
meilisearch.meilisearch_get_webhooks | Read read | 0 | Return all webhooks registered on the instance. Each webhook is returned with its URL, optional headers, and UUID (the key value is never returned). |
meilisearch.meilisearch_getchat | Read read | 0 | Returns the current value of the `chat` setting for the index. |
meilisearch.meilisearch_getdictionary | Read read | 0 | Returns the current value of the `dictionary` setting for the index. |
meilisearch.meilisearch_getdisplayed_attributes | Read read | 0 | Returns the current value of the `displayedAttributes` setting for the index. |
meilisearch.meilisearch_getdistinct_attribute | Read read | 0 | Returns the current value of the `distinctAttribute` setting for the index. |
meilisearch.meilisearch_getembedders | Read read | 0 | Returns the current value of the `embedders` setting for the index. |
meilisearch.meilisearch_getfacet_search | Read read | 0 | Returns the current value of the `facetSearch` setting for the index. |
meilisearch.meilisearch_getfaceting | Read read | 0 | Returns the current value of the `faceting` setting for the index. |
meilisearch.meilisearch_getfilterable_attributes | Read read | 0 | Returns the current value of the `filterableAttributes` setting for the index. |
meilisearch.meilisearch_getforeign_keys | Read read | 0 | Returns the current value of the `foreignKeys` setting for the index. |
meilisearch.meilisearch_getlocalized_attributes | Read read | 0 | Returns the current value of the `localizedAttributes` setting for the index. |
meilisearch.meilisearch_getnon_separator_tokens | Read read | 0 | Returns the current value of the `nonSeparatorTokens` setting for the index. |
meilisearch.meilisearch_getpagination | Read read | 0 | Returns the current value of the `pagination` setting for the index. |
meilisearch.meilisearch_getprefix_search | Read read | 0 | Returns the current value of the `prefixSearch` setting for the index. |
meilisearch.meilisearch_getproximity_precision | Read read | 0 | Returns the current value of the `proximityPrecision` setting for the index. |
meilisearch.meilisearch_getranking_rules | Read read | 0 | Returns the current value of the `rankingRules` setting for the index. |
meilisearch.meilisearch_getsearch_cutoff_ms | Read read | 0 | Returns the current value of the `searchCutoffMs` setting for the index. |
meilisearch.meilisearch_getsearchable_attributes | Read read | 0 | Returns the current value of the `searchableAttributes` setting for the index. |
meilisearch.meilisearch_getseparator_tokens | Read read | 0 | Returns the current value of the `separatorTokens` setting for the index. |
meilisearch.meilisearch_getsortable_attributes | Read read | 0 | Returns the current value of the `sortableAttributes` setting for the index. |
meilisearch.meilisearch_getstop_words | Read read | 0 | Returns the current value of the `stopWords` setting for the index. |
meilisearch.meilisearch_getsynonyms | Read read | 0 | Returns the current value of the `synonyms` setting for the index. |
meilisearch.meilisearch_gettypo_tolerance | Read read | 0 | Returns the current value of the `typoTolerance` setting for the index. |
meilisearch.meilisearch_list_api_keys | Read read | 0 | Return all API keys configured on the instance. Results are paginated and can be filtered by offset and limit. The key value itself is never returned after creation. |
meilisearch.meilisearch_list_indexes | Read read | 0 | Returns a paginated list of indexes. Use the `offset` and `limit` query parameters to page through results. |
meilisearch.meilisearch_list_rules | Write write | 0 | Return all search rules configured on the instance. |
meilisearch.meilisearch_list_workspaces | Read read | 0 | List chat workspaces |
meilisearch.meilisearch_multi_search_with_post | Write write | 0 | Run multiple search queries in a single API request. Each query can target a different index, so you can search across several indexes at once and get one combined response. |
meilisearch.meilisearch_patch_api_key | Write write | 0 | Update the name and description of an API key. Updates are partial: only the fields you send are changed, and any fields not present in the payload remain unchanged. |
meilisearch.meilisearch_patch_features | Write write | 0 | Enable or disable experimental features at runtime. |
meilisearch.meilisearch_patch_network | Write write | 0 | Add or remove remote nodes from the network. Changes apply to the current instance's view of the cluster. |
meilisearch.meilisearch_patch_settings | Write write | 0 | Update settings of a chat workspace |
meilisearch.meilisearch_patch_webhook | Write write | 0 | Update the URL or headers of an existing webhook identified by its UUID. |
meilisearch.meilisearch_patchchat | Write write | 0 | Updates the `chat` setting for the index. Send the new value in the request body; send null to reset to default. |
meilisearch.meilisearch_patchembedders | Write write | 0 | Updates the `embedders` setting for the index. Send the new value in the request body; send null to reset to default. |
meilisearch.meilisearch_patchfaceting | Write write | 0 | Updates the `faceting` setting for the index. Send the new value in the request body; send null to reset to default. |
meilisearch.meilisearch_patchpagination | Write write | 0 | Updates the `pagination` setting for the index. Send the new value in the request body; send null to reset to default. |
meilisearch.meilisearch_patchtypo_tolerance | Write write | 0 | Updates the `typoTolerance` setting for the index. Send the new value in the request body; send null to reset to default. |
meilisearch.meilisearch_post_index_fields | Write write | 0 | Returns a paginated list of fields in the index with their metadata: whether they are displayed, searchable, sortable, filterable, distinct, have a custom ranking rule (asc/desc), and for filterable fields the sort order for facet values. |
meilisearch.meilisearch_post_network_change | Write write | 0 | Send messages to control the progress of a network topology change task. The route is mostly used internally when sending a PATCH to the network, but is accessible for manual control as well. |
meilisearch.meilisearch_post_webhook | Write write | 0 | Register a new webhook to receive task completion notifications. You can optionally set custom headers (e.g. for authentication) and configure the callback URL. |
meilisearch.meilisearch_putdictionary | Write write | 0 | Updates the `dictionary` setting for the index. Send the new value in the request body; send null to reset to default. |
meilisearch.meilisearch_putdisplayed_attributes | Write write | 0 | Updates the `displayedAttributes` setting for the index. Send the new value in the request body; send null to reset to default. |
meilisearch.meilisearch_putdistinct_attribute | Write write | 0 | Updates the `distinctAttribute` setting for the index. Send the new value in the request body; send null to reset to default. |
meilisearch.meilisearch_putfacet_search | Write write | 0 | Updates the `facetSearch` setting for the index. Send the new value in the request body; send null to reset to default. |
meilisearch.meilisearch_putfilterable_attributes | Write write | 0 | Updates the `filterableAttributes` setting for the index. Send the new value in the request body; send null to reset to default. |
meilisearch.meilisearch_putforeign_keys | Write write | 0 | Updates the `foreignKeys` setting for the index. Send the new value in the request body; send null to reset to default. |
meilisearch.meilisearch_putlocalized_attributes | Write write | 0 | Updates the `localizedAttributes` setting for the index. Send the new value in the request body; send null to reset to default. |
meilisearch.meilisearch_putnon_separator_tokens | Write write | 0 | Updates the `nonSeparatorTokens` setting for the index. Send the new value in the request body; send null to reset to default. |
meilisearch.meilisearch_putprefix_search | Write write | 0 | Updates the `prefixSearch` setting for the index. Send the new value in the request body; send null to reset to default. |
meilisearch.meilisearch_putproximity_precision | Write write | 0 | Updates the `proximityPrecision` setting for the index. Send the new value in the request body; send null to reset to default. |
meilisearch.meilisearch_putranking_rules | Write write | 0 | Updates the `rankingRules` setting for the index. Send the new value in the request body; send null to reset to default. |
meilisearch.meilisearch_putsearch_cutoff_ms | Write write | 0 | Updates the `searchCutoffMs` setting for the index. Send the new value in the request body; send null to reset to default. |
meilisearch.meilisearch_putsearchable_attributes | Write write | 0 | Updates the `searchableAttributes` setting for the index. Send the new value in the request body; send null to reset to default. |
meilisearch.meilisearch_putseparator_tokens | Write write | 0 | Updates the `separatorTokens` setting for the index. Send the new value in the request body; send null to reset to default. |
meilisearch.meilisearch_putsortable_attributes | Write write | 0 | Updates the `sortableAttributes` setting for the index. Send the new value in the request body; send null to reset to default. |
meilisearch.meilisearch_putstop_words | Write write | 0 | Updates the `stopWords` setting for the index. Send the new value in the request body; send null to reset to default. |
meilisearch.meilisearch_putsynonyms | Write write | 0 | Updates the `synonyms` setting for the index. Send the new value in the request body; send null to reset to default. |
meilisearch.meilisearch_reset_settings | Write write | 0 | Reset the settings of a chat workspace |
meilisearch.meilisearch_search | Write write | 0 | Search for facet values within a given facet. > Use this to build autocomplete or refinement UIs for facet filters. |
meilisearch.meilisearch_search_documents | Write write | 0 | Search for documents matching a query in the given index. > Equivalent to the [search with GET route](/reference/api/search/search-with-get) in the Meilisearch API. |
meilisearch.meilisearch_search_with_url_query | Read read | 0 | Search for documents matching a query in the given index. > Equivalent to the [search with POST route](/reference/api/search/search-with-post) in the Meilisearch API. |
meilisearch.meilisearch_similar_get | Read read | 0 | Retrieve documents similar to a reference document identified by its id. > Useful for "more like this" or recommendations. |
meilisearch.meilisearch_similar_post | Write write | 0 | Retrieve documents similar to a reference document identified by its id. > Useful for "more like this" or recommendations. |
meilisearch.meilisearch_swap_indexes | Write write | 0 | Swap the documents, settings, and task history of two or more indexes. Indexes are swapped in pairs; a single request can include multiple pairs. The operation is atomic: either all swaps succeed or none do. In the task history, every mention of one index uid is replaced by the other and vice versa. Enqueued tasks are left unmodified. |
meilisearch.meilisearch_update_all | Write write | 0 | Updates one or more settings for the index. Only the fields sent in the body are changed. Pass null for a setting to reset it to its default. If the index does not exist, it is created. See also: [Configuring index settings on the Cloud](https://www.meilisearch.com/docs/learn/configuration/configuring_index_settings). |
meilisearch.meilisearch_update_documents | Write write | 0 | Add a list of documents or update them if they already exist. If you send an already existing document (same id) the old document will be only partially updated according to the fields of the new document. Thus, any fields not present in the new document are kept and remained unchanged. If the provided index does not exist, it will be created. To completely overwrite a document, see [add or replace documents route](/reference/api/documents/add-or-replace-documents). > Use the reserved `_geo` object to add geo coordinates to a document. > `_geo` is an object made of `lat` and `lng` field. |
meilisearch.meilisearch_update_index | Write write | 0 | Update the [primary key](https://www.meilisearch.com/docs/learn/getting_started/primary_key) or uid of an index. Returns an error if the index does not exist or if it already contains documents ([primary key](https://www.meilisearch.com/docs/learn/getting_started/primary_key) cannot be changed in that case). |
meilisearch.meilisearch_update_or_create_rule | Write write | 0 | Partially update a search rule by replacing the provided fields. If the rule doesn't exist, it will be created. |
meilisearch.meilisearch_update_stderr_target | Write write | 0 | Configure at runtime the level of the console logs written to stderr (e.g. debug, info, warn, error). |