mcp-meilisearch 1.0.2 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,27 @@
1
+ export declare class MCPClient {
2
+ tools: {
3
+ name: string;
4
+ description: string;
5
+ }[];
6
+ private client;
7
+ private tries;
8
+ private transport;
9
+ private onToolsUpdatedCallback;
10
+ constructor(serverName: string);
11
+ setOnToolsUpdatedCallback(callback: (tools: Array<{
12
+ name: string;
13
+ description: string;
14
+ }>) => void): void;
15
+ connectToServer(serverUrl: string): Promise<void>;
16
+ listTools(): Promise<void>;
17
+ private setUpNotifications;
18
+ callTool(name: string, args?: Record<string, any>): Promise<{
19
+ success: boolean;
20
+ data?: any;
21
+ error?: string;
22
+ }>;
23
+ private setUpTransport;
24
+ cleanup(): Promise<void>;
25
+ close(): Promise<void>;
26
+ }
27
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAQA,qBAAa,SAAS;IACpB,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,EAAE,CAAM;IAEpD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,KAAK,CAAa;IAC1B,OAAO,CAAC,SAAS,CAA8C;IAC/D,OAAO,CAAC,sBAAsB,CAEd;gBAEJ,UAAU,EAAE,MAAM;IAOvB,yBAAyB,CAC9B,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,KAAK,IAAI;IAKnE,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBjD,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAsChC,OAAO,CAAC,kBAAkB;IAkBpB,QAAQ,CACZ,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACzB,OAAO,CAAC;QACT,OAAO,EAAE,OAAO,CAAC;QACjB,IAAI,CAAC,EAAE,GAAG,CAAC;QACX,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IAuCF,OAAO,CAAC,cAAc;IAWhB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAUxB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7B"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Meilisearch MCP Server Configuration
3
+ *
4
+ * This file contains the configuration settings for connecting to the Meilisearch server.
5
+ * Configuration is loaded from environment variables with sensible defaults.
6
+ */
7
+ export interface ServerConfig {
8
+ /** The URL of the Meilisearch instance */
9
+ host: string;
10
+ /** The API key for authenticating with Meilisearch */
11
+ apiKey: string;
12
+ /** The timeout for API requests in milliseconds */
13
+ timeout: number;
14
+ }
15
+ /**
16
+ * Load and initialize configuration from environment variables
17
+ */
18
+ export declare const loadConfig: () => ServerConfig;
19
+ export declare const config: ServerConfig;
20
+ export default config;
21
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,MAAM,WAAW,YAAY;IAC3B,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,sDAAsD;IACtD,MAAM,EAAE,MAAM,CAAC;IACf,mDAAmD;IACnD,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,QAAO,YAM7B,CAAC;AAGF,eAAO,MAAM,MAAM,cAAe,CAAC;AAGnC,eAAe,MAAM,CAAC"}
package/dist/http.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=http.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":""}
@@ -0,0 +1,13 @@
1
+ export { MCPClient } from "./client.js";
2
+ export * from "./server.js";
3
+ export * from "./config.js";
4
+ export * from "./tools/document-tools.js";
5
+ export * from "./tools/index-tools.js";
6
+ export * from "./tools/search-tools.js";
7
+ export * from "./tools/settings-tools.js";
8
+ export * from "./tools/system-tools.js";
9
+ export * from "./tools/task-tools.js";
10
+ export * from "./tools/vector-tools.js";
11
+ export * from "./utils/api-handler.js";
12
+ export * from "./utils/error-handler.js";
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAG5B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AAGxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC"}
package/dist/index.js CHANGED
@@ -1,2 +1,14 @@
1
1
  export { MCPClient } from "./client.js";
2
- export { initServer } from "./server.js";
2
+ export * from "./server.js";
3
+ export * from "./config.js";
4
+ // Re-export tools
5
+ export * from "./tools/document-tools.js";
6
+ export * from "./tools/index-tools.js";
7
+ export * from "./tools/search-tools.js";
8
+ export * from "./tools/settings-tools.js";
9
+ export * from "./tools/system-tools.js";
10
+ export * from "./tools/task-tools.js";
11
+ export * from "./tools/vector-tools.js";
12
+ // Re-export utils
13
+ export * from "./utils/api-handler.js";
14
+ export * from "./utils/error-handler.js";
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Initialize the MCP server with the specified transport
3
+ * @param transport The transport type to use ("stdio" or "http")
4
+ * @throws Error if the transport type is unsupported
5
+ */
6
+ export declare const initServer: (transport: "stdio" | "http") => void;
7
+ //# sourceMappingURL=server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAieA;;;;GAIG;AACH,eAAO,MAAM,UAAU,GAAI,WAAW,OAAO,GAAG,MAAM,KAAG,IAcxD,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=stdio.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stdio.d.ts","sourceRoot":"","sources":["../src/stdio.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ /**
3
+ * Register document management tools with the MCP server
4
+ *
5
+ * @param server - The MCP server instance
6
+ */
7
+ export declare const registerDocumentTools: (server: McpServer) => void;
8
+ export default registerDocumentTools;
9
+ //# sourceMappingURL=document-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-tools.d.ts","sourceRoot":"","sources":["../../src/tools/document-tools.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAiDpE;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,GAAI,QAAQ,SAAS,SAkQtD,CAAC;AAEF,eAAe,qBAAqB,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ /**
3
+ * Register index management tools with the MCP server
4
+ *
5
+ * @param server - The MCP server instance
6
+ */
7
+ export declare const registerIndexTools: (server: McpServer) => void;
8
+ export default registerIndexTools;
9
+ //# sourceMappingURL=index-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-tools.d.ts","sourceRoot":"","sources":["../../src/tools/index-tools.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAoCpE;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAAI,QAAQ,SAAS,SA6KnD,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ /**
3
+ * Register search tools with the MCP server
4
+ *
5
+ * @param server - The MCP server instance
6
+ */
7
+ export declare const registerSearchTools: (server: McpServer) => void;
8
+ export default registerSearchTools;
9
+ //# sourceMappingURL=search-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-tools.d.ts","sourceRoot":"","sources":["../../src/tools/search-tools.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAkCpE;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,GAAI,QAAQ,SAAS,SA2QpD,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ /**
3
+ * Meilisearch Settings Management Tools
4
+ *
5
+ * This module implements MCP tools for managing index settings in Meilisearch.
6
+ */
7
+ /**
8
+ * Register settings management tools with the MCP server
9
+ *
10
+ * @param server - The MCP server instance
11
+ */
12
+ export declare const registerSettingsTools: (server: McpServer) => void;
13
+ export default registerSettingsTools;
14
+ //# sourceMappingURL=settings-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings-tools.d.ts","sourceRoot":"","sources":["../../src/tools/settings-tools.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE;;;;GAIG;AAEH;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,GAAI,QAAQ,SAAS,SA0VtD,CAAC;AAEF,eAAe,qBAAqB,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ /**
3
+ * Meilisearch System Tools
4
+ *
5
+ * This module implements MCP tools for system operations in Meilisearch.
6
+ */
7
+ /**
8
+ * Register system tools with the MCP server
9
+ *
10
+ * @param server - The MCP server instance
11
+ */
12
+ export declare const registerSystemTools: (server: McpServer) => void;
13
+ export default registerSystemTools;
14
+ //# sourceMappingURL=system-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system-tools.d.ts","sourceRoot":"","sources":["../../src/tools/system-tools.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE;;;;GAIG;AAEH;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,GAAI,QAAQ,SAAS,SAyOpD,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ /**
3
+ * Register task management tools with the MCP server
4
+ *
5
+ * @param server - The MCP server instance
6
+ */
7
+ export declare const registerTaskTools: (server: McpServer) => void;
8
+ export default registerTaskTools;
9
+ //# sourceMappingURL=task-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-tools.d.ts","sourceRoot":"","sources":["../../src/tools/task-tools.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAmCpE;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAAI,QAAQ,SAAS,SAyNlD,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
@@ -160,7 +160,7 @@ export const registerTaskTools = (server) => {
160
160
  const response = await apiClient.get(`/tasks/${taskUid}`);
161
161
  taskData = response.data;
162
162
  // Check if the task has completed
163
- if (["succeeded", "failed", "canceled"].includes(taskData.status)) {
163
+ if (["succeeded", "failed", "canceled"].includes(response.statusText)) {
164
164
  taskCompleted = true;
165
165
  }
166
166
  else {
@@ -0,0 +1,15 @@
1
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ /**
3
+ * Meilisearch Vector Search Tools
4
+ *
5
+ * This module implements MCP tools for vector search capabilities in Meilisearch.
6
+ * Note: Vector search is an experimental feature in Meilisearch.
7
+ */
8
+ /**
9
+ * Register vector search tools with the MCP server
10
+ *
11
+ * @param server - The MCP server instance
12
+ */
13
+ export declare const registerVectorTools: (server: McpServer) => void;
14
+ export default registerVectorTools;
15
+ //# sourceMappingURL=vector-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vector-tools.d.ts","sourceRoot":"","sources":["../../src/tools/vector-tools.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE;;;;;GAKG;AAEH;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,GAAI,QAAQ,SAAS,SAmQpD,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
@@ -0,0 +1,27 @@
1
+ import { AxiosRequestConfig, AxiosResponse } from 'axios';
2
+ /**
3
+ * Meilisearch API client
4
+ *
5
+ * This module provides a configured Axios instance for making requests to the Meilisearch API.
6
+ */
7
+ /**
8
+ * Creates a configured Axios instance for Meilisearch API requests
9
+ *
10
+ * @returns An Axios instance with base configuration
11
+ */
12
+ export declare const createApiClient: () => {
13
+ get: <T = any>(url: string, config?: AxiosRequestConfig) => Promise<AxiosResponse<T>>;
14
+ post: <T = any>(url: string, data?: any, config?: AxiosRequestConfig) => Promise<AxiosResponse<T>>;
15
+ put: <T = any>(url: string, data?: any, config?: AxiosRequestConfig) => Promise<AxiosResponse<T>>;
16
+ patch: <T = any>(url: string, data?: any, config?: AxiosRequestConfig) => Promise<AxiosResponse<T>>;
17
+ delete: <T = any>(url: string, config?: AxiosRequestConfig) => Promise<AxiosResponse<T>>;
18
+ };
19
+ export declare const apiClient: {
20
+ get: <T = any>(url: string, config?: AxiosRequestConfig) => Promise<AxiosResponse<T>>;
21
+ post: <T = any>(url: string, data?: any, config?: AxiosRequestConfig) => Promise<AxiosResponse<T>>;
22
+ put: <T = any>(url: string, data?: any, config?: AxiosRequestConfig) => Promise<AxiosResponse<T>>;
23
+ patch: <T = any>(url: string, data?: any, config?: AxiosRequestConfig) => Promise<AxiosResponse<T>>;
24
+ delete: <T = any>(url: string, config?: AxiosRequestConfig) => Promise<AxiosResponse<T>>;
25
+ };
26
+ export default apiClient;
27
+ //# sourceMappingURL=api-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-handler.d.ts","sourceRoot":"","sources":["../../src/utils/api-handler.ts"],"names":[],"mappings":"AAAA,OAAc,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAIjE;;;;GAIG;AAEH;;;;GAIG;AACH,eAAO,MAAM,eAAe;UAWlB,CAAC,aAAa,MAAM,WAAW,kBAAkB,KAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;WAE5E,CAAC,aAAa,MAAM,SAAS,GAAG,WAAW,kBAAkB,KAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;UAE1F,CAAC,aAAa,MAAM,SAAS,GAAG,WAAW,kBAAkB,KAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YAEvF,CAAC,aAAa,MAAM,SAAS,GAAG,WAAW,kBAAkB,KAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;aAExF,CAAC,aAAa,MAAM,WAAW,kBAAkB,KAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;CAGzF,CAAC;AAGF,eAAO,MAAM,SAAS;UAdZ,CAAC,aAAa,MAAM,WAAW,kBAAkB,KAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;WAE5E,CAAC,aAAa,MAAM,SAAS,GAAG,WAAW,kBAAkB,KAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;UAE1F,CAAC,aAAa,MAAM,SAAS,GAAG,WAAW,kBAAkB,KAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YAEvF,CAAC,aAAa,MAAM,SAAS,GAAG,WAAW,kBAAkB,KAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;aAExF,CAAC,aAAa,MAAM,WAAW,kBAAkB,KAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;CAMhD,CAAC;AAG3C,eAAe,SAAS,CAAC"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Error handling utilities for Meilisearch API responses
3
+ */
4
+ /**
5
+ * Formats Meilisearch API errors for consistent error messaging
6
+ *
7
+ * @param error - The error from the API request
8
+ * @returns A formatted error message
9
+ */
10
+ export declare const handleApiError: (error: any) => string;
11
+ /**
12
+ * Creates a standardized error response object for MCP tools
13
+ *
14
+ * @param error - The error from the API request
15
+ * @returns An MCP tool response object with error flag
16
+ */
17
+ export declare const createErrorResponse: (error: any) => {
18
+ isError: boolean;
19
+ content: {
20
+ type: string;
21
+ text: string;
22
+ }[];
23
+ };
24
+ declare const _default: {
25
+ handleApiError: (error: any) => string;
26
+ createErrorResponse: (error: any) => {
27
+ isError: boolean;
28
+ content: {
29
+ type: string;
30
+ text: string;
31
+ }[];
32
+ };
33
+ };
34
+ export default _default;
35
+ //# sourceMappingURL=error-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-handler.d.ts","sourceRoot":"","sources":["../../src/utils/error-handler.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GAAI,OAAO,GAAG,KAAG,MAU3C,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAAI,OAAO,GAAG;;;;;;CAK7C,CAAC;;4BAvBoC,GAAG,KAAG,MAAM;iCAkBP,GAAG;;;;;;;;AAO9C,wBAGE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mcp-meilisearch",
3
- "version": "1.0.2",
3
+ "version": "1.0.3",
4
4
  "description": "Model Context Protocol (MCP) implementation for Meilisearch",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -13,12 +13,13 @@
13
13
  "client"
14
14
  ],
15
15
  "scripts": {
16
- "serve:http": "tsc && chmod 755 dist/http.js",
17
- "serve:stdio": "tsc && chmod 755 dist/stdio.js",
16
+ "build": "tsc && tsc --project tsconfig.types.json",
17
+ "serve:http": "npm run build && chmod 755 dist/http.js",
18
+ "serve:stdio": "npm run build && chmod 755 dist/stdio.js",
18
19
  "server": "npm run serve:stdio && node --env-file=.env dist/stdio.js",
19
20
  "client": "npm run serve:http && node --env-file=.env dist/http.js & npm run preview --workspace=client",
20
21
  "prepare": "npm version patch",
21
- "prepublishOnly": "tsc"
22
+ "prepublishOnly": "npm run build"
22
23
  },
23
24
  "dependencies": {
24
25
  "@modelcontextprotocol/sdk": "^1.10.1",