@toolsdk.ai/registry 1.0.44 → 1.0.46

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.
package/README.md CHANGED
@@ -128,12 +128,12 @@ Explore art collections, museums, and cultural heritage with AI-friendly tools.
128
128
 
129
129
  Tools for browsing, scraping, and automating web content in AI-compatible formats.
130
130
 
131
+ - [✅ @executeautomation/playwright-mcp-server](https://github.com/executeautomation/mcp-playwright/tree/main/src): A Model Context Protocol server for Playwright for Browser Automation and Web Scraping. (31 tools) (node)
132
+ - [✅ @automatalabs/mcp-server-playwright](https://github.com/Automata-Labs-team/MCP-Server-Playwright/tree/main): MCP server for browser automation using Playwright (10 tools) (node)
131
133
  - [✅ hyperbrowser-mcp](https://github.com/hyperbrowserai/mcp/tree/main): An MCP server for Hyperbrowser - Hyperbrowser is the next-generation platform empowering AI agents and enabling effortless, scalable browser automation (10 tools) (node)
132
- - [✅ tavily-mcp](https://github.com/tavily-ai/tavily-mcp/tree/main): Providing seamless integration with Tavily's search and extract tools for real-time web search and intelligent data extraction. (4 tools) (node)
133
134
  - [❌ mcp-server-fetch](https://github.com/modelcontextprotocol/servers/blob/main/src/fetch): A Model Context Protocol server providing tools to fetch and convert web content for usage by LLMs (python)
134
135
  - [✅ @modelcontextprotocol/server-puppeteer](https://github.com/modelcontextprotocol/servers/blob/main/src/puppeteer): MCP server for browser automation using Puppeteer (7 tools) (node)
135
- - [✅ @executeautomation/playwright-mcp-server](https://github.com/executeautomation/mcp-playwright/tree/main/src): A Model Context Protocol server for Playwright for Browser Automation and Web Scraping. (31 tools) (node)
136
- - [✅ @automatalabs/mcp-server-playwright](https://github.com/Automata-Labs-team/MCP-Server-Playwright/tree/main): MCP server for browser automation using Playwright (10 tools) (node)
136
+ - [✅ tavily-mcp](https://github.com/tavily-ai/tavily-mcp/tree/main): Providing seamless integration with Tavily's search and extract tools for real-time web search and intelligent data extraction. (4 tools) (node)
137
137
 
138
138
 
139
139
  <a id="cloud-platforms"></a>
@@ -141,10 +141,10 @@ Tools for browsing, scraping, and automating web content in AI-compatible format
141
141
 
142
142
  Integrate with cloud services to manage and interact with cloud infrastructure.
143
143
 
144
- - [✅ mcp-server-kubernetes](https://github.com/Flux159/mcp-server-kubernetes): MCP server for managing Kubernetes clusters, enabling LLMs to interact with and control Kubernetes resources. (20 tools) (node)
145
144
  - [✅ @strowk/mcp-k8s](https://github.com/strowk/mcp-k8s-go): MCP server connecting to Kubernetes (8 tools) (node)
146
145
  - [❌ kubernetes-mcp-server](https://github.com/manusa/kubernetes-mcp-server): Powerful and flexible Kubernetes MCP server implementation with additional features for OpenShift. Besides the typical CRUD operations on any Kubernetes resource, this implementation adds specialized features for Pods and other resources. (go)
147
146
  - [❌ @cloudflare/mcp-server-cloudflare](https://github.com/cloudflare/mcp-server-cloudflare): MCP server for interacting with Cloudflare API (node)
147
+ - [✅ mcp-server-kubernetes](https://github.com/Flux159/mcp-server-kubernetes): MCP server for managing Kubernetes clusters, enabling LLMs to interact with and control Kubernetes resources. (20 tools) (node)
148
148
 
149
149
 
150
150
  <a id="code-execution"></a>
@@ -169,8 +169,8 @@ Run shell commands and interact with command-line tools easily.
169
169
 
170
170
  Connect with messaging platforms to manage chats and interact with team tools.
171
171
 
172
- - [❌ @gongrzhe/server-gmail-autoauth-mcp](https://github.com/gongrzhe/server-gmail-autoauth-mcp): Gmail MCP server with auto authentication support (node)
173
172
  - [✅ @enescinar/twitter-mcp](https://github.com/EnesCinr/twitter-mcp): This MCP server allows Clients to interact with Twitter, enabling posting tweets and searching Twitter. (2 tools) (node)
173
+ - [❌ @gongrzhe/server-gmail-autoauth-mcp](https://github.com/gongrzhe/server-gmail-autoauth-mcp): Gmail MCP server with auto authentication support (node)
174
174
  - [✅ @modelcontextprotocol/server-slack](https://github.com/modelcontextprotocol/servers/blob/main/src/slack): MCP server for interacting with Slack (8 tools) (node)
175
175
 
176
176
 
@@ -179,12 +179,12 @@ Connect with messaging platforms to manage chats and interact with team tools.
179
179
 
180
180
  Securely access and query databases with options for read-only permissions.
181
181
 
182
- - [ @niledatabase/nile-mcp-server](https://github.com/niledatabase/nile-mcp-server/tree/main): MCP server for Nile Database - Manage and query databases, tenants, users, auth using LLMs (11 tools) (node)
183
- - [❌ @benborla29/mcp-server-mysql](https://github.com/benborla/mcp-server-mysql): An MCP server for interacting with MySQL databases (node)
182
+ - [ mcp-mongo-server](https://github.com/kiliczsh/mcp-mongo-server): A Model Context Protocol Server for MongoDB (node)
184
183
  - [❌ mcp-server-sqlite](https://github.com/modelcontextprotocol/servers/blob/main/src/sqlite): A simple SQLite MCP server (python)
185
184
  - [❌ @modelcontextprotocol/server-postgres](https://github.com/modelcontextprotocol/servers/blob/main/src/postgres): MCP server for interacting with PostgreSQL databases (node)
186
- - [❌ mcp-mongo-server](https://github.com/kiliczsh/mcp-mongo-server): A Model Context Protocol Server for MongoDB (node)
185
+ - [❌ @benborla29/mcp-server-mysql](https://github.com/benborla/mcp-server-mysql): An MCP server for interacting with MySQL databases (node)
187
186
  - [✅ airtable-mcp-server](https://github.com/domdomegg/airtable-mcp-server): Airtable database integration with schema inspection, read and write capabilities (13 tools) (node)
187
+ - [✅ @niledatabase/nile-mcp-server](https://github.com/niledatabase/nile-mcp-server/tree/main): MCP server for Nile Database - Manage and query databases, tenants, users, auth using LLMs (11 tools) (node)
188
188
 
189
189
 
190
190
  <a id="data-platforms"></a>
@@ -200,15 +200,15 @@ Tools for integrating, transforming, and managing data pipelines.
200
200
 
201
201
  Enhance your development workflow with tools for coding and environment management.
202
202
 
203
- - [❌ awslabs.nova-canvas-mcp-server](https://github.com/awslabs/mcp/tree/main/src/nova-canvas-mcp-server): A Model Context Protocol server that lets you interact with a Nova Canvas from any MCP client. (python)
204
- - [❌ mcp-server-tree-sitter](https://github.com/wrale/mcp-server-tree-sitter): A Model Context Protocol server that provides code analysis capabilities using tree-sitter. This server enables LLMs to explore, search, and analyze code with appropriate context management. (python)
205
203
  - [✅ @mcp-get-community/server-macos](https://github.com/mcp-get/community-servers/blob/main/src/server-macos): MCP server for macOS system operations (2 tools) (node)
206
- - [✅ @mcp-get-community/server-llm-txt](https://github.com/mcp-get/community-servers/blob/main/src/server-llm-txt): MCP server that extracts and serves context from llm.txt files, enabling AI models to understand file structure, dependencies, and code relationships in development environments (3 tools) (node)
207
204
  - [❌ mcp-openapi-schema-explorer](https://github.com/kadykov/mcp-openapi-schema-explorer): MCP server providing token-efficient access to OpenAPI/Swagger specs via MCP Resources for client-side exploration. (node)
208
- - [❌ mcp-server-aidd](https://github.com/skydeckai/mcp-server-aidd): An MCP server that provides a comprehensive set of tools for AI-driven development workflows. Features include file system operations, code analysis using tree-sitter for multiple programming languages, Git operations, code execution, and system information retrieval. Designed to enhance AI's capability to assist in software development tasks. (python)
209
- - [✅ @llmindset/mcp-hfspace](https://github.com/evalstate/mcp-hfspace/): MCP Server for using HuggingFace Spaces. Seamlessly use the latest Open Source Image, Audio and Text Models from within Claude Deskop. (3 tools) (node)
210
205
  - [❌ hackmd-mcp](https://github.com/yuna0x0/hackmd-mcp): A Model Context Protocol server for integrating HackMD's note-taking platform with AI assistants (node)
206
+ - [❌ mcp-server-tree-sitter](https://github.com/wrale/mcp-server-tree-sitter): A Model Context Protocol server that provides code analysis capabilities using tree-sitter. This server enables LLMs to explore, search, and analyze code with appropriate context management. (python)
207
+ - [✅ @mcp-get-community/server-llm-txt](https://github.com/mcp-get/community-servers/blob/main/src/server-llm-txt): MCP server that extracts and serves context from llm.txt files, enabling AI models to understand file structure, dependencies, and code relationships in development environments (3 tools) (node)
208
+ - [❌ mcp-server-aidd](https://github.com/skydeckai/mcp-server-aidd): An MCP server that provides a comprehensive set of tools for AI-driven development workflows. Features include file system operations, code analysis using tree-sitter for multiple programming languages, Git operations, code execution, and system information retrieval. Designed to enhance AI's capability to assist in software development tasks. (python)
211
209
  - [❌ docker-mcp](https://github.com/QuantGeekDev/docker-mcp): A powerful Model Context Protocol (MCP) server for Docker operations, enabling seamless container and compose stack management through Claude AI (python)
210
+ - [✅ @llmindset/mcp-hfspace](https://github.com/evalstate/mcp-hfspace/): MCP Server for using HuggingFace Spaces. Seamlessly use the latest Open Source Image, Audio and Text Models from within Claude Deskop. (3 tools) (node)
211
+ - [❌ awslabs.nova-canvas-mcp-server](https://github.com/awslabs/mcp/tree/main/src/nova-canvas-mcp-server): A Model Context Protocol server that lets you interact with a Nova Canvas from any MCP client. (python)
212
212
 
213
213
 
214
214
  <a id="data-science-tools"></a>
@@ -224,8 +224,8 @@ Simplify data analysis and exploration with tools for data science workflows.
224
224
 
225
225
  Manage files and directories with tools for reading, writing, and organizing files.
226
226
 
227
- - [❌ @modelcontextprotocol/server-filesystem](https://github.com/modelcontextprotocol/servers): MCP server for filesystem access (node)
228
227
  - [❌ @modelcontextprotocol/server-gdrive](https://github.com/modelcontextprotocol/servers/blob/main/src/gdrive): MCP server for interacting with Google Drive (node)
228
+ - [❌ @modelcontextprotocol/server-filesystem](https://github.com/modelcontextprotocol/servers): MCP server for filesystem access (node)
229
229
 
230
230
 
231
231
  <a id="knowledge-memory"></a>
@@ -233,9 +233,9 @@ Manage files and directories with tools for reading, writing, and organizing fil
233
233
 
234
234
  Store and query structured information for AI models to use across sessions.
235
235
 
236
- - [❌ mcp-server-rememberizer](https://github.com/skydeckai/mcp-server-rememberizer): An MCP server for interacting with Rememberizer's document and knowledge management API. This server enables Large Language Models to search, retrieve, and manage documents and integrations through Rememberizer. (python)
237
236
  - [✅ @modelcontextprotocol/server-memory](https://github.com/modelcontextprotocol/servers/blob/main/src/memory): MCP server for enabling memory for Claude through a knowledge graph (9 tools) (node)
238
237
  - [❌ mcp-rememberizer-vectordb](https://github.com/skydeckai/mcp-rememberizer-vectordb): A Model Context Protocol server for LLMs to interact with Rememberizer Vector Store. (python)
238
+ - [❌ mcp-server-rememberizer](https://github.com/skydeckai/mcp-server-rememberizer): An MCP server for interacting with Rememberizer's document and knowledge management API. This server enables Large Language Models to search, retrieve, and manage documents and integrations through Rememberizer. (python)
239
239
 
240
240
 
241
241
  <a id="location-services"></a>
@@ -260,16 +260,16 @@ Analyze app performance and error reports with monitoring tools.
260
260
 
261
261
  Find and extract data from various sources quickly and efficiently.
262
262
 
263
- - [ @anaisbetts/mcp-youtube](https://github.com/anaisbetts/mcp-youtube): MCP server for fetching YouTube subtitles (1 tools) (node)
263
+ - [ qanon_mcp](https://github.com/jkingsman/qanon-mcp-server): Enables search, exploration, and analysis of all QAnon posts/drops for sociological study (python)
264
+ - [✅ @chanmeng666/google-news-server](https://github.com/ChanMeng666/server-google-news): MCP server for Google News search via SerpAPI (1 tools) (node)
264
265
  - [✅ anilist-mcp](https://github.com/yuna0x0/anilist-mcp): MCP server that interfaces with the AniList API, allowing LLM clients to access and interact with anime, manga, character, staff, and user data from AniList (44 tools) (node)
265
- - [❌ mcp-server-perplexity](https://github.com/tanigami/mcp-server-perplexity): MCP Server for the Perplexity API (python)
266
266
  - [✅ @modelcontextprotocol/server-aws-kb-retrieval](https://github.com/modelcontextprotocol/servers/blob/main/src/aws-kb-retrieval-server): MCP server for AWS Knowledge Base retrieval using Bedrock Agent Runtime (1 tools) (node)
267
267
  - [✅ graphlit-mcp-server](https://github.com/graphlit/graphlit-mcp-server): Graphlit MCP Server for AI, RAG, OpenAI, PDF parsing and preprocessing (64 tools) (node)
268
+ - [✅ @mcp-get-community/server-curl](https://github.com/mcp-get/community-servers/blob/main/src/server-curl): MCP server for making HTTP requests using a curl-like interface (1 tools) (node)
269
+ - [❌ mcp-server-perplexity](https://github.com/tanigami/mcp-server-perplexity): MCP Server for the Perplexity API (python)
268
270
  - [✅ @modelcontextprotocol/server-brave-search](https://github.com/modelcontextprotocol/servers/blob/main/src/brave-search): MCP server for Brave Search API integration (2 tools) (node)
271
+ - [✅ @anaisbetts/mcp-youtube](https://github.com/anaisbetts/mcp-youtube): MCP server for fetching YouTube subtitles (1 tools) (node)
269
272
  - [✅ @kimtaeyoon83/mcp-server-youtube-transcript](https://github.com/kimtaeyoon83/mcp-server-youtube-transcript): This is an MCP server that allows you to directly download transcripts of YouTube videos. (1 tools) (node)
270
- - [✅ @mcp-get-community/server-curl](https://github.com/mcp-get/community-servers/blob/main/src/server-curl): MCP server for making HTTP requests using a curl-like interface (1 tools) (node)
271
- - [✅ @chanmeng666/google-news-server](https://github.com/ChanMeng666/server-google-news): MCP server for Google News search via SerpAPI (1 tools) (node)
272
- - [❌ qanon_mcp](https://github.com/jkingsman/qanon-mcp-server): Enables search, exploration, and analysis of all QAnon posts/drops for sociological study (python)
273
273
  - [❌ mcp-server-giphy](https://github.com/magarcia/mcp-server-giphy): MCP Server for the Giphy API, enabling AI models to search, retrieve, and utilize GIFs from Giphy (node)
274
274
 
275
275
 
@@ -278,8 +278,8 @@ Find and extract data from various sources quickly and efficiently.
278
278
 
279
279
  Manage Git repositories, pull requests, and issues with version control tools.
280
280
 
281
- - [✅ @modelcontextprotocol/server-github](https://github.com/modelcontextprotocol/servers/blob/main/src/github): MCP server for using the GitHub API (26 tools) (node)
282
281
  - [❌ mcp-server-git](https://github.com/modelcontextprotocol/servers/blob/main/src/git): A Model Context Protocol server providing tools to read, search, and manipulate Git repositories programmatically via LLMs (python)
282
+ - [✅ @modelcontextprotocol/server-github](https://github.com/modelcontextprotocol/servers/blob/main/src/github): MCP server for using the GitHub API (26 tools) (node)
283
283
  - [✅ @modelcontextprotocol/server-gitlab](https://github.com/modelcontextprotocol/servers/blob/main/src/gitlab): MCP server for using the GitLab API (9 tools) (node)
284
284
 
285
285
 
@@ -288,9 +288,9 @@ Manage Git repositories, pull requests, and issues with version control tools.
288
288
 
289
289
  Miscellaneous tools and integrations that don’t fit into other categories.
290
290
 
291
- - [✅ @chargebee/mcp](https://github.com/chargebee/agentkit/tree/main/modelcontextprotocol): MCP Server that connects AI agents to Chargebee platform. (2 tools) (node)
292
- - [✅ @modelcontextprotocol/server-sequential-thinking](https://github.com/modelcontextprotocol/servers/blob/main/src/sequentialthinking): MCP server for sequential thinking and problem solving (1 tools) (node)
293
291
  - [✅ mcp-server-flomo](https://github.com/xianminx/mcp-server-flomo): A MCP server for Flomo (1 tools) (node)
294
292
  - [❌ @llmindset/mcp-miro](https://github.com/evalstate/mcp-miro): A Model Context Protocol server to connect to the MIRO Whiteboard Application (node)
295
293
  - [❌ mcp-server-time](https://github.com/modelcontextprotocol/servers/blob/main/src/time): A Model Context Protocol server providing tools for time queries and timezone conversions for LLMs (python)
294
+ - [✅ @modelcontextprotocol/server-sequential-thinking](https://github.com/modelcontextprotocol/servers/blob/main/src/sequentialthinking): MCP server for sequential thinking and problem solving (1 tools) (node)
295
+ - [✅ @chargebee/mcp](https://github.com/chargebee/agentkit/tree/main/modelcontextprotocol): MCP Server that connects AI agents to Chargebee platform. (2 tools) (node)
296
296
 
@@ -6,9 +6,9 @@
6
6
  */
7
7
 
8
8
  export default [
9
- "@modelcontextprotocol/server-github",
10
- "@modelcontextprotocol/server-brave-search",
11
- "@modelcontextprotocol/server-everart",
12
- "@modelcontextprotocol/server-slack",
13
- "@modelcontextprotocol/server-google-maps"
9
+ "@modelcontextprotocol/server-github",
10
+ "@modelcontextprotocol/server-brave-search",
11
+ "@modelcontextprotocol/server-everart",
12
+ "@modelcontextprotocol/server-slack",
13
+ "@modelcontextprotocol/server-google-maps"
14
14
  ];
@@ -0,0 +1,40 @@
1
+ import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js";
2
+ import type { MCPServerPackageConfig } from "./types";
3
+ import { Client } from "@modelcontextprotocol/sdk/client/index.js";
4
+ export declare const typedAllPackagesList: Record<string, {
5
+ path: string;
6
+ validated?: boolean | undefined;
7
+ tools?: Record<string, {
8
+ name?: string | undefined;
9
+ description?: string | undefined;
10
+ }> | undefined;
11
+ }>;
12
+ export declare function getPackageConfigByKey(packageKey: string): MCPServerPackageConfig;
13
+ export declare function getPackageJSON(packageName: string): any;
14
+ export declare function getMcpClient(mcpServerConfig: MCPServerPackageConfig, env?: Record<string, string>): Promise<{
15
+ client: Client<{
16
+ method: string;
17
+ params?: {
18
+ [x: string]: unknown;
19
+ _meta?: {
20
+ [x: string]: unknown;
21
+ progressToken?: string | number | undefined;
22
+ } | undefined;
23
+ } | undefined;
24
+ }, {
25
+ method: string;
26
+ params?: {
27
+ [x: string]: unknown;
28
+ _meta?: {
29
+ [x: string]: unknown;
30
+ } | undefined;
31
+ } | undefined;
32
+ }, {
33
+ [x: string]: unknown;
34
+ _meta?: {
35
+ [x: string]: unknown;
36
+ } | undefined;
37
+ }>;
38
+ transport: StdioClientTransport;
39
+ closeConnection: () => Promise<void>;
40
+ }>;
package/dist/helper.js ADDED
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.typedAllPackagesList = void 0;
16
+ exports.getPackageConfigByKey = getPackageConfigByKey;
17
+ exports.getPackageJSON = getPackageJSON;
18
+ exports.getMcpClient = getMcpClient;
19
+ const stdio_js_1 = require("@modelcontextprotocol/sdk/client/stdio.js");
20
+ const index_js_1 = require("@modelcontextprotocol/sdk/client/index.js");
21
+ const fs_1 = __importDefault(require("fs"));
22
+ const packages_list_json_1 = __importDefault(require("../indexes/packages-list.json"));
23
+ const assert_1 = __importDefault(require("assert"));
24
+ const schema_1 = require("./schema");
25
+ exports.typedAllPackagesList = schema_1.PackagesListSchema.parse(packages_list_json_1.default);
26
+ function getPackageConfigByKey(packageKey) {
27
+ const value = exports.typedAllPackagesList[packageKey];
28
+ const jsonFile = value.path;
29
+ // read the JSON file and convert it to MCPServerPackageConfig
30
+ const jsonStr = fs_1.default.readFileSync(__dirname + '/../packages/' + jsonFile, 'utf-8');
31
+ const mcpServerConfig = schema_1.MCPServerPackageConfigSchema.parse(JSON.parse(jsonStr));
32
+ return mcpServerConfig;
33
+ }
34
+ function getPackageJSON(packageName) {
35
+ const packageJSONFilePath = __dirname + '/../node_modules/' + packageName + '/package.json';
36
+ const packageJSONStr = fs_1.default.readFileSync(packageJSONFilePath, 'utf8');
37
+ const packageJSON = JSON.parse(packageJSONStr);
38
+ return packageJSON;
39
+ }
40
+ function getMcpClient(mcpServerConfig, env) {
41
+ return __awaiter(this, void 0, void 0, function* () {
42
+ const { packageName } = mcpServerConfig;
43
+ const packageJSON = getPackageJSON(packageName);
44
+ let binFilePath = '';
45
+ let binPath;
46
+ if (typeof packageJSON.bin === 'string') {
47
+ binPath = packageJSON.bin;
48
+ }
49
+ else if (typeof packageJSON.bin === 'object') {
50
+ binPath = Object.values(packageJSON.bin)[0];
51
+ }
52
+ else {
53
+ binPath = packageJSON.main;
54
+ }
55
+ (0, assert_1.default)(binPath, `Package ${packageName} does not have a valid bin path in package.json.`);
56
+ // binFilePath = 'plugin_packages/' + packageName + `/${binPath}`;
57
+ binFilePath = __dirname + '/../node_modules/' + packageName + `/${binPath}`;
58
+ const mcpServerBinPath = mcpServerConfig.bin || binFilePath;
59
+ const binArgs = mcpServerConfig.binArgs || [];
60
+ const transport = new stdio_js_1.StdioClientTransport({
61
+ command: process.execPath,
62
+ args: [mcpServerBinPath, ...binArgs],
63
+ env: env || {},
64
+ });
65
+ const client = new index_js_1.Client({
66
+ name: `mcp-server-${mcpServerConfig.name}-client`,
67
+ version: '1.0.0',
68
+ }, {
69
+ capabilities: {
70
+ tools: {},
71
+ },
72
+ });
73
+ yield client.connect(transport);
74
+ const closeConnection = () => __awaiter(this, void 0, void 0, function* () {
75
+ try {
76
+ yield client.close();
77
+ }
78
+ catch (e) {
79
+ console.warn(`${packageName} mcp client close failure.`, e);
80
+ }
81
+ });
82
+ return { client, transport, closeConnection };
83
+ });
84
+ }
@@ -0,0 +1,179 @@
1
+ import { z } from 'zod';
2
+ export declare const PackageKeySchema: z.ZodString;
3
+ export declare const HostingBlackListSchema: z.ZodArray<z.ZodString, "many">;
4
+ export declare const FeaturedListSchema: z.ZodArray<z.ZodString, "many">;
5
+ export declare const CategoryConfigSchema: z.ZodObject<{
6
+ key: z.ZodString;
7
+ name: z.ZodString;
8
+ description: z.ZodOptional<z.ZodString>;
9
+ }, "strip", z.ZodTypeAny, {
10
+ key: string;
11
+ name: string;
12
+ description?: string | undefined;
13
+ }, {
14
+ key: string;
15
+ name: string;
16
+ description?: string | undefined;
17
+ }>;
18
+ export declare const MCPServerPackageConfigSchema: z.ZodObject<{
19
+ type: z.ZodLiteral<"mcp-server">;
20
+ runtime: z.ZodEnum<["node", "python", "java", "go"]>;
21
+ packageName: z.ZodString;
22
+ packageVersion: z.ZodOptional<z.ZodString>;
23
+ bin: z.ZodOptional<z.ZodString>;
24
+ binArgs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
25
+ key: z.ZodOptional<z.ZodString>;
26
+ name: z.ZodOptional<z.ZodString>;
27
+ description: z.ZodOptional<z.ZodString>;
28
+ url: z.ZodOptional<z.ZodString>;
29
+ license: z.ZodOptional<z.ZodString>;
30
+ logo: z.ZodOptional<z.ZodString>;
31
+ author: z.ZodOptional<z.ZodString>;
32
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
33
+ description: z.ZodString;
34
+ required: z.ZodBoolean;
35
+ }, "strip", z.ZodTypeAny, {
36
+ description: string;
37
+ required: boolean;
38
+ }, {
39
+ description: string;
40
+ required: boolean;
41
+ }>>>;
42
+ }, "strip", z.ZodTypeAny, {
43
+ type: "mcp-server";
44
+ runtime: "node" | "python" | "java" | "go";
45
+ packageName: string;
46
+ key?: string | undefined;
47
+ name?: string | undefined;
48
+ description?: string | undefined;
49
+ packageVersion?: string | undefined;
50
+ bin?: string | undefined;
51
+ binArgs?: string[] | undefined;
52
+ url?: string | undefined;
53
+ license?: string | undefined;
54
+ logo?: string | undefined;
55
+ author?: string | undefined;
56
+ env?: Record<string, {
57
+ description: string;
58
+ required: boolean;
59
+ }> | undefined;
60
+ }, {
61
+ type: "mcp-server";
62
+ runtime: "node" | "python" | "java" | "go";
63
+ packageName: string;
64
+ key?: string | undefined;
65
+ name?: string | undefined;
66
+ description?: string | undefined;
67
+ packageVersion?: string | undefined;
68
+ bin?: string | undefined;
69
+ binArgs?: string[] | undefined;
70
+ url?: string | undefined;
71
+ license?: string | undefined;
72
+ logo?: string | undefined;
73
+ author?: string | undefined;
74
+ env?: Record<string, {
75
+ description: string;
76
+ required: boolean;
77
+ }> | undefined;
78
+ }>;
79
+ export declare const PackageConfigSchema: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
80
+ type: z.ZodLiteral<"mcp-server">;
81
+ runtime: z.ZodEnum<["node", "python", "java", "go"]>;
82
+ packageName: z.ZodString;
83
+ packageVersion: z.ZodOptional<z.ZodString>;
84
+ bin: z.ZodOptional<z.ZodString>;
85
+ binArgs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
86
+ key: z.ZodOptional<z.ZodString>;
87
+ name: z.ZodOptional<z.ZodString>;
88
+ description: z.ZodOptional<z.ZodString>;
89
+ url: z.ZodOptional<z.ZodString>;
90
+ license: z.ZodOptional<z.ZodString>;
91
+ logo: z.ZodOptional<z.ZodString>;
92
+ author: z.ZodOptional<z.ZodString>;
93
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
94
+ description: z.ZodString;
95
+ required: z.ZodBoolean;
96
+ }, "strip", z.ZodTypeAny, {
97
+ description: string;
98
+ required: boolean;
99
+ }, {
100
+ description: string;
101
+ required: boolean;
102
+ }>>>;
103
+ }, "strip", z.ZodTypeAny, {
104
+ type: "mcp-server";
105
+ runtime: "node" | "python" | "java" | "go";
106
+ packageName: string;
107
+ key?: string | undefined;
108
+ name?: string | undefined;
109
+ description?: string | undefined;
110
+ packageVersion?: string | undefined;
111
+ bin?: string | undefined;
112
+ binArgs?: string[] | undefined;
113
+ url?: string | undefined;
114
+ license?: string | undefined;
115
+ logo?: string | undefined;
116
+ author?: string | undefined;
117
+ env?: Record<string, {
118
+ description: string;
119
+ required: boolean;
120
+ }> | undefined;
121
+ }, {
122
+ type: "mcp-server";
123
+ runtime: "node" | "python" | "java" | "go";
124
+ packageName: string;
125
+ key?: string | undefined;
126
+ name?: string | undefined;
127
+ description?: string | undefined;
128
+ packageVersion?: string | undefined;
129
+ bin?: string | undefined;
130
+ binArgs?: string[] | undefined;
131
+ url?: string | undefined;
132
+ license?: string | undefined;
133
+ logo?: string | undefined;
134
+ author?: string | undefined;
135
+ env?: Record<string, {
136
+ description: string;
137
+ required: boolean;
138
+ }> | undefined;
139
+ }>, z.ZodObject<{
140
+ type: z.ZodLiteral<"toolapp">;
141
+ packageName: z.ZodString;
142
+ url: z.ZodOptional<z.ZodString>;
143
+ }, "strip", z.ZodTypeAny, {
144
+ type: "toolapp";
145
+ packageName: string;
146
+ url?: string | undefined;
147
+ }, {
148
+ type: "toolapp";
149
+ packageName: string;
150
+ url?: string | undefined;
151
+ }>]>;
152
+ export declare const PackagesListSchema: z.ZodRecord<z.ZodString, z.ZodObject<{
153
+ path: z.ZodString;
154
+ validated: z.ZodOptional<z.ZodBoolean>;
155
+ tools: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
156
+ name: z.ZodOptional<z.ZodString>;
157
+ description: z.ZodOptional<z.ZodString>;
158
+ }, "strip", z.ZodTypeAny, {
159
+ name?: string | undefined;
160
+ description?: string | undefined;
161
+ }, {
162
+ name?: string | undefined;
163
+ description?: string | undefined;
164
+ }>>>;
165
+ }, "strip", z.ZodTypeAny, {
166
+ path: string;
167
+ validated?: boolean | undefined;
168
+ tools?: Record<string, {
169
+ name?: string | undefined;
170
+ description?: string | undefined;
171
+ }> | undefined;
172
+ }, {
173
+ path: string;
174
+ validated?: boolean | undefined;
175
+ tools?: Record<string, {
176
+ name?: string | undefined;
177
+ description?: string | undefined;
178
+ }> | undefined;
179
+ }>>;
package/dist/schema.js ADDED
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PackagesListSchema = exports.PackageConfigSchema = exports.MCPServerPackageConfigSchema = exports.CategoryConfigSchema = exports.FeaturedListSchema = exports.HostingBlackListSchema = exports.PackageKeySchema = void 0;
4
+ const zod_1 = require("zod");
5
+ exports.PackageKeySchema = zod_1.z.string();
6
+ exports.HostingBlackListSchema = zod_1.z.array(exports.PackageKeySchema);
7
+ exports.FeaturedListSchema = zod_1.z.array(exports.PackageKeySchema);
8
+ exports.CategoryConfigSchema = zod_1.z.object({
9
+ key: zod_1.z.string(),
10
+ name: zod_1.z.string(),
11
+ description: zod_1.z.string().optional(),
12
+ });
13
+ exports.MCPServerPackageConfigSchema = zod_1.z.object({
14
+ type: zod_1.z.literal('mcp-server'),
15
+ runtime: zod_1.z.enum(['node', 'python', 'java', 'go']),
16
+ packageName: zod_1.z.string().describe('Name of the node, python, java package '),
17
+ packageVersion: zod_1.z.string().optional().describe('Version of the package, if not provided then it will use latest version'),
18
+ bin: zod_1.z.string().optional().describe('Binary Command to run the MCP server, if not provided then it will use the package name'),
19
+ binArgs: zod_1.z.array(zod_1.z.string()).optional().describe('Binary Arguments to pass to the command, if not provided then it will use an empty array'),
20
+ // if no custom key then would use name
21
+ key: zod_1.z.string().optional().describe('Unique key for url and slug'),
22
+ name: zod_1.z.string().optional().describe('Custom name for display, if empty then it will use the package name'),
23
+ description: zod_1.z.string().optional(),
24
+ url: zod_1.z.string().optional(),
25
+ license: zod_1.z.string().optional().describe('Open source license lie MIT, AGPL, GPL, etc'),
26
+ logo: zod_1.z.string().optional().describe('URL to custom logo image, if undefined and the URL is Github, then it will use the Github logo'),
27
+ author: zod_1.z.string().optional().describe('Author name of the ToolSDK.ai\'s developer ID'),
28
+ env: zod_1.z
29
+ .record(zod_1.z.object({
30
+ description: zod_1.z.string(),
31
+ required: zod_1.z.boolean(),
32
+ }))
33
+ .optional(),
34
+ });
35
+ exports.PackageConfigSchema = zod_1.z.discriminatedUnion('type', [
36
+ exports.MCPServerPackageConfigSchema,
37
+ zod_1.z.object({
38
+ type: zod_1.z.literal('toolapp'),
39
+ packageName: zod_1.z.string(),
40
+ url: zod_1.z.string().optional(),
41
+ }),
42
+ ]);
43
+ exports.PackagesListSchema = zod_1.z.record(zod_1.z.object({
44
+ path: zod_1.z.string(),
45
+ validated: zod_1.z.boolean().optional(),
46
+ tools: zod_1.z.record(zod_1.z.object({
47
+ name: zod_1.z.string().optional(),
48
+ description: zod_1.z.string().optional(),
49
+ })).optional(),
50
+ }));
@@ -1,8 +1,6 @@
1
-
2
- import { z } from 'zod'
1
+ import { z } from 'zod';
3
2
  import type { CategoryConfigSchema, PackageConfigSchema, MCPServerPackageConfigSchema, PackagesListSchema } from './schema';
4
-
5
- export type MCPServerPackageConfig= z.infer<typeof MCPServerPackageConfigSchema>;
3
+ export type MCPServerPackageConfig = z.infer<typeof MCPServerPackageConfigSchema>;
6
4
  export type PackageConfig = z.infer<typeof PackageConfigSchema>;
7
5
  export type CategoryConfig = z.infer<typeof CategoryConfigSchema>;
8
- export type PackagesList = z.infer<typeof PackagesListSchema>;
6
+ export type PackagesList = z.infer<typeof PackagesListSchema>;
package/dist/types.js ADDED
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });