Skip to main content
Glama
OrionPotter

Meilisearch MCP Server

by OrionPotter

get-distinct-attribute

Retrieve the distinct attribute setting for a Meilisearch index to identify which field values are returned as unique entries in search results.

Instructions

Get the distinct attribute setting

Input Schema

NameRequiredDescriptionDefault
indexUidYesUnique identifier of the index

Input Schema (JSON Schema)

{ "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "indexUid": { "description": "Unique identifier of the index", "type": "string" } }, "required": [ "indexUid" ], "type": "object" }

Implementation Reference

  • Handler function that implements the core logic for the 'get-distinct-attribute' tool. It makes an API call to retrieve the distinct-attribute setting from Meilisearch using the endpoint 'distinct-attribute'.
    async ({ indexUid }) => { try { const response = await apiClient.get(`/indexes/${indexUid}/settings/${endpoint}`); return { content: [{ type: "text", text: JSON.stringify(response.data, null, 2) }], }; } catch (error) { return createErrorResponse(error); } }
  • Input schema definition for the 'get-distinct-attribute' tool, specifying the required 'indexUid' parameter.
    { indexUid: z.string().describe("Unique identifier of the index"), },
  • Configuration object defining the name, endpoint, and description for the 'get-distinct-attribute' tool, used in the dynamic registration loop.
    { name: "get-distinct-attribute", endpoint: "distinct-attribute", description: "Get the distinct attribute setting", },
  • Dynamic registration loop that registers the 'get-distinct-attribute' tool (and similar tools) with the MCP server using server.tool().
    // Create a tool for each specific setting specificSettingsTools.forEach(({ name, endpoint, description }) => { server.tool( name, description, { indexUid: z.string().describe("Unique identifier of the index"), }, async ({ indexUid }) => { try { const response = await apiClient.get(`/indexes/${indexUid}/settings/${endpoint}`); return { content: [{ type: "text", text: JSON.stringify(response.data, null, 2) }], }; } catch (error) { return createErrorResponse(error); } } ); });
  • src/index.ts:67-67 (registration)
    Top-level call to register all settings tools, including 'get-distinct-attribute', on the MCP server instance.
    registerSettingsTools(server);

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/OrionPotter/iflow-mcp_meilisearch-ts-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server