@filiksyos/mcptoskill 0.2.8 → 0.3.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/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # mcptoskill
2
2
 
3
- `mcptoskill` connects to any remote MCP server, discovers its tools, and generates an OpenClaw skill — letting you wire any MCP-compatible service into your AI agent environment with a single command.
3
+ `mcptoskill` connects to any remote MCP server, discovers its tools, and generates an OpenClaw or Hermes skill — letting you wire any MCP-compatible service into your AI agent environment with a single command.
4
4
 
5
5
  ---
6
6
 
@@ -14,7 +14,7 @@
14
14
  **Usage** — full command signature:
15
15
 
16
16
  ```
17
- npx @filiksyos/mcptoskill <mcp-server-url> [--header "Key: Value"] [--name=<skill-name>] [--out=<output-dir>] [--skill-key=<key>]
17
+ npx @filiksyos/mcptoskill <mcp-server-url> [--target=openclaw|hermes] [--header "Key: Value"] [--name=<skill-name>] [--out=<output-dir>] [--skill-key=<key>]
18
18
  ```
19
19
 
20
20
  **Flags**
@@ -22,10 +22,11 @@ npx @filiksyos/mcptoskill <mcp-server-url> [--header "Key: Value"] [--name=<skil
22
22
  | Flag | Description |
23
23
  |---|---|
24
24
  | `<url>` | MCP server endpoint URL (required) |
25
+ | `--target` | Output target: `openclaw` (default) or `hermes` |
25
26
  | `--header "Key: Value"` | Add an HTTP header (repeatable for multiple headers) |
26
27
  | `--skill-key=<key>` | *(Deprecated)* Legacy skill key from mcptoskill.com. Use local OAuth instead. |
27
28
  | `--name=<name>` | Override the auto-generated skill name |
28
- | `--out=<dir>` | Output directory (default: `~/.openclaw/skills/`) |
29
+ | `--out=<dir>` | Output directory (default: `~/.openclaw/skills/` for OpenClaw, `~/.hermes/skills/mcptoskill/` for Hermes) |
29
30
 
30
31
  **Examples**
31
32
 
@@ -35,7 +36,13 @@ npx @filiksyos/mcptoskill <mcp-server-url> [--header "Key: Value"] [--name=<skil
35
36
  npx @filiksyos/mcptoskill https://mcp.context7.com/mcp
36
37
  ```
37
38
 
38
- 2. Local OAuth (Notion, PostHog) run the command, follow prompts:
39
+ 2. Hermes Agent generate a skill for Hermes (auto-discovers from `~/.hermes/skills/`):
40
+
41
+ ```
42
+ npx @filiksyos/mcptoskill https://mcp.context7.com/mcp --target=hermes
43
+ ```
44
+
45
+ 3. Local OAuth (Notion, PostHog) — run the command, follow prompts:
39
46
 
40
47
  ```
41
48
  npx @filiksyos/mcptoskill https://mcp.notion.com/mcp
@@ -43,19 +50,19 @@ npx @filiksyos/mcptoskill https://mcp.notion.com/mcp
43
50
 
44
51
  The CLI prints an auth URL. Open it in your browser, complete OAuth, then copy the redirect URL from the address bar (it will fail to load — that's fine) and paste it into the terminal. Tokens are saved locally to `~/.openclaw/mcptoskill/tokens/`.
45
52
 
46
- 3. Supabase (local OAuth) — same flow as Notion, no env vars needed:
53
+ 4. Supabase (local OAuth) — same flow as Notion, no env vars needed:
47
54
 
48
55
  ```
49
56
  npx @filiksyos/mcptoskill https://mcp.supabase.com/mcp
50
57
  ```
51
58
 
52
- 4. Supabase (manual Bearer token):
59
+ 5. Supabase (manual Bearer token):
53
60
 
54
61
  ```
55
62
  npx @filiksyos/mcptoskill "https://mcp.supabase.com/mcp?project_ref=YOUR_REF" --header "Authorization: Bearer YOUR_TOKEN"
56
63
  ```
57
64
 
58
- 5. Exa MCP (key in URL):
65
+ 6. Exa MCP (key in URL):
59
66
 
60
67
  ```
61
68
  npx @filiksyos/mcptoskill "https://mcp.exa.ai/mcp?exaApiKey=YOUR_KEY"
@@ -63,11 +70,18 @@ npx @filiksyos/mcptoskill "https://mcp.exa.ai/mcp?exaApiKey=YOUR_KEY"
63
70
 
64
71
  **VPS / headless** — Run the CLI on a remote machine. When prompted, open the auth URL on your laptop, complete OAuth, then copy the redirect URL from the address bar and paste it into the SSH terminal. No server needs to listen on localhost.
65
72
 
66
- **What gets generated** — two files are created inside `~/.openclaw/skills/<skill-name>/`:
73
+ **What gets generated** — two files are created:
67
74
 
68
- - `SKILL.md` — the OpenClaw skill definition with tool documentation
75
+ - `SKILL.md` — the skill definition with tool documentation
69
76
  - `scripts/<skill-name>.sh` — a shell script that calls the MCP server via curl
70
77
 
78
+ Output location depends on `--target` and `--out`:
79
+
80
+ - **OpenClaw** (default): `~/.openclaw/skills/<skill-name>/`
81
+ - **Hermes** (`--target=hermes`): `~/.hermes/skills/mcptoskill/<skill-name>/`
82
+
83
+ Hermes auto-discovers skills from `~/.hermes/skills/`; no config file needed. The agent runs the script via terminal when it needs to call tools. No `pip install hermes-agent[mcp]` needed for mcptoskill skills.
84
+
71
85
  **Skill visibility** — Generated skills no longer declare `requires.bins: ["curl"]` because OpenClaw checks bins against the gateway process PATH at load time; in systemd/Docker/minimal environments, curl is often not found there, causing skills to be filtered out. The script runs in the agent's execution context where curl is typically available.
72
86
 
73
87
  ---
@@ -1,4 +1,5 @@
1
1
  import type { McpClientResult } from "./client.js";
2
+ export type Target = "openclaw" | "hermes";
2
3
  export interface OAuthTokenInfo {
3
4
  access_token: string;
4
5
  refresh_token: string;
@@ -18,5 +19,5 @@ export interface GeneratedSkill {
18
19
  skillMd: string;
19
20
  shellScript: string;
20
21
  }
21
- export declare function generate(result: McpClientResult, nameOverride?: string, oauth?: OAuthTokenInfo): GeneratedSkill;
22
+ export declare function generate(result: McpClientResult, nameOverride?: string, oauth?: OAuthTokenInfo, target?: Target): GeneratedSkill;
22
23
  //# sourceMappingURL=generator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAmB,MAAM,aAAa,CAAC;AAEpE,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,OAAO,GAAG,MAAM,CAAC;IACjC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAiaD,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,QAAQ,CACtB,MAAM,EAAE,eAAe,EACvB,YAAY,CAAC,EAAE,MAAM,EACrB,KAAK,CAAC,EAAE,cAAc,GACrB,cAAc,CAShB"}
1
+ {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAmB,MAAM,aAAa,CAAC;AAEpE,MAAM,MAAM,MAAM,GAAG,UAAU,GAAG,QAAQ,CAAC;AAE3C,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,OAAO,GAAG,MAAM,CAAC;IACjC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AA0cD,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,QAAQ,CACtB,MAAM,EAAE,eAAe,EACvB,YAAY,CAAC,EAAE,MAAM,EACrB,KAAK,CAAC,EAAE,cAAc,EACtB,MAAM,GAAE,MAAmB,GAC1B,cAAc,CAShB"}
package/dist/generator.js CHANGED
@@ -11,8 +11,15 @@ function buildExampleArgs(params) {
11
11
  }
12
12
  return `'${JSON.stringify(example)}'`;
13
13
  }
14
- function generateSkillMd(result, skillName) {
14
+ function getScriptPathPrefix(skillName, target) {
15
+ return target === "hermes"
16
+ ? `$HOME/.hermes/skills/mcptoskill/${skillName}`
17
+ : `$HOME/.openclaw/skills/${skillName}`;
18
+ }
19
+ function generateSkillMd(result, skillName, target) {
15
20
  const { serverInfo, tools, serverUrl } = result;
21
+ const scriptPathPrefix = getScriptPathPrefix(skillName, target);
22
+ const scriptPath = `${scriptPathPrefix}/scripts/${skillName}.sh`;
16
23
  const triggerPhrases = tools
17
24
  .map((t) => t.name.replace(/-/g, " "))
18
25
  .join(", ");
@@ -31,24 +38,56 @@ function generateSkillMd(result, skillName) {
31
38
  "",
32
39
  ...(paramLines.length > 0 ? ["**Parameters:**", ...paramLines, ""] : []),
33
40
  "```bash",
34
- `$HOME/.openclaw/skills/${skillName}/scripts/${skillName}.sh ${t.name} ${exampleArgs}`,
41
+ `${scriptPath} ${t.name} ${exampleArgs}`,
35
42
  "```",
36
43
  ].join("\n");
37
44
  })
38
45
  .join("\n\n");
39
- // requires.bins: [] — don't require curl; gateway's PATH at load time is often
40
- // minimal (systemd/Docker), so bin checks fail. Script runs in agent context.
41
- // always: true — bypass eligibility checks so skill reliably appears in list.
42
- const metadataJson = JSON.stringify({
43
- clawdbot: {},
44
- openclaw: { requires: { bins: [] }, always: true },
45
- });
46
46
  const desc = `${serverInfo.instructions ?? `Use ${serverInfo.name} tools.`} Triggers on: ${triggerPhrases}.`;
47
47
  const escapedDesc = desc
48
48
  .replace(/\\/g, "\\\\")
49
49
  .replace(/"/g, '\\"')
50
50
  .replace(/\n/g, "\\n")
51
51
  .replace(/\r/g, "\\r");
52
+ if (target === "hermes") {
53
+ const toolNames = tools.map((t) => t.name);
54
+ const metadataJson = JSON.stringify({
55
+ hermes: { tags: toolNames, category: "mcptoskill" },
56
+ });
57
+ return [
58
+ "---",
59
+ `name: ${skillName}`,
60
+ `description: "${escapedDesc}"`,
61
+ `version: 1.0.0`,
62
+ `author: mcptoskill`,
63
+ `license: MIT`,
64
+ `metadata: ${metadataJson}`,
65
+ "---",
66
+ "",
67
+ `# ${serverInfo.name}`,
68
+ "",
69
+ serverInfo.instructions ?? "",
70
+ "",
71
+ "## Quick Start",
72
+ "",
73
+ "```bash",
74
+ `${scriptPath} <tool-name> '<json-args>'`,
75
+ "```",
76
+ "",
77
+ "## Tools",
78
+ "",
79
+ toolDocs,
80
+ ]
81
+ .join("\n")
82
+ .trim() + "\n";
83
+ }
84
+ // OpenClaw: requires.bins: [] — don't require curl; gateway's PATH at load time is often
85
+ // minimal (systemd/Docker), so bin checks fail. Script runs in agent context.
86
+ // always: true — bypass eligibility checks so skill reliably appears in list.
87
+ const metadataJson = JSON.stringify({
88
+ clawdbot: {},
89
+ openclaw: { requires: { bins: [] }, always: true },
90
+ });
52
91
  return [
53
92
  "---",
54
93
  `name: ${skillName}`,
@@ -65,7 +104,7 @@ function generateSkillMd(result, skillName) {
65
104
  "## Quick Start",
66
105
  "",
67
106
  "```bash",
68
- `$HOME/.openclaw/skills/${skillName}/scripts/${skillName}.sh <tool-name> '<json-args>'`,
107
+ `${scriptPath} <tool-name> '<json-args>'`,
69
108
  "```",
70
109
  "",
71
110
  "## Tools",
@@ -383,11 +422,11 @@ function generateProxiedRefreshFunction(oauth) {
383
422
  "}",
384
423
  ];
385
424
  }
386
- export function generate(result, nameOverride, oauth) {
425
+ export function generate(result, nameOverride, oauth, target = "openclaw") {
387
426
  const skillName = nameOverride ?? slugify(result.serverInfo.name);
388
427
  return {
389
428
  skillName,
390
- skillMd: generateSkillMd(result, skillName),
429
+ skillMd: generateSkillMd(result, skillName, target),
391
430
  shellScript: oauth
392
431
  ? generateOAuthShellScript(result, skillName, oauth)
393
432
  : generateStaticShellScript(result, skillName),
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,16 +1,19 @@
1
1
  #!/usr/bin/env node
2
2
  import { mkdir, writeFile, chmod, readFile, copyFile } from "node:fs/promises";
3
- import { join, resolve } from "node:path";
3
+ import { join } from "node:path";
4
4
  import { homedir } from "node:os";
5
5
  import { existsSync } from "node:fs";
6
6
  import { connectAndDiscover } from "./client.js";
7
7
  import { generate } from "./generator.js";
8
8
  import { getProviderByMcpUrl } from "./providers.js";
9
9
  import { runLocalOAuth } from "./oauth.js";
10
+ import { promptAuth, promptTarget, promptApiKey } from "./prompts.js";
10
11
  const OPENCLAW_DIR = join(homedir(), ".openclaw");
11
12
  const OPENCLAW_SKILLS_DIR = join(OPENCLAW_DIR, "skills");
12
13
  const OPENCLAW_CONFIG = join(OPENCLAW_DIR, "openclaw.json");
13
- const MCPTOSKILL_TOKENS_DIR = join(OPENCLAW_DIR, "mcptoskill", "tokens");
14
+ const OPENCLAW_TOKENS_DIR = join(OPENCLAW_DIR, "mcptoskill", "tokens");
15
+ const HERMES_SKILLS_DIR = join(homedir(), ".hermes", "skills", "mcptoskill");
16
+ const HERMES_TOKENS_DIR = join(homedir(), ".hermes", "mcptoskill", "tokens");
14
17
  function parseArgs(argv) {
15
18
  const args = argv.slice(2);
16
19
  const url = args.find((a) => !a.startsWith("--"));
@@ -40,12 +43,11 @@ function parseArgs(argv) {
40
43
  console.error("");
41
44
  console.error("Examples:");
42
45
  console.error(" mcptoskill https://mcp.context7.com/mcp");
43
- console.error(" mcptoskill https://mcp.notion.com/mcp # local OAuth, follow prompts");
46
+ console.error(" mcptoskill https://mcp.notion.com/mcp # prompts for auth & target");
44
47
  console.error(" mcptoskill https://mcp.context7.com/mcp --name=context7 --out=./skills");
45
48
  console.error(" mcptoskill https://mcp.supabase.com/mcp?project_ref=XXX --header \"Authorization: Bearer sbp_xxx\"");
46
49
  console.error("");
47
- console.error("OAuth (Notion, PostHog, Supabase): run without --header; CLI will prompt for local OAuth.");
48
- console.error("Also installs local ./scripts/<skill-name>.sh for integrations.");
50
+ console.error("Run without --header for interactive prompts: auth (OAuth/API key/none) and target (OpenClaw/Hermes/Both).");
49
51
  process.exit(1);
50
52
  }
51
53
  // Support both --skill-key=value and --skill-key value (from website copy)
@@ -56,7 +58,7 @@ function parseArgs(argv) {
56
58
  return {
57
59
  url,
58
60
  name: nameFlag?.split("=")[1],
59
- outDir: outFlag?.split("=")[1] ?? OPENCLAW_SKILLS_DIR,
61
+ outDir: outFlag?.split("=")[1],
60
62
  headers,
61
63
  skillKey,
62
64
  };
@@ -88,9 +90,10 @@ async function updateOpenClawConfig(skillName) {
88
90
  config.skills = skills;
89
91
  await writeFile(OPENCLAW_CONFIG, JSON.stringify(config, null, 2) + "\n", "utf8");
90
92
  }
91
- async function saveTokenFile(skillName, data) {
92
- await mkdir(MCPTOSKILL_TOKENS_DIR, { recursive: true });
93
- const tokenFilePath = join(MCPTOSKILL_TOKENS_DIR, `${skillName}.json`);
93
+ async function saveTokenFile(skillName, data, target) {
94
+ const tokensDir = target === "hermes" ? HERMES_TOKENS_DIR : OPENCLAW_TOKENS_DIR;
95
+ await mkdir(tokensDir, { recursive: true });
96
+ const tokenFilePath = join(tokensDir, `${skillName}.json`);
94
97
  const now = Math.floor(Date.now() / 1000);
95
98
  const tokenData = {
96
99
  access_token: data.access_token,
@@ -111,10 +114,23 @@ async function saveTokenFile(skillName, data) {
111
114
  await chmod(tokenFilePath, 0o600);
112
115
  return tokenFilePath;
113
116
  }
117
+ function getTargets(choice) {
118
+ if (choice === "both")
119
+ return ["openclaw", "hermes"];
120
+ return [choice];
121
+ }
122
+ function getTokenPathForScript(skillName, target) {
123
+ return target === "hermes"
124
+ ? `$HOME/.hermes/mcptoskill/tokens/${skillName}.json`
125
+ : `$HOME/.openclaw/mcptoskill/tokens/${skillName}.json`;
126
+ }
114
127
  async function main() {
115
- const { url, name, outDir, headers, skillKey } = parseArgs(process.argv);
116
- let oauthTokenInfo;
117
- let tokenFilePath;
128
+ const { url, name, outDir: customOutDir, headers, skillKey } = parseArgs(process.argv);
129
+ const provider = getProviderByMcpUrl(url);
130
+ const hasOAuthProvider = !!provider;
131
+ const hasHeader = Object.keys(headers).length > 0;
132
+ let authChoice = "no_auth";
133
+ let oauthData;
118
134
  if (skillKey) {
119
135
  console.warn("--skill-key is deprecated. Use local OAuth instead (no flag needed).");
120
136
  const controller = new AbortController();
@@ -130,18 +146,7 @@ async function main() {
130
146
  const data = (await res.json());
131
147
  headers["Authorization"] = `Bearer ${data.access_token}`;
132
148
  if (data.refresh_token) {
133
- oauthTokenInfo = {
134
- access_token: data.access_token,
135
- refresh_token: data.refresh_token,
136
- expires_in: data.expires_in,
137
- token_endpoint: data.token_endpoint ?? "",
138
- client_id: data.client_id ?? "",
139
- mcp_oauth: data.mcp_oauth ?? false,
140
- token_encoding: data.token_encoding ?? "none",
141
- resource_url: data.resource_url ?? null,
142
- provider: data.provider,
143
- mcp_url: data.mcp_url,
144
- };
149
+ oauthData = data;
145
150
  }
146
151
  }
147
152
  catch {
@@ -152,39 +157,26 @@ async function main() {
152
157
  clearTimeout(timeout);
153
158
  }
154
159
  }
155
- let skillNameOverride;
156
- if (!skillKey && Object.keys(headers).length === 0) {
157
- const provider = getProviderByMcpUrl(url);
158
- if (provider) {
160
+ else {
161
+ authChoice = await promptAuth(hasOAuthProvider, hasHeader);
162
+ if (authChoice === "oauth" && provider) {
159
163
  const oauthSkillName = name ?? `${provider.id}-mcp`;
160
- const oauthData = await runLocalOAuth(provider.id, oauthSkillName, url);
164
+ oauthData = await runLocalOAuth(provider.id, oauthSkillName, url);
161
165
  headers["Authorization"] = `Bearer ${oauthData.access_token}`;
162
- tokenFilePath = await saveTokenFile(oauthSkillName, oauthData);
163
- skillNameOverride = oauthSkillName;
164
- oauthTokenInfo = {
165
- access_token: oauthData.access_token,
166
- refresh_token: oauthData.refresh_token ?? "",
167
- expires_in: oauthData.expires_in,
168
- token_endpoint: oauthData.token_endpoint ?? "",
169
- client_id: oauthData.client_id ?? "",
170
- mcp_oauth: oauthData.mcp_oauth,
171
- token_encoding: oauthData.token_encoding,
172
- resource_url: oauthData.resource_url,
173
- provider: oauthData.provider,
174
- mcp_url: oauthData.mcp_url,
175
- tokenFilePath,
176
- ...(oauthData.client_secret && { client_secret: oauthData.client_secret }),
177
- };
178
- console.log(`✓ Token saved: ${tokenFilePath}`);
166
+ }
167
+ else if (authChoice === "api_key") {
168
+ const token = await promptApiKey();
169
+ headers["Authorization"] = `Bearer ${token}`;
179
170
  }
180
171
  }
172
+ const targetChoice = await promptTarget();
173
+ const targets = getTargets(targetChoice);
181
174
  console.log(`Connecting to ${url} ...`);
182
175
  const result = await connectAndDiscover(url, headers);
183
176
  console.log(`Found: ${result.serverInfo.name} v${result.serverInfo.version} — ${result.tools.length} tool(s)`);
184
177
  for (const t of result.tools) {
185
178
  console.log(` • ${t.name}: ${t.description.slice(0, 80)}${t.description.length > 80 ? "…" : ""}`);
186
179
  }
187
- // Prefer explicit --name; fallback to known-URL mapping (many hosted MCPs return generic names like "MCP TypeScript Server on Vercel")
188
180
  const knownNames = {
189
181
  "mcp.exa.ai": "exa",
190
182
  "exa.ai": "exa",
@@ -198,57 +190,105 @@ async function main() {
198
190
  }
199
191
  })();
200
192
  const slug = result.serverInfo.name.toLowerCase().replace(/[^a-z0-9]+/g, "-").replace(/^-|-$/g, "");
193
+ const skillNameOverride = oauthData && provider ? (name ?? `${provider.id}-mcp`) : undefined;
201
194
  const skillName = skillNameOverride ?? name ?? (knownNames[host] ?? (host.endsWith(".exa.ai") ? "exa" : slug));
202
- if (oauthTokenInfo && !tokenFilePath) {
203
- tokenFilePath = await saveTokenFile(skillName, {
204
- ...oauthTokenInfo,
205
- workspace_name: null,
206
- });
207
- console.log(`✓ Token saved: ${tokenFilePath}`);
195
+ if (customOutDir) {
196
+ const target = targets[0];
197
+ const outDir = customOutDir;
198
+ const tokenFilePath = oauthData
199
+ ? await saveTokenFile(skillName, {
200
+ ...oauthData,
201
+ workspace_name: oauthData.workspace_name ?? null,
202
+ }, target)
203
+ : undefined;
204
+ const oauthTokenInfo = oauthData
205
+ ? {
206
+ access_token: oauthData.access_token,
207
+ refresh_token: oauthData.refresh_token ?? "",
208
+ expires_in: oauthData.expires_in,
209
+ token_endpoint: oauthData.token_endpoint ?? "",
210
+ client_id: oauthData.client_id ?? "",
211
+ mcp_oauth: oauthData.mcp_oauth ?? false,
212
+ token_encoding: oauthData.token_encoding ?? "none",
213
+ resource_url: oauthData.resource_url ?? null,
214
+ provider: oauthData.provider,
215
+ mcp_url: oauthData.mcp_url,
216
+ tokenFilePath: getTokenPathForScript(skillName, target),
217
+ ...(oauthData.client_secret && { client_secret: oauthData.client_secret }),
218
+ }
219
+ : undefined;
220
+ const { skillName: finalSkillName, skillMd, shellScript } = generate(result, skillName, oauthTokenInfo, target);
221
+ const skillDir = join(outDir, finalSkillName);
222
+ const scriptsDir = join(skillDir, "scripts");
223
+ await mkdir(scriptsDir, { recursive: true });
224
+ await writeFile(join(skillDir, "SKILL.md"), skillMd, "utf8");
225
+ const scriptPath = join(scriptsDir, `${finalSkillName}.sh`);
226
+ await writeFile(scriptPath, shellScript, "utf8");
227
+ await chmod(scriptPath, 0o755);
228
+ if (tokenFilePath)
229
+ console.log(`✓ Token saved: ${tokenFilePath}`);
230
+ console.log(`✓ Generated: ${skillDir}/`);
231
+ return;
232
+ }
233
+ for (const target of targets) {
234
+ const outDir = target === "hermes" ? HERMES_SKILLS_DIR : OPENCLAW_SKILLS_DIR;
235
+ const tokenFilePath = oauthData
236
+ ? await saveTokenFile(skillName, {
237
+ ...oauthData,
238
+ workspace_name: oauthData.workspace_name ?? null,
239
+ }, target)
240
+ : undefined;
241
+ const oauthTokenInfo = oauthData
242
+ ? {
243
+ access_token: oauthData.access_token,
244
+ refresh_token: oauthData.refresh_token ?? "",
245
+ expires_in: oauthData.expires_in,
246
+ token_endpoint: oauthData.token_endpoint ?? "",
247
+ client_id: oauthData.client_id ?? "",
248
+ mcp_oauth: oauthData.mcp_oauth ?? false,
249
+ token_encoding: oauthData.token_encoding ?? "none",
250
+ resource_url: oauthData.resource_url ?? null,
251
+ provider: oauthData.provider,
252
+ mcp_url: oauthData.mcp_url,
253
+ tokenFilePath: getTokenPathForScript(skillName, target),
254
+ ...(oauthData.client_secret && { client_secret: oauthData.client_secret }),
255
+ }
256
+ : undefined;
257
+ const { skillName: finalSkillName, skillMd, shellScript } = generate(result, skillName, oauthTokenInfo, target);
258
+ const skillDir = join(outDir, finalSkillName);
259
+ const scriptsDir = join(skillDir, "scripts");
260
+ await mkdir(scriptsDir, { recursive: true });
261
+ await writeFile(join(skillDir, "SKILL.md"), skillMd, "utf8");
262
+ const scriptPath = join(scriptsDir, `${finalSkillName}.sh`);
263
+ await writeFile(scriptPath, shellScript, "utf8");
264
+ await chmod(scriptPath, 0o755);
265
+ if (tokenFilePath)
266
+ console.log(`✓ Token saved: ${tokenFilePath}`);
267
+ console.log(`✓ Skill installed: ${finalSkillName} (${target})`);
268
+ console.log(` ${skillDir}/`);
269
+ if (target === "openclaw") {
270
+ await updateOpenClawConfig(finalSkillName);
271
+ }
208
272
  }
209
- const { skillName: finalSkillName, skillMd, shellScript } = generate(result, skillName, oauthTokenInfo ? { ...oauthTokenInfo, tokenFilePath: tokenFilePath } : undefined);
210
- const skillDir = join(outDir, finalSkillName);
211
- const scriptsDir = join(skillDir, "scripts");
212
- await mkdir(scriptsDir, { recursive: true });
213
- const skillMdPath = join(skillDir, "SKILL.md");
214
- const scriptPath = join(scriptsDir, `${finalSkillName}.sh`);
215
- await writeFile(skillMdPath, skillMd, "utf8");
216
- await writeFile(scriptPath, shellScript, "utf8");
217
- await chmod(scriptPath, 0o755);
218
273
  const localScriptsDir = join(process.cwd(), "scripts");
219
274
  await mkdir(localScriptsDir, { recursive: true });
275
+ const lastTarget = targets[targets.length - 1];
276
+ const lastOutDir = lastTarget === "hermes" ? HERMES_SKILLS_DIR : OPENCLAW_SKILLS_DIR;
277
+ const finalSkillName = skillNameOverride ?? skillName;
220
278
  const localScriptPath = join(localScriptsDir, `${finalSkillName}.sh`);
221
- await copyFile(scriptPath, localScriptPath);
279
+ await copyFile(join(lastOutDir, finalSkillName, "scripts", `${finalSkillName}.sh`), localScriptPath);
222
280
  await chmod(localScriptPath, 0o755);
223
281
  console.log(`✓ Copied to local workspace: ${localScriptPath}`);
224
- const isOpenClawInstall = resolve(outDir) === resolve(OPENCLAW_SKILLS_DIR);
225
- if (isOpenClawInstall) {
226
- await updateOpenClawConfig(finalSkillName);
227
- console.log("");
228
- console.log(`✓ Skill installed: ${finalSkillName}`);
229
- console.log(` ${skillDir}/`);
230
- if (oauthTokenInfo) {
231
- console.log(` Token auto-refresh enabled (${oauthTokenInfo.provider})`);
232
- }
233
- console.log("");
234
- console.log("Restart OpenClaw (or wait for auto-reload), then try:");
235
- console.log(` "use ${result.serverInfo.name} to ${result.tools[0]?.name?.replace(/-/g, " ") ?? "run a tool"}"`);
236
- }
237
- else {
238
- console.log("");
239
- console.log(`Generated skill: ${finalSkillName}`);
240
- console.log(` ${skillMdPath}`);
241
- console.log(` ${scriptPath}`);
242
- if (oauthTokenInfo) {
243
- console.log(` Token auto-refresh enabled (${oauthTokenInfo.provider})`);
244
- }
245
- console.log("");
246
- console.log("To install in OpenClaw:");
247
- console.log(` cp -r ${skillDir} ${OPENCLAW_SKILLS_DIR}/`);
282
+ const targetNames = targets.map((t) => (t === "hermes" ? "Hermes" : "OpenClaw")).join(" & ");
283
+ console.log("");
284
+ if (oauthData) {
285
+ console.log(` Token auto-refresh enabled (${oauthData.provider})`);
248
286
  }
287
+ console.log(`Restart ${targetNames} (or wait for auto-reload), then try:`);
288
+ console.log(` "use ${result.serverInfo.name} to ${result.tools[0]?.name?.replace(/-/g, " ") ?? "run a tool"}"`);
249
289
  console.log("");
250
290
  console.log("Test the script directly:");
251
- console.log(` ${scriptPath} ${result.tools[0]?.name ?? "tool-name"} '{}'`);
291
+ console.log(` ${localScriptPath} ${result.tools[0]?.name ?? "tool-name"} '{}'`);
252
292
  }
253
293
  main().catch((err) => {
254
294
  console.error("Error:", err.message);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export type TargetChoice = "openclaw" | "hermes" | "both";
2
+ export type AuthChoice = "oauth" | "api_key" | "no_auth";
3
+ export declare function promptAuth(hasOAuthProvider: boolean, hasHeader: boolean): Promise<AuthChoice>;
4
+ export declare function promptTarget(): Promise<TargetChoice>;
5
+ export declare function promptApiKey(): Promise<string>;
6
+ //# sourceMappingURL=prompts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE1D,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC;AAYzD,wBAAsB,UAAU,CAC9B,gBAAgB,EAAE,OAAO,EACzB,SAAS,EAAE,OAAO,GACjB,OAAO,CAAC,UAAU,CAAC,CAuBrB;AAED,wBAAsB,YAAY,IAAI,OAAO,CAAC,YAAY,CAAC,CAa1D;AAED,wBAAsB,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,CAMpD"}
@@ -0,0 +1,56 @@
1
+ import { createInterface } from "node:readline";
2
+ function question(prompt) {
3
+ return new Promise((resolve) => {
4
+ const rl = createInterface({ input: process.stdin, output: process.stdout });
5
+ rl.question(prompt, (answer) => {
6
+ rl.close();
7
+ resolve(answer.trim());
8
+ });
9
+ });
10
+ }
11
+ export async function promptAuth(hasOAuthProvider, hasHeader) {
12
+ if (hasHeader)
13
+ return "api_key";
14
+ if (!process.stdin.isTTY) {
15
+ if (hasOAuthProvider) {
16
+ throw new Error("Non-interactive mode: OAuth requires a TTY. Use --header for API key.");
17
+ }
18
+ return "no_auth";
19
+ }
20
+ const options = hasOAuthProvider
21
+ ? "? Auth: (1) OAuth (2) API key (3) No auth\n> "
22
+ : "? Auth: (2) API key (3) No auth (OAuth only for Notion, PostHog, Supabase)\n> ";
23
+ const answer = await question(options);
24
+ const n = answer === "" ? "1" : answer;
25
+ if (hasOAuthProvider && (n === "1" || n.toLowerCase() === "oauth"))
26
+ return "oauth";
27
+ if (n === "2" || n.toLowerCase() === "api" || n.toLowerCase() === "apikey")
28
+ return "api_key";
29
+ if (n === "3" || n.toLowerCase() === "no" || n.toLowerCase() === "none")
30
+ return "no_auth";
31
+ if (hasOAuthProvider)
32
+ return "oauth";
33
+ return "no_auth";
34
+ }
35
+ export async function promptTarget() {
36
+ if (!process.stdin.isTTY) {
37
+ return "openclaw";
38
+ }
39
+ const answer = await question("? Install to: (1) OpenClaw (2) Hermes (3) Both\n> ");
40
+ const n = answer === "" ? "1" : answer;
41
+ if (n === "1" || n.toLowerCase() === "openclaw")
42
+ return "openclaw";
43
+ if (n === "2" || n.toLowerCase() === "hermes")
44
+ return "hermes";
45
+ if (n === "3" || n.toLowerCase() === "both")
46
+ return "both";
47
+ return "openclaw";
48
+ }
49
+ export async function promptApiKey() {
50
+ const token = await question("? Paste your Bearer token:\n> ");
51
+ if (!token) {
52
+ throw new Error("No token provided.");
53
+ }
54
+ return token;
55
+ }
56
+ //# sourceMappingURL=prompts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAMhD,SAAS,QAAQ,CAAC,MAAc;IAC9B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QAC7E,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE;YAC7B,EAAE,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,gBAAyB,EACzB,SAAkB;IAElB,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC;IAEhC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACzB,IAAI,gBAAgB,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC;QAC3F,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,OAAO,GAAG,gBAAgB;QAC9B,CAAC,CAAC,iDAAiD;QACnD,CAAC,CAAC,iFAAiF,CAAC;IAEtF,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC;IACvC,MAAM,CAAC,GAAG,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;IAEvC,IAAI,gBAAgB,IAAI,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC;QAAE,OAAO,OAAO,CAAC;IACnF,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,WAAW,EAAE,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAC7F,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,KAAK,IAAI,IAAI,CAAC,CAAC,WAAW,EAAE,KAAK,MAAM;QAAE,OAAO,SAAS,CAAC;IAE1F,IAAI,gBAAgB;QAAE,OAAO,OAAO,CAAC;IACrC,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY;IAChC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACzB,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,sDAAsD,CAAC,CAAC;IACtF,MAAM,CAAC,GAAG,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;IAEvC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,KAAK,UAAU;QAAE,OAAO,UAAU,CAAC;IACnE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC/D,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IAE3D,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY;IAChC,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,gCAAgC,CAAC,CAAC;IAC/D,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;IACxC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@filiksyos/mcptoskill",
3
- "version": "0.2.8",
4
- "description": "Turn any MCP server into an OpenClaw skill",
3
+ "version": "0.3.0",
4
+ "description": "Turn any MCP server into an OpenClaw or Hermes skill",
5
5
  "type": "module",
6
6
  "bin": {
7
7
  "mcptoskill": "dist/index.js"