@yawlabs/tailscale-mcp 0.10.2 → 0.10.4
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/dist/index.js +13 -6
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -30405,6 +30405,10 @@ async function deployAcl(filePath) {
|
|
|
30405
30405
|
console.error(`ACL validation failed: ${validateRes.error}`);
|
|
30406
30406
|
process.exit(1);
|
|
30407
30407
|
}
|
|
30408
|
+
if (validateRes.rawBody?.trim()) {
|
|
30409
|
+
console.error(`ACL validation failed: ${extractErrorMessage(validateRes.rawBody.trim())}`);
|
|
30410
|
+
process.exit(1);
|
|
30411
|
+
}
|
|
30408
30412
|
const deployRes = await apiPost(`/tailnet/${getTailnet()}/acl`, void 0, {
|
|
30409
30413
|
rawBody: policy,
|
|
30410
30414
|
contentType: "application/hujson",
|
|
@@ -31270,7 +31274,7 @@ var inviteTools = [
|
|
|
31270
31274
|
deviceId: external_exports3.string().describe("The device ID to create an invite for"),
|
|
31271
31275
|
multiUse: external_exports3.boolean().optional().describe("Whether the invite can be used more than once (default: false)"),
|
|
31272
31276
|
allowExitNode: external_exports3.boolean().optional().describe("Whether the invited device can be used as an exit node (default: false)"),
|
|
31273
|
-
email: external_exports3.
|
|
31277
|
+
email: external_exports3.email().optional().describe("Email address to send the invite to")
|
|
31274
31278
|
}),
|
|
31275
31279
|
handler: async (input) => {
|
|
31276
31280
|
const body = {};
|
|
@@ -31358,7 +31362,7 @@ var inviteTools = [
|
|
|
31358
31362
|
openWorldHint: true
|
|
31359
31363
|
},
|
|
31360
31364
|
inputSchema: external_exports3.object({
|
|
31361
|
-
email: external_exports3.
|
|
31365
|
+
email: external_exports3.email().optional().describe("Email address to send the invite to"),
|
|
31362
31366
|
role: external_exports3.enum(["member", "admin", "it-admin", "network-admin", "billing-admin", "auditor"]).optional().describe("Role to assign to the invited user (default: member)")
|
|
31363
31367
|
}),
|
|
31364
31368
|
handler: async (input) => {
|
|
@@ -32174,12 +32178,15 @@ var tailnetTools = [
|
|
|
32174
32178
|
openWorldHint: true
|
|
32175
32179
|
},
|
|
32176
32180
|
inputSchema: external_exports3.object({
|
|
32177
|
-
account: external_exports3.object({ email: external_exports3.
|
|
32178
|
-
support: external_exports3.object({ email: external_exports3.
|
|
32179
|
-
security: external_exports3.object({ email: external_exports3.
|
|
32181
|
+
account: external_exports3.object({ email: external_exports3.email() }).optional().describe("Account contact email"),
|
|
32182
|
+
support: external_exports3.object({ email: external_exports3.email() }).optional().describe("Support contact email"),
|
|
32183
|
+
security: external_exports3.object({ email: external_exports3.email() }).optional().describe("Security contact email")
|
|
32180
32184
|
}),
|
|
32181
32185
|
handler: async (input) => {
|
|
32182
32186
|
const types = ["account", "support", "security"].filter((t) => input[t] !== void 0);
|
|
32187
|
+
if (types.length === 0) {
|
|
32188
|
+
throw new Error("No fields to update. Provide at least one of: account, support, security.");
|
|
32189
|
+
}
|
|
32183
32190
|
const results = await Promise.all(
|
|
32184
32191
|
types.map(async (contactType) => {
|
|
32185
32192
|
const res = await apiPatch(
|
|
@@ -32512,7 +32519,7 @@ var webhookTools = [
|
|
|
32512
32519
|
];
|
|
32513
32520
|
|
|
32514
32521
|
// src/index.ts
|
|
32515
|
-
var version2 = true ? "0.10.
|
|
32522
|
+
var version2 = true ? "0.10.4" : (await null).createRequire(import.meta.url)("../package.json").version;
|
|
32516
32523
|
var subcommand = process.argv[2];
|
|
32517
32524
|
if (subcommand === "deploy-acl") {
|
|
32518
32525
|
const filePath = process.argv[3];
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@yawlabs/tailscale-mcp",
|
|
3
|
-
"version": "0.10.
|
|
3
|
+
"version": "0.10.4",
|
|
4
4
|
"description": "Tailscale MCP server for managing your tailnet from AI assistants",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "YawLabs <contact@yaw.sh>",
|
|
@@ -51,6 +51,6 @@
|
|
|
51
51
|
"zod": "^4.3.6"
|
|
52
52
|
},
|
|
53
53
|
"engines": {
|
|
54
|
-
"node": ">=
|
|
54
|
+
"node": ">=20"
|
|
55
55
|
}
|
|
56
56
|
}
|