get-faceting
Retrieve faceting settings for a Meilisearch index to configure search result categorization and filtering options.
Instructions
Get the faceting setting
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| indexUid | Yes | Unique identifier of the index |
Implementation Reference
- src/tools/settings-tools.ts:155-164 (handler)Handler function that executes the get-faceting tool logic: fetches faceting settings from Meilisearch API endpoint `/indexes/${indexUid}/settings/faceting` (where endpoint="faceting" from config).
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/tools/settings-tools.ts:152-154 (schema)Input schema definition for get-faceting tool using Zod: requires indexUid as string.
{ indexUid: z.string().describe("Unique identifier of the index"), }, - src/tools/settings-tools.ts:135-139 (registration)Configuration object defining the get-faceting tool's name, endpoint ('faceting'), and description; used in forEach loop to register the tool.
{ name: "get-faceting", endpoint: "faceting", description: "Get the faceting setting", }, - src/tools/settings-tools.ts:147-166 (registration)Registration loop that dynamically creates and registers the get-faceting tool (and others) using server.tool() with shared schema and handler templated on endpoint.
// 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 registerSettingsTools(server) in main server setup, which includes registration of get-faceting.
registerSettingsTools(server);