storkai 1.0.4 → 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.
Files changed (2) hide show
  1. package/bin/storkai.js +39 -2
  2. package/package.json +1 -1
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.3";
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") {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "storkai",
3
- "version": "1.0.4",
3
+ "version": "1.0.5",
4
4
  "description": "The MCP server for MCP servers. Search, discover, and configure MCP servers from inside your IDE.",
5
5
  "bin": {
6
6
  "storkai": "bin/storkai.js"