@sgpdirectory/mcp 1.0.1 → 1.0.3
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 +1 -1
- package/package.json +4 -3
- package/scripts/1-gen-key.sh +5 -0
- package/scripts/2-gen-dns.sh +9 -0
- package/scripts/3-login-dns.sh +12 -0
- package/scripts/4-publish.sh +13 -0
- package/scripts/smoke-test.js +1 -1
- package/server.json +13 -16
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# @sgpdirectory/mcp
|
|
2
2
|
|
|
3
|
-
Official local MCP (Model Context Protocol) wrapper for the `sgpdirectory` remote server.
|
|
3
|
+
Official local MCP (Model Context Protocol) wrapper for the `sgpdirectory` remote server. Singapore business directory: search entities, UENs, and SSIC industry classifications.
|
|
4
4
|
|
|
5
5
|
This package provides a standard `stdio` interface compatible with local MCP clients (like Claude Desktop and Cursor), proxying requests securely to the remote HTTP streamable sgpdirectory server (`https://mcp.sgpdirectory.com/mcp`).
|
|
6
6
|
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sgpdirectory/mcp",
|
|
3
|
-
"version": "1.0.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "1.0.3",
|
|
4
|
+
"description": "Singapore business directory. Search entities, UENs, and SSIC industry classifications.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"scripts": {
|
|
7
7
|
"start": "node ./index.js",
|
|
@@ -19,5 +19,6 @@
|
|
|
19
19
|
},
|
|
20
20
|
"publishConfig": {
|
|
21
21
|
"access": "public"
|
|
22
|
-
}
|
|
22
|
+
},
|
|
23
|
+
"mcpName": "com.sgpdirectory/mcp"
|
|
23
24
|
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Variables
|
|
2
|
+
DOMAIN="sgpdirectory.com"
|
|
3
|
+
KEY_FILE="/tmp/sgpdirectory-mcp-dns-key.pem"
|
|
4
|
+
|
|
5
|
+
# Generate keypair
|
|
6
|
+
#openssl genpkey -algorithm Ed25519 -out $KEY_FILE
|
|
7
|
+
|
|
8
|
+
# Get public key for DNS record
|
|
9
|
+
echo "$DOMAIN. IN TXT \"v=MCPv1; k=ed25519; p=$(openssl pkey -in $KEY_FILE -pubout -outform DER | tail -c 32 | base64)\""
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# Variables
|
|
2
|
+
DOMAIN="sgpdirectory.com"
|
|
3
|
+
KEY_FILE="/tmp/sgpdirectory-mcp-dns-key.pem"
|
|
4
|
+
|
|
5
|
+
# Generate keypair
|
|
6
|
+
#openssl genpkey -algorithm Ed25519 -out $KEY_FILE
|
|
7
|
+
|
|
8
|
+
# Get public key for DNS record
|
|
9
|
+
#echo "$DOMAIN. IN TXT \"v=MCPv1; k=ed25519; p=$(openssl pkey -in $KEY_FILE -pubout -outform DER | tail -c 32 | base64)\""
|
|
10
|
+
|
|
11
|
+
# Add the TXT record to your DNS, then login
|
|
12
|
+
mcp-publisher login dns --domain $DOMAIN --private-key $(openssl pkey -in $KEY_FILE -noout -text | grep -A3 "priv:" | tail -n +2 | tr -d ' :\n')
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
|
|
3
|
+
# Ensure we're in the project root
|
|
4
|
+
cd "$(dirname "$0")/.."
|
|
5
|
+
|
|
6
|
+
# Publish to NPM
|
|
7
|
+
echo "📦 Publishing to npmjs.com..."
|
|
8
|
+
npm publish --access public
|
|
9
|
+
|
|
10
|
+
# Publish to MCP Registry
|
|
11
|
+
echo "🚀 Publishing to registry.modelcontextprotocol.io..."
|
|
12
|
+
# mcp-publisher publish uses the server.json file to update the MCP registry
|
|
13
|
+
mcp-publisher publish server.json
|
package/scripts/smoke-test.js
CHANGED
package/server.json
CHANGED
|
@@ -1,44 +1,41 @@
|
|
|
1
1
|
{
|
|
2
|
-
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-
|
|
3
|
-
"name": "
|
|
4
|
-
"description": "
|
|
5
|
-
"status": "active",
|
|
2
|
+
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
|
|
3
|
+
"name": "com.sgpdirectory/mcp",
|
|
4
|
+
"description": "Singapore business directory. Search entities, UENs, and SSIC industry classifications.",
|
|
6
5
|
"repository": {
|
|
7
6
|
"url": "https://github.com/sgpdirectory/sgpdirectory-mcp-package",
|
|
8
7
|
"source": "github"
|
|
9
8
|
},
|
|
10
|
-
"version": "1.0.
|
|
9
|
+
"version": "1.0.3",
|
|
11
10
|
"remotes": [
|
|
12
11
|
{
|
|
13
12
|
"type": "streamable-http",
|
|
14
13
|
"url": "https://mcp.sgpdirectory.com/mcp",
|
|
15
|
-
"
|
|
14
|
+
"environmentVariables": [
|
|
16
15
|
{
|
|
17
16
|
"name": "SGP_DIRECTORY_API_KEY",
|
|
18
17
|
"description": "Your API key for the service",
|
|
19
|
-
"
|
|
20
|
-
"
|
|
21
|
-
"is_secret": true
|
|
18
|
+
"isRequired": false,
|
|
19
|
+
"isSecret": true
|
|
22
20
|
}
|
|
23
21
|
]
|
|
24
22
|
}
|
|
25
23
|
],
|
|
26
24
|
"packages": [
|
|
27
25
|
{
|
|
28
|
-
"
|
|
29
|
-
"
|
|
26
|
+
"registryType": "npm",
|
|
27
|
+
"registryBaseUrl": "https://registry.npmjs.org",
|
|
30
28
|
"identifier": "@sgpdirectory/mcp",
|
|
31
|
-
"version": "1.0.
|
|
29
|
+
"version": "1.0.3",
|
|
32
30
|
"transport": {
|
|
33
31
|
"type": "stdio"
|
|
34
32
|
},
|
|
35
|
-
"
|
|
33
|
+
"environmentVariables": [
|
|
36
34
|
{
|
|
37
35
|
"name": "SGP_DIRECTORY_API_KEY",
|
|
38
36
|
"description": "Your API key for the service",
|
|
39
|
-
"
|
|
40
|
-
"
|
|
41
|
-
"is_secret": true
|
|
37
|
+
"isRequired": false,
|
|
38
|
+
"isSecret": true
|
|
42
39
|
}
|
|
43
40
|
]
|
|
44
41
|
}
|