@standardbeagle/slop-mcp 0.1.0

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/bin.js ADDED
@@ -0,0 +1,26 @@
1
+ #!/usr/bin/env node
2
+
3
+ const { spawn } = require("child_process");
4
+ const { getBinaryPath } = require("./index.js");
5
+
6
+ try {
7
+ const binaryPath = getBinaryPath();
8
+ const args = process.argv.slice(2);
9
+
10
+ const child = spawn(binaryPath, args, {
11
+ stdio: "inherit",
12
+ shell: false,
13
+ });
14
+
15
+ child.on("error", (err) => {
16
+ console.error(`Failed to start slop-mcp: ${err.message}`);
17
+ process.exit(1);
18
+ });
19
+
20
+ child.on("close", (code) => {
21
+ process.exit(code ?? 0);
22
+ });
23
+ } catch (err) {
24
+ console.error(err.message);
25
+ process.exit(1);
26
+ }
File without changes
Binary file
Binary file
Binary file
Binary file
package/index.js ADDED
@@ -0,0 +1,50 @@
1
+ const os = require("os");
2
+ const path = require("path");
3
+ const fs = require("fs");
4
+
5
+ const BINARY_NAME = "slop-mcp";
6
+
7
+ function getPlatformInfo() {
8
+ const platform = os.platform();
9
+ const arch = os.arch();
10
+
11
+ let goos;
12
+ if (platform === "darwin") {
13
+ goos = "darwin";
14
+ } else if (platform === "linux") {
15
+ goos = "linux";
16
+ } else if (platform === "win32") {
17
+ goos = "windows";
18
+ } else {
19
+ throw new Error(`Unsupported platform: ${platform}`);
20
+ }
21
+
22
+ let goarch;
23
+ if (arch === "x64") {
24
+ goarch = "amd64";
25
+ } else if (arch === "arm64") {
26
+ goarch = "arm64";
27
+ } else {
28
+ throw new Error(`Unsupported architecture: ${arch}`);
29
+ }
30
+
31
+ return { goos, goarch };
32
+ }
33
+
34
+ function getBinaryPath() {
35
+ const { goos, goarch } = getPlatformInfo();
36
+ const ext = goos === "windows" ? ".exe" : "";
37
+ const binaryName = `${BINARY_NAME}-${goos}-${goarch}${ext}`;
38
+
39
+ // Check for bundled binary first
40
+ const bundledPath = path.join(__dirname, "binaries", binaryName);
41
+ if (fs.existsSync(bundledPath)) {
42
+ return bundledPath;
43
+ }
44
+
45
+ throw new Error(
46
+ `Binary not found: ${binaryName}. Please reinstall the package.`
47
+ );
48
+ }
49
+
50
+ module.exports = { getBinaryPath, getPlatformInfo };
package/install.js ADDED
@@ -0,0 +1,20 @@
1
+ const fs = require("fs");
2
+ const path = require("path");
3
+ const os = require("os");
4
+
5
+ // Make the binary executable on Unix systems
6
+ if (os.platform() !== "win32") {
7
+ const binariesDir = path.join(__dirname, "binaries");
8
+
9
+ if (fs.existsSync(binariesDir)) {
10
+ const files = fs.readdirSync(binariesDir);
11
+ for (const file of files) {
12
+ const filePath = path.join(binariesDir, file);
13
+ try {
14
+ fs.chmodSync(filePath, 0o755);
15
+ } catch (err) {
16
+ // Ignore permission errors
17
+ }
18
+ }
19
+ }
20
+ }
package/package.json ADDED
@@ -0,0 +1,40 @@
1
+ {
2
+ "name": "@standardbeagle/slop-mcp",
3
+ "version": "0.1.0",
4
+ "description": "MCP server for orchestrating multiple MCP servers with progressive tool discovery",
5
+ "main": "index.js",
6
+ "bin": {
7
+ "slop-mcp": "bin.js"
8
+ },
9
+ "scripts": {
10
+ "postinstall": "node install.js"
11
+ },
12
+ "repository": {
13
+ "type": "git",
14
+ "url": "git+https://github.com/standardbeagle/slop-mcp.git"
15
+ },
16
+ "keywords": [
17
+ "mcp",
18
+ "model-context-protocol",
19
+ "ai",
20
+ "llm",
21
+ "tools",
22
+ "anthropic",
23
+ "claude"
24
+ ],
25
+ "author": "StandardBeagle",
26
+ "license": "MIT",
27
+ "bugs": {
28
+ "url": "https://github.com/standardbeagle/slop-mcp/issues"
29
+ },
30
+ "homepage": "https://github.com/standardbeagle/slop-mcp#readme",
31
+ "engines": {
32
+ "node": ">=16"
33
+ },
34
+ "files": [
35
+ "bin.js",
36
+ "index.js",
37
+ "install.js",
38
+ "binaries/*"
39
+ ]
40
+ }