storkai 1.0.3 → 1.0.5
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 +24 -23
- package/bin/storkai.js +39 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,50 +1,50 @@
|
|
|
1
1
|
# Stork MCP — The MCP Server for MCP Servers
|
|
2
2
|
|
|
3
|
-
Search, discover, evaluate, and configure MCP servers from inside your IDE.
|
|
3
|
+
Search, discover, evaluate, and configure MCP servers from inside your IDE. One line of config. No install needed.
|
|
4
4
|
|
|
5
5
|
**[stork.ai/mcp](https://www.stork.ai/mcp)**
|
|
6
6
|
|
|
7
|
-
##
|
|
7
|
+
## Quick Start (Recommended)
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
Add to `~/.cursor/mcp.json`:
|
|
9
|
+
Add one line to your MCP config. Works with Cursor, Claude Desktop, VS Code, Zed, and any client that supports remote MCP servers.
|
|
12
10
|
|
|
13
11
|
```json
|
|
14
12
|
{
|
|
15
13
|
"mcpServers": {
|
|
16
14
|
"stork": {
|
|
17
|
-
"
|
|
18
|
-
"args": ["-y", "storkai"]
|
|
15
|
+
"url": "https://mcp.stork.ai/mcp"
|
|
19
16
|
}
|
|
20
17
|
}
|
|
21
18
|
}
|
|
22
19
|
```
|
|
23
20
|
|
|
24
|
-
### Claude
|
|
21
|
+
### Claude Code
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
claude mcp add stork --url https://mcp.stork.ai/mcp
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## Alternative: Local Install (offline use)
|
|
28
|
+
|
|
29
|
+
If you prefer running locally:
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
npm install -g storkai
|
|
33
|
+
```
|
|
25
34
|
|
|
26
|
-
|
|
35
|
+
Then add to your MCP config:
|
|
27
36
|
|
|
28
37
|
```json
|
|
29
38
|
{
|
|
30
39
|
"mcpServers": {
|
|
31
40
|
"stork": {
|
|
32
|
-
"command": "
|
|
33
|
-
"args": ["-y", "storkai"]
|
|
41
|
+
"command": "storkai"
|
|
34
42
|
}
|
|
35
43
|
}
|
|
36
44
|
}
|
|
37
45
|
```
|
|
38
46
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
```bash
|
|
42
|
-
claude mcp add stork -- npx -y storkai
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
### VS Code
|
|
46
|
-
|
|
47
|
-
Add to `~/.vscode/mcp.json`:
|
|
47
|
+
Or use npx (auto-updates):
|
|
48
48
|
|
|
49
49
|
```json
|
|
50
50
|
{
|
|
@@ -59,7 +59,7 @@ Add to `~/.vscode/mcp.json`:
|
|
|
59
59
|
|
|
60
60
|
## What can you do with Stork?
|
|
61
61
|
|
|
62
|
-
Once
|
|
62
|
+
Once connected, just ask your AI assistant:
|
|
63
63
|
|
|
64
64
|
- "Find me an MCP server that can manage Jira tickets"
|
|
65
65
|
- "Show me MCP servers for database queries"
|
|
@@ -80,9 +80,10 @@ Once installed, just ask your AI assistant:
|
|
|
80
80
|
|
|
81
81
|
## Why Stork?
|
|
82
82
|
|
|
83
|
-
- **One
|
|
84
|
-
- **
|
|
83
|
+
- **One line, no install**: Remote URL works instantly - no npm, no download
|
|
84
|
+
- **14,000+ MCP servers**: Indexed from the Official MCP Registry, Smithery, and more
|
|
85
85
|
- **Trust signals**: See maintenance status, GitHub stars, downloads, and security scores
|
|
86
|
+
- **Ready-to-paste configs**: Get correct JSON config for any IDE
|
|
86
87
|
- **Tool inventory**: Know exactly what tools each server exposes before installing
|
|
87
88
|
|
|
88
89
|
## License
|
package/bin/storkai.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
var fs = require("fs");
|
|
3
3
|
var SERVER_NAME = "storkai";
|
|
4
|
-
var SERVER_VERSION = "1.0.
|
|
4
|
+
var SERVER_VERSION = "1.0.5";
|
|
5
5
|
var CONVEX_URL = process.env.STORK_CONVEX_URL || "https://expert-egret-407.convex.cloud";
|
|
6
6
|
|
|
7
7
|
function convexQuery(p, a) {
|
|
@@ -82,7 +82,44 @@ process.stdin.on("data", function(chunk) {
|
|
|
82
82
|
if (!id && id !== 0) continue;
|
|
83
83
|
|
|
84
84
|
if (method === "initialize") {
|
|
85
|
-
send({ jsonrpc: "2.0", id: id, result: { protocolVersion: "2024-11-05", capabilities: { tools: {} }, serverInfo: { name: SERVER_NAME, version: SERVER_VERSION } } });
|
|
85
|
+
send({ jsonrpc: "2.0", id: id, result: { protocolVersion: "2024-11-05", capabilities: { tools: {}, prompts: {}, resources: {} }, serverInfo: { name: SERVER_NAME, version: SERVER_VERSION } } });
|
|
86
|
+
continue;
|
|
87
|
+
}
|
|
88
|
+
if (method === "prompts/list") {
|
|
89
|
+
send({ jsonrpc: "2.0", id: id, result: { prompts: [
|
|
90
|
+
{ name: "find_mcp_server", description: "Find an MCP server for a specific task", arguments: [{ name: "description", description: "What you need the MCP server to do", required: true }] },
|
|
91
|
+
{ name: "compare_mcp_servers", description: "Compare MCP servers for a use case", arguments: [{ name: "servers", description: "Server names or slugs to compare", required: true }] },
|
|
92
|
+
] } });
|
|
93
|
+
continue;
|
|
94
|
+
}
|
|
95
|
+
if (method === "prompts/get") {
|
|
96
|
+
var pn = (p.msg.params || {}).name;
|
|
97
|
+
var pa = (p.msg.params || {}).arguments || {};
|
|
98
|
+
if (pn === "find_mcp_server") {
|
|
99
|
+
send({ jsonrpc: "2.0", id: id, result: { messages: [{ role: "user", content: { type: "text", text: "Find me an MCP server that can: " + (pa.description || "help with my task") + ". Show me the top 3 results with trust scores, tools, and install instructions." } }] } });
|
|
100
|
+
} else if (pn === "compare_mcp_servers") {
|
|
101
|
+
send({ jsonrpc: "2.0", id: id, result: { messages: [{ role: "user", content: { type: "text", text: "Compare these MCP servers: " + (pa.servers || "") + ". Show their tools, trust scores, transport types, and which one you recommend." } }] } });
|
|
102
|
+
} else {
|
|
103
|
+
send({ jsonrpc: "2.0", id: id, error: { code: -32602, message: "Unknown prompt" } });
|
|
104
|
+
}
|
|
105
|
+
continue;
|
|
106
|
+
}
|
|
107
|
+
if (method === "resources/list") {
|
|
108
|
+
send({ jsonrpc: "2.0", id: id, result: { resources: [
|
|
109
|
+
{ uri: "stork://categories", name: "MCP Server Categories", description: "List of all MCP server categories with server counts", mimeType: "application/json" },
|
|
110
|
+
] } });
|
|
111
|
+
continue;
|
|
112
|
+
}
|
|
113
|
+
if (method === "resources/read") {
|
|
114
|
+
if ((p.msg.params || {}).uri === "stork://categories") {
|
|
115
|
+
convexQuery("mcpServers:listServerFilters", {}).then(function(r) {
|
|
116
|
+
send({ jsonrpc: "2.0", id: id, result: { contents: [{ uri: "stork://categories", mimeType: "application/json", text: JSON.stringify(r, null, 2) }] } });
|
|
117
|
+
}).catch(function(err) {
|
|
118
|
+
send({ jsonrpc: "2.0", id: id, error: { code: -32603, message: err.message } });
|
|
119
|
+
});
|
|
120
|
+
} else {
|
|
121
|
+
send({ jsonrpc: "2.0", id: id, error: { code: -32602, message: "Unknown resource" } });
|
|
122
|
+
}
|
|
86
123
|
continue;
|
|
87
124
|
}
|
|
88
125
|
if (method === "tools/list") {
|