@toolsdk.ai/registry 1.0.130 → 1.0.132
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 +34 -24
- package/dist/domains/package/package-schema.d.ts +30 -4
- package/dist/domains/package/package-so.d.ts +5 -1
- package/dist/shared/schemas/common-schema.d.ts +40 -4
- package/dist/shared/schemas/common-schema.js +6 -0
- package/dist/shared/scripts-helpers/index.d.ts +5 -1
- package/dist/shared/utils/mcp-client-util.d.ts +2 -2
- package/dist/shared/utils/mcp-client-util.js +12 -0
- package/indexes/categories-list.json +1 -0
- package/indexes/packages-list.json +15 -0
- package/package.json +2 -1
- package/packages/developer-tools/github-mcp.json +16 -0
package/README.md
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
<a href="https://github.com/toolsdk-ai/toolsdk-mcp-registry/actions/workflows/test.yaml">
|
|
14
14
|
<img src="https://github.com/toolsdk-ai/toolsdk-mcp-registry/actions/workflows/test.yaml/badge.svg" alt="Build Status" />
|
|
15
15
|
</a>
|
|
16
|
-
<img src="https://img.shields.io/badge/MCP_Servers-
|
|
16
|
+
<img src="https://img.shields.io/badge/MCP_Servers-4110-blue?style=flat-square" alt="MCP Servers Count" />
|
|
17
17
|
<img src="https://img.shields.io/badge/LICENSE-MIT-ff69b4?style=flat-square" alt="License" />
|
|
18
18
|
</p>
|
|
19
19
|
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
</p>
|
|
25
25
|
|
|
26
26
|
<p align="center">
|
|
27
|
-
🚀 <b>Open-source</b>, <b>production-ready</b>, and <b>developer-friendly</b> registry for
|
|
27
|
+
🚀 <b>Open-source</b>, <b>production-ready</b>, and <b>developer-friendly</b> registry for 4110+ Model Context Protocol (MCP) servers.
|
|
28
28
|
<br />
|
|
29
29
|
<i>Perfect for <b>AI automation</b>, <b>chatbot development</b>, <b>LLM integrations</b>, and <b>enterprise AI deployments</b>.</i>
|
|
30
30
|
</p>
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
</p>
|
|
35
35
|
|
|
36
36
|
<p align="center">
|
|
37
|
-
<a href="#mcp-servers">🔍 <b>Browse
|
|
37
|
+
<a href="#mcp-servers">🔍 <b>Browse 4110+ Tools</b></a>
|
|
38
38
|
•
|
|
39
39
|
<a href="#quick-start">🐳 <b>Deploy Private Registry</b></a>
|
|
40
40
|
•
|
|
@@ -51,6 +51,8 @@
|
|
|
51
51
|
|
|
52
52
|
## 🚀 Quick Start
|
|
53
53
|
|
|
54
|
+
<a id="docker-self-hosting"></a>
|
|
55
|
+
|
|
54
56
|
### 🐳 Self-Hosted MCP Registry with Docker
|
|
55
57
|
|
|
56
58
|
Deploy your own **private MCP registry** in 5 minutes! Get a production-ready AI agent tool registry with full-text search, REST API, and secure sandbox execution.
|
|
@@ -66,11 +68,12 @@ docker compose up -d
|
|
|
66
68
|
```
|
|
67
69
|
|
|
68
70
|
**Optional Configuration:**
|
|
69
|
-
-
|
|
71
|
+
- Set `MCP_SANDBOX_PROVIDER=LOCAL` in `.env` file if you want to disable the sandbox.
|
|
72
|
+
- Set `SANDOCK_API_KEY` if you want to use the sandbox for full deployment.
|
|
70
73
|
- *See [Configuration Guide](./docs/DEVELOPMENT.md) for full details.*
|
|
71
74
|
|
|
72
75
|
> 💡 **Tip for Private Deployment**:
|
|
73
|
-
> This registry contains
|
|
76
|
+
> This registry contains 4110+ public MCP servers. If you only need a specific subset for your private environment, you can prune the `packages/` directory.
|
|
74
77
|
> 📖 See [Package Management Guide](./docs/DEVELOPMENT.md#5--package-management-for-private-deployment) for details.
|
|
75
78
|
|
|
76
79
|
That's it! Your self-hosted MCP registry is now running with:
|
|
@@ -82,7 +85,7 @@ That's it! Your self-hosted MCP registry is now running with:
|
|
|
82
85
|
|
|
83
86
|
- 🌐 **Local Web Interface**: http://localhost:3003
|
|
84
87
|
- 📚 **Swagger API Docs**: http://localhost:3003/swagger
|
|
85
|
-
- 🔍 **Search & Execute**
|
|
88
|
+
- 🔍 **Search & Execute** 4110+ MCP Servers remotely
|
|
86
89
|
- 🤖 **Integrate** with your AI agents, chatbots, and LLM applications
|
|
87
90
|
|
|
88
91
|
#### 💻 Remote Tool Execution Example
|
|
@@ -166,7 +169,7 @@ mcp_servers = requests.get(
|
|
|
166
169
|
### 🎯 Key Features
|
|
167
170
|
|
|
168
171
|
- 🔐 **Private & Self-Hosted** - Deploy your own secure MCP registry with Docker in minutes
|
|
169
|
-
- 🤖 **
|
|
172
|
+
- 🤖 **4110+ MCP Servers** - Largest curated collection of MCP servers
|
|
170
173
|
- ⚡ **Remote Execution** - Run MCP tools in isolated sandbox environments via REST API
|
|
171
174
|
- 🔍 **Powerful Search** - Fast, full-text search powered by Meilisearch
|
|
172
175
|
- 📦 **NPM Integration** - Use as a TypeScript/Node.js SDK in your projects
|
|
@@ -186,27 +189,33 @@ mcp_servers = requests.get(
|
|
|
186
189
|
|
|
187
190
|
```mermaid
|
|
188
191
|
graph TD
|
|
189
|
-
subgraph "Client Side"
|
|
190
|
-
User["👤 User / Developer"]
|
|
192
|
+
subgraph ClientSide ["Client Side"]
|
|
191
193
|
LLM["🤖 AI Agent / LLM"]
|
|
194
|
+
User["👤 User / Developer"]
|
|
192
195
|
end
|
|
193
196
|
|
|
194
|
-
subgraph "
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
197
|
+
subgraph DockerEnv ["🐳 Self-Hosted Infrastructure"]
|
|
198
|
+
|
|
199
|
+
subgraph RegistryCore ["Registry Core"]
|
|
200
|
+
API["🌐 Registry API"]
|
|
201
|
+
Search["🔍 Meilisearch"]
|
|
202
|
+
DB["📚 Registry Data"]
|
|
203
|
+
end
|
|
204
|
+
|
|
205
|
+
subgraph RuntimeEnv ["Runtime Environment"]
|
|
206
|
+
Local["💻 Local Exec"]
|
|
207
|
+
Sandbox["🛡️ Secure Sandbox"]
|
|
208
|
+
MCPServer["⚙️ MCP Server"]
|
|
209
|
+
end
|
|
203
210
|
end
|
|
204
211
|
|
|
205
212
|
User -->|Search Tools| API
|
|
206
|
-
LLM -->|Execute Tool
|
|
213
|
+
LLM -->|Execute Tool| API
|
|
207
214
|
API <-->|Query Index| Search
|
|
208
215
|
API -->|Read Metadata| DB
|
|
216
|
+
API -->|Run Tool| Local
|
|
209
217
|
API -->|Run Tool| Sandbox
|
|
218
|
+
Local -->|Execute| MCPServer
|
|
210
219
|
Sandbox -->|Execute| MCPServer
|
|
211
220
|
```
|
|
212
221
|
|
|
@@ -216,7 +225,7 @@ graph TD
|
|
|
216
225
|
|
|
217
226
|
This open-source registry provides:
|
|
218
227
|
|
|
219
|
-
- 📚 **Structured Registry** -
|
|
228
|
+
- 📚 **Structured Registry** - 4110+ validated MCP servers with metadata
|
|
220
229
|
- 🔗 **Multiple Formats** - JSON, npm package, and generated documentation
|
|
221
230
|
- 🌐 **REST API** - Query and execute tools remotely
|
|
222
231
|
- 📖 **Auto-Generated Docs** - Always up-to-date README and API documentation
|
|
@@ -233,7 +242,7 @@ This open-source registry provides:
|
|
|
233
242
|
|
|
234
243
|
- [🎥 Video: How to add a new MCP server](https://www.youtube.com/watch?v=J_oaDtCoVVo)
|
|
235
244
|
- [🚀 Quick Start](#quick-start)
|
|
236
|
-
- [🐳 Docker Self-Hosting](
|
|
245
|
+
- [🐳 Docker Self-Hosting](#docker-self-hosting)
|
|
237
246
|
- [📦 Install via Package Manager](#install-via-package-manager)
|
|
238
247
|
- [📄 Submit New MCP Servers](#submit-new-mcp-servers)
|
|
239
248
|
- [📖 Development Guide](./docs/DEVELOPMENT.md)
|
|
@@ -304,7 +313,7 @@ Help grow the world's largest open-source MCP registry! Share your AI tools, plu
|
|
|
304
313
|
|
|
305
314
|
- [Fork this repository](https://github.com/toolsdk-ai/toolsdk-mcp-registry/fork)
|
|
306
315
|
- Create `your-mcp-server.json` in [packages/uncategorized](./packages/uncategorized)
|
|
307
|
-
- Submit a PR and join
|
|
316
|
+
- Submit a PR and join 4110+ MCP servers!
|
|
308
317
|
|
|
309
318
|
**3. Get Discovered**
|
|
310
319
|
|
|
@@ -322,9 +331,9 @@ Your MCP server will be:
|
|
|
322
331
|
|
|
323
332
|
## 📋 MCP Servers Directory
|
|
324
333
|
|
|
325
|
-
**
|
|
334
|
+
**4110+ AI Agent Tools, LLM Integrations & Automation Servers**
|
|
326
335
|
|
|
327
|
-
- ✅ **Validated & Tested** (
|
|
336
|
+
- ✅ **Validated & Tested** (711) - Production-ready MCP servers
|
|
328
337
|
- ⚙️ **Community Contributed** (3399) - Requires configuration
|
|
329
338
|
|
|
330
339
|
Browse by category: Developer Tools, AI Agents, Databases, Cloud Platforms, APIs, and more!
|
|
@@ -1899,6 +1908,7 @@ Enhance your development workflow with tools for coding and environment manageme
|
|
|
1899
1908
|
- [✅ deepsource-mcp-server](https://github.com/sapientpants/deepsource-mcp-server): Integrates with DeepSource's code quality platform to provide access to project metrics, issues, and analysis results for monitoring and troubleshooting code quality directly in conversations. (10 tools) (node)
|
|
1900
1909
|
- [✅ freecad-mcp](https://github.com/neka-nat/freecad-mcp): Enables AI-driven CAD modeling by providing a remote procedure call (RPC) server that allows programmatic control of FreeCAD, supporting operations like creating documents, inserting parts, editing objects, and executing Python code for generative design workflows. (10 tools) (python)
|
|
1901
1910
|
- [✅ gistpad-mcp](https://github.com/lostintangent/gistpad-mcp): Transforms GitHub Gists into a personal knowledge management system with specialized handling for daily notes, reusable prompts with frontmatter support, and comprehensive gist operations including creation, updating, archiving, and commenting for version-controlled knowledge storage. (28 tools) (node)
|
|
1911
|
+
- [✅ github-mcp](https://github.com/Seey215/github-mcp): A powerful GitHub automation tool that seamlessly connects AI assistants to your GitHub repositories (2 tools) (node)
|
|
1902
1912
|
- [✅ ios-simulator-mcp](https://github.com/joshuayoes/ios-simulator-mcp): Enables Claude to control iOS simulators for testing and debugging applications by providing tools for UI interaction, element inspection, and device information retrieval through Facebook's IDB tool. (10 tools) (node)
|
|
1903
1913
|
- [✅ it-tools-mcp](https://github.com/wrenchpilot/it-tools-mcp): Provides 50+ developer utilities including cryptographic operations, text processing, data format conversion, network calculations, and encoding functions through a containerized TypeScript server with security features and rate limiting. (119 tools) (node)
|
|
1904
1914
|
- [✅ jnews-mcp-server](https://github.com/juhemcp/jnews-mcp-server): Lightweight Python FastAPI server implementation for streamlined server-side interactions, using modern tooling like uv for dependency management and GitHub Actions for automated testing and deployment. (2 tools) (python)
|
|
@@ -40,6 +40,16 @@ export declare const PackageDetailResponseSchema: z.ZodObject<{
|
|
|
40
40
|
packageVersion: z.ZodOptional<z.ZodString>;
|
|
41
41
|
bin: z.ZodOptional<z.ZodString>;
|
|
42
42
|
binArgs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
43
|
+
remotes: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
44
|
+
type: z.ZodLiteral<"streamable-http">;
|
|
45
|
+
url: z.ZodString;
|
|
46
|
+
}, "strip", z.ZodTypeAny, {
|
|
47
|
+
type: "streamable-http";
|
|
48
|
+
url: string;
|
|
49
|
+
}, {
|
|
50
|
+
type: "streamable-http";
|
|
51
|
+
url: string;
|
|
52
|
+
}>, "many">>;
|
|
43
53
|
key: z.ZodOptional<z.ZodString>;
|
|
44
54
|
name: z.ZodOptional<z.ZodString>;
|
|
45
55
|
description: z.ZodOptional<z.ZodString>;
|
|
@@ -102,8 +112,12 @@ export declare const PackageDetailResponseSchema: z.ZodObject<{
|
|
|
102
112
|
packageVersion?: string | undefined;
|
|
103
113
|
bin?: string | undefined;
|
|
104
114
|
binArgs?: string[] | undefined;
|
|
105
|
-
readme?: string | undefined;
|
|
106
115
|
url?: string | undefined;
|
|
116
|
+
remotes?: {
|
|
117
|
+
type: "streamable-http";
|
|
118
|
+
url: string;
|
|
119
|
+
}[] | undefined;
|
|
120
|
+
readme?: string | undefined;
|
|
107
121
|
license?: string | undefined;
|
|
108
122
|
logo?: string | undefined;
|
|
109
123
|
author?: string | undefined;
|
|
@@ -130,8 +144,12 @@ export declare const PackageDetailResponseSchema: z.ZodObject<{
|
|
|
130
144
|
packageVersion?: string | undefined;
|
|
131
145
|
bin?: string | undefined;
|
|
132
146
|
binArgs?: string[] | undefined;
|
|
133
|
-
readme?: string | undefined;
|
|
134
147
|
url?: string | undefined;
|
|
148
|
+
remotes?: {
|
|
149
|
+
type: "streamable-http";
|
|
150
|
+
url: string;
|
|
151
|
+
}[] | undefined;
|
|
152
|
+
readme?: string | undefined;
|
|
135
153
|
license?: string | undefined;
|
|
136
154
|
logo?: string | undefined;
|
|
137
155
|
author?: string | undefined;
|
|
@@ -163,8 +181,12 @@ export declare const PackageDetailResponseSchema: z.ZodObject<{
|
|
|
163
181
|
packageVersion?: string | undefined;
|
|
164
182
|
bin?: string | undefined;
|
|
165
183
|
binArgs?: string[] | undefined;
|
|
166
|
-
readme?: string | undefined;
|
|
167
184
|
url?: string | undefined;
|
|
185
|
+
remotes?: {
|
|
186
|
+
type: "streamable-http";
|
|
187
|
+
url: string;
|
|
188
|
+
}[] | undefined;
|
|
189
|
+
readme?: string | undefined;
|
|
168
190
|
license?: string | undefined;
|
|
169
191
|
logo?: string | undefined;
|
|
170
192
|
author?: string | undefined;
|
|
@@ -196,8 +218,12 @@ export declare const PackageDetailResponseSchema: z.ZodObject<{
|
|
|
196
218
|
packageVersion?: string | undefined;
|
|
197
219
|
bin?: string | undefined;
|
|
198
220
|
binArgs?: string[] | undefined;
|
|
199
|
-
readme?: string | undefined;
|
|
200
221
|
url?: string | undefined;
|
|
222
|
+
remotes?: {
|
|
223
|
+
type: "streamable-http";
|
|
224
|
+
url: string;
|
|
225
|
+
}[] | undefined;
|
|
226
|
+
readme?: string | undefined;
|
|
201
227
|
license?: string | undefined;
|
|
202
228
|
logo?: string | undefined;
|
|
203
229
|
author?: string | undefined;
|
|
@@ -23,8 +23,12 @@ export declare class PackageSO {
|
|
|
23
23
|
packageVersion?: string | undefined;
|
|
24
24
|
bin?: string | undefined;
|
|
25
25
|
binArgs?: string[] | undefined;
|
|
26
|
-
readme?: string | undefined;
|
|
27
26
|
url?: string | undefined;
|
|
27
|
+
remotes?: {
|
|
28
|
+
type: "streamable-http";
|
|
29
|
+
url: string;
|
|
30
|
+
}[] | undefined;
|
|
31
|
+
readme?: string | undefined;
|
|
28
32
|
license?: string | undefined;
|
|
29
33
|
logo?: string | undefined;
|
|
30
34
|
author?: string | undefined;
|
|
@@ -83,6 +83,16 @@ export declare const MCPServerPackageConfigSchema: z.ZodObject<{
|
|
|
83
83
|
packageVersion: z.ZodOptional<z.ZodString>;
|
|
84
84
|
bin: z.ZodOptional<z.ZodString>;
|
|
85
85
|
binArgs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
86
|
+
remotes: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
87
|
+
type: z.ZodLiteral<"streamable-http">;
|
|
88
|
+
url: z.ZodString;
|
|
89
|
+
}, "strip", z.ZodTypeAny, {
|
|
90
|
+
type: "streamable-http";
|
|
91
|
+
url: string;
|
|
92
|
+
}, {
|
|
93
|
+
type: "streamable-http";
|
|
94
|
+
url: string;
|
|
95
|
+
}>, "many">>;
|
|
86
96
|
key: z.ZodOptional<z.ZodString>;
|
|
87
97
|
name: z.ZodOptional<z.ZodString>;
|
|
88
98
|
description: z.ZodOptional<z.ZodString>;
|
|
@@ -111,8 +121,12 @@ export declare const MCPServerPackageConfigSchema: z.ZodObject<{
|
|
|
111
121
|
packageVersion?: string | undefined;
|
|
112
122
|
bin?: string | undefined;
|
|
113
123
|
binArgs?: string[] | undefined;
|
|
114
|
-
readme?: string | undefined;
|
|
115
124
|
url?: string | undefined;
|
|
125
|
+
remotes?: {
|
|
126
|
+
type: "streamable-http";
|
|
127
|
+
url: string;
|
|
128
|
+
}[] | undefined;
|
|
129
|
+
readme?: string | undefined;
|
|
116
130
|
license?: string | undefined;
|
|
117
131
|
logo?: string | undefined;
|
|
118
132
|
author?: string | undefined;
|
|
@@ -130,8 +144,12 @@ export declare const MCPServerPackageConfigSchema: z.ZodObject<{
|
|
|
130
144
|
packageVersion?: string | undefined;
|
|
131
145
|
bin?: string | undefined;
|
|
132
146
|
binArgs?: string[] | undefined;
|
|
133
|
-
readme?: string | undefined;
|
|
134
147
|
url?: string | undefined;
|
|
148
|
+
remotes?: {
|
|
149
|
+
type: "streamable-http";
|
|
150
|
+
url: string;
|
|
151
|
+
}[] | undefined;
|
|
152
|
+
readme?: string | undefined;
|
|
135
153
|
license?: string | undefined;
|
|
136
154
|
logo?: string | undefined;
|
|
137
155
|
author?: string | undefined;
|
|
@@ -147,6 +165,16 @@ export declare const PackageConfigSchema: z.ZodDiscriminatedUnion<"type", [z.Zod
|
|
|
147
165
|
packageVersion: z.ZodOptional<z.ZodString>;
|
|
148
166
|
bin: z.ZodOptional<z.ZodString>;
|
|
149
167
|
binArgs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
168
|
+
remotes: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
169
|
+
type: z.ZodLiteral<"streamable-http">;
|
|
170
|
+
url: z.ZodString;
|
|
171
|
+
}, "strip", z.ZodTypeAny, {
|
|
172
|
+
type: "streamable-http";
|
|
173
|
+
url: string;
|
|
174
|
+
}, {
|
|
175
|
+
type: "streamable-http";
|
|
176
|
+
url: string;
|
|
177
|
+
}>, "many">>;
|
|
150
178
|
key: z.ZodOptional<z.ZodString>;
|
|
151
179
|
name: z.ZodOptional<z.ZodString>;
|
|
152
180
|
description: z.ZodOptional<z.ZodString>;
|
|
@@ -175,8 +203,12 @@ export declare const PackageConfigSchema: z.ZodDiscriminatedUnion<"type", [z.Zod
|
|
|
175
203
|
packageVersion?: string | undefined;
|
|
176
204
|
bin?: string | undefined;
|
|
177
205
|
binArgs?: string[] | undefined;
|
|
178
|
-
readme?: string | undefined;
|
|
179
206
|
url?: string | undefined;
|
|
207
|
+
remotes?: {
|
|
208
|
+
type: "streamable-http";
|
|
209
|
+
url: string;
|
|
210
|
+
}[] | undefined;
|
|
211
|
+
readme?: string | undefined;
|
|
180
212
|
license?: string | undefined;
|
|
181
213
|
logo?: string | undefined;
|
|
182
214
|
author?: string | undefined;
|
|
@@ -194,8 +226,12 @@ export declare const PackageConfigSchema: z.ZodDiscriminatedUnion<"type", [z.Zod
|
|
|
194
226
|
packageVersion?: string | undefined;
|
|
195
227
|
bin?: string | undefined;
|
|
196
228
|
binArgs?: string[] | undefined;
|
|
197
|
-
readme?: string | undefined;
|
|
198
229
|
url?: string | undefined;
|
|
230
|
+
remotes?: {
|
|
231
|
+
type: "streamable-http";
|
|
232
|
+
url: string;
|
|
233
|
+
}[] | undefined;
|
|
234
|
+
readme?: string | undefined;
|
|
199
235
|
license?: string | undefined;
|
|
200
236
|
logo?: string | undefined;
|
|
201
237
|
author?: string | undefined;
|
|
@@ -43,6 +43,12 @@ export const MCPServerPackageConfigSchema = z
|
|
|
43
43
|
.array(z.string())
|
|
44
44
|
.optional()
|
|
45
45
|
.describe("Binary Arguments to pass to the command, if not provided then it will use an empty array"),
|
|
46
|
+
remotes: z
|
|
47
|
+
.array(z.object({
|
|
48
|
+
type: z.literal("streamable-http"),
|
|
49
|
+
url: z.string().url(),
|
|
50
|
+
}))
|
|
51
|
+
.optional(),
|
|
46
52
|
// if no custom key then would use name
|
|
47
53
|
key: z.string().optional().describe("Unique key for url and slug"),
|
|
48
54
|
name: z
|
|
@@ -32,8 +32,12 @@ export declare function getPackageConfigByKey(key: string): {
|
|
|
32
32
|
packageVersion?: string | undefined;
|
|
33
33
|
bin?: string | undefined;
|
|
34
34
|
binArgs?: string[] | undefined;
|
|
35
|
-
readme?: string | undefined;
|
|
36
35
|
url?: string | undefined;
|
|
36
|
+
remotes?: {
|
|
37
|
+
type: "streamable-http";
|
|
38
|
+
url: string;
|
|
39
|
+
}[] | undefined;
|
|
40
|
+
readme?: string | undefined;
|
|
37
41
|
license?: string | undefined;
|
|
38
42
|
logo?: string | undefined;
|
|
39
43
|
author?: string | undefined;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
|
|
2
|
-
import {
|
|
2
|
+
import type { Transport } from "@modelcontextprotocol/sdk/shared/transport.js";
|
|
3
3
|
import type { MCPServerPackageConfig } from "../../domains/package/package-types";
|
|
4
4
|
export declare function getPackageJSON(packageName: string): any;
|
|
5
5
|
export declare function getMcpClient(mcpServerConfig: MCPServerPackageConfig, env?: Record<string, string>): Promise<{
|
|
@@ -26,6 +26,6 @@ export declare function getMcpClient(mcpServerConfig: MCPServerPackageConfig, en
|
|
|
26
26
|
[x: string]: unknown;
|
|
27
27
|
} | undefined;
|
|
28
28
|
}>;
|
|
29
|
-
transport:
|
|
29
|
+
transport: Transport;
|
|
30
30
|
closeConnection: () => Promise<void>;
|
|
31
31
|
}>;
|
|
@@ -3,6 +3,7 @@ import fs from "node:fs";
|
|
|
3
3
|
import path from "node:path";
|
|
4
4
|
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
|
|
5
5
|
import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js";
|
|
6
|
+
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js";
|
|
6
7
|
import { getDirname } from "./file-util";
|
|
7
8
|
const __dirname = getDirname(import.meta.url);
|
|
8
9
|
export function getPackageJSON(packageName) {
|
|
@@ -77,7 +78,18 @@ async function getPyMcpClient(mcpServerConfig, env) {
|
|
|
77
78
|
});
|
|
78
79
|
return createMcpClient(mcpServerConfig, transport);
|
|
79
80
|
}
|
|
81
|
+
async function getRemoteMcpClient(url, mcpServerConfig) {
|
|
82
|
+
const transport = new StreamableHTTPClientTransport(new URL(url));
|
|
83
|
+
return createMcpClient(mcpServerConfig, transport);
|
|
84
|
+
}
|
|
80
85
|
export async function getMcpClient(mcpServerConfig, env) {
|
|
86
|
+
// Check for remotes first
|
|
87
|
+
if (mcpServerConfig.remotes && mcpServerConfig.remotes.length > 0) {
|
|
88
|
+
const remote = mcpServerConfig.remotes.find((r) => r.type === "streamable-http");
|
|
89
|
+
if (remote) {
|
|
90
|
+
return getRemoteMcpClient(remote.url, mcpServerConfig);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
81
93
|
const { runtime } = mcpServerConfig;
|
|
82
94
|
if (runtime === "python") {
|
|
83
95
|
return getPyMcpClient(mcpServerConfig, env);
|
|
@@ -47477,5 +47477,20 @@
|
|
|
47477
47477
|
"description": "Delete a persistent sandbox and free resources. Call when finished with sandboxes created via sandock_create_sandbox. (sandock_run_code auto-cleans, no need to call this)."
|
|
47478
47478
|
}
|
|
47479
47479
|
}
|
|
47480
|
+
},
|
|
47481
|
+
"github-mcp": {
|
|
47482
|
+
"category": "developer-tools",
|
|
47483
|
+
"path": "developer-tools/github-mcp.json",
|
|
47484
|
+
"validated": true,
|
|
47485
|
+
"tools": {
|
|
47486
|
+
"add": {
|
|
47487
|
+
"name": "add",
|
|
47488
|
+
"description": "Add two numbers"
|
|
47489
|
+
},
|
|
47490
|
+
"list_issues": {
|
|
47491
|
+
"name": "list_issues",
|
|
47492
|
+
"description": "List issues in a GitHub repository"
|
|
47493
|
+
}
|
|
47494
|
+
}
|
|
47480
47495
|
}
|
|
47481
47496
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@toolsdk.ai/registry",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.132",
|
|
4
4
|
"description": "An Open, Structured, and Standard Registry for MCP Servers and Packages.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"mcp",
|
|
@@ -436,6 +436,7 @@
|
|
|
436
436
|
"gistpad-mcp": "0.4.7",
|
|
437
437
|
"git-commands-mcp": "0.1.4",
|
|
438
438
|
"gitee-mcp-server": "0.1.1",
|
|
439
|
+
"github-mcp": "0.0.5",
|
|
439
440
|
"github-repo-mcp": "1.0.3",
|
|
440
441
|
"gologin-mcp": "0.0.9",
|
|
441
442
|
"google-cloud-mcp": "0.1.3",
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"type": "mcp-server",
|
|
3
|
+
"packageName": "github-mcp",
|
|
4
|
+
"description": "A powerful GitHub automation tool that seamlessly connects AI assistants to your GitHub repositories",
|
|
5
|
+
"url": "https://github.com/Seey215/github-mcp",
|
|
6
|
+
"runtime": "node",
|
|
7
|
+
"license": "mit",
|
|
8
|
+
"env": {},
|
|
9
|
+
"remotes": [
|
|
10
|
+
{
|
|
11
|
+
"type": "streamable-http",
|
|
12
|
+
"url": "http://localhost:3001/mcp"
|
|
13
|
+
}
|
|
14
|
+
],
|
|
15
|
+
"name": "Local Remote GitHub MCP Server"
|
|
16
|
+
}
|