@mcp-use/cli 2.8.2-canary.0 → 2.8.2-canary.2

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.
@@ -1,7 +1,4 @@
1
1
  import { Command } from "commander";
2
- /**
3
- * Connect command
4
- */
5
2
  export declare function connectCommand(urlOrCommand: string, options: {
6
3
  name?: string;
7
4
  stdio?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/commands/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/commands/client.ts"],"names":[],"mappings":"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"}
package/dist/index.cjs CHANGED
@@ -1805,88 +1805,9 @@ async function whoamiCommand() {
1805
1805
 
1806
1806
  // src/commands/client.ts
1807
1807
  var import_commander = require("commander");
1808
- var import_node_readline = require("readline");
1808
+ var import_mcp_use = require("mcp-use");
1809
1809
  var import_client = require("mcp-use/client");
1810
-
1811
- // src/utils/session-storage.ts
1812
- var import_node_os4 = require("os");
1813
- var import_node_path3 = require("path");
1814
- var import_promises4 = require("fs/promises");
1815
- var import_node_fs5 = require("fs");
1816
- var SESSION_FILE_PATH = (0, import_node_path3.join)((0, import_node_os4.homedir)(), ".mcp-use", "cli-sessions.json");
1817
- async function ensureSessionDir() {
1818
- const dir = (0, import_node_path3.join)((0, import_node_os4.homedir)(), ".mcp-use");
1819
- if (!(0, import_node_fs5.existsSync)(dir)) {
1820
- await (0, import_promises4.mkdir)(dir, { recursive: true });
1821
- }
1822
- }
1823
- async function loadSessions() {
1824
- try {
1825
- await ensureSessionDir();
1826
- if (!(0, import_node_fs5.existsSync)(SESSION_FILE_PATH)) {
1827
- return { activeSession: null, sessions: {} };
1828
- }
1829
- const content = await (0, import_promises4.readFile)(SESSION_FILE_PATH, "utf-8");
1830
- return JSON.parse(content);
1831
- } catch (error) {
1832
- return { activeSession: null, sessions: {} };
1833
- }
1834
- }
1835
- async function saveSessions(storage) {
1836
- await ensureSessionDir();
1837
- await (0, import_promises4.writeFile)(SESSION_FILE_PATH, JSON.stringify(storage, null, 2), "utf-8");
1838
- }
1839
- async function saveSession(name, config) {
1840
- const storage = await loadSessions();
1841
- storage.sessions[name] = {
1842
- ...config,
1843
- lastUsed: (/* @__PURE__ */ new Date()).toISOString()
1844
- };
1845
- if (!storage.activeSession) {
1846
- storage.activeSession = name;
1847
- }
1848
- await saveSessions(storage);
1849
- }
1850
- async function getActiveSession() {
1851
- const storage = await loadSessions();
1852
- if (!storage.activeSession || !storage.sessions[storage.activeSession]) {
1853
- return null;
1854
- }
1855
- return {
1856
- name: storage.activeSession,
1857
- config: storage.sessions[storage.activeSession]
1858
- };
1859
- }
1860
- async function getSession(name) {
1861
- const storage = await loadSessions();
1862
- return storage.sessions[name] || null;
1863
- }
1864
- async function setActiveSession(name) {
1865
- const storage = await loadSessions();
1866
- if (!storage.sessions[name]) {
1867
- throw new Error(`Session '${name}' not found`);
1868
- }
1869
- storage.activeSession = name;
1870
- storage.sessions[name].lastUsed = (/* @__PURE__ */ new Date()).toISOString();
1871
- await saveSessions(storage);
1872
- }
1873
- async function listAllSessions() {
1874
- const storage = await loadSessions();
1875
- return Object.entries(storage.sessions).map(([name, config]) => ({
1876
- name,
1877
- config,
1878
- isActive: name === storage.activeSession
1879
- }));
1880
- }
1881
- async function updateSessionInfo(name, serverInfo, capabilities) {
1882
- const storage = await loadSessions();
1883
- if (storage.sessions[name]) {
1884
- storage.sessions[name].serverInfo = serverInfo;
1885
- storage.sessions[name].capabilities = capabilities;
1886
- storage.sessions[name].lastUsed = (/* @__PURE__ */ new Date()).toISOString();
1887
- await saveSessions(storage);
1888
- }
1889
- }
1810
+ var import_node_readline = require("readline");
1890
1811
 
1891
1812
  // src/utils/format.ts
1892
1813
  function formatTable(data, columns) {
@@ -2124,6 +2045,86 @@ function formatPromptMessages(messages) {
2124
2045
  return lines.join("\n");
2125
2046
  }
2126
2047
 
2048
+ // src/utils/session-storage.ts
2049
+ var import_node_os4 = require("os");
2050
+ var import_node_path3 = require("path");
2051
+ var import_promises4 = require("fs/promises");
2052
+ var import_node_fs5 = require("fs");
2053
+ var SESSION_FILE_PATH = (0, import_node_path3.join)((0, import_node_os4.homedir)(), ".mcp-use", "cli-sessions.json");
2054
+ async function ensureSessionDir() {
2055
+ const dir = (0, import_node_path3.join)((0, import_node_os4.homedir)(), ".mcp-use");
2056
+ if (!(0, import_node_fs5.existsSync)(dir)) {
2057
+ await (0, import_promises4.mkdir)(dir, { recursive: true });
2058
+ }
2059
+ }
2060
+ async function loadSessions() {
2061
+ try {
2062
+ await ensureSessionDir();
2063
+ if (!(0, import_node_fs5.existsSync)(SESSION_FILE_PATH)) {
2064
+ return { activeSession: null, sessions: {} };
2065
+ }
2066
+ const content = await (0, import_promises4.readFile)(SESSION_FILE_PATH, "utf-8");
2067
+ return JSON.parse(content);
2068
+ } catch (error) {
2069
+ return { activeSession: null, sessions: {} };
2070
+ }
2071
+ }
2072
+ async function saveSessions(storage) {
2073
+ await ensureSessionDir();
2074
+ await (0, import_promises4.writeFile)(SESSION_FILE_PATH, JSON.stringify(storage, null, 2), "utf-8");
2075
+ }
2076
+ async function saveSession(name, config) {
2077
+ const storage = await loadSessions();
2078
+ storage.sessions[name] = {
2079
+ ...config,
2080
+ lastUsed: (/* @__PURE__ */ new Date()).toISOString()
2081
+ };
2082
+ if (!storage.activeSession) {
2083
+ storage.activeSession = name;
2084
+ }
2085
+ await saveSessions(storage);
2086
+ }
2087
+ async function getActiveSession() {
2088
+ const storage = await loadSessions();
2089
+ if (!storage.activeSession || !storage.sessions[storage.activeSession]) {
2090
+ return null;
2091
+ }
2092
+ return {
2093
+ name: storage.activeSession,
2094
+ config: storage.sessions[storage.activeSession]
2095
+ };
2096
+ }
2097
+ async function getSession(name) {
2098
+ const storage = await loadSessions();
2099
+ return storage.sessions[name] || null;
2100
+ }
2101
+ async function setActiveSession(name) {
2102
+ const storage = await loadSessions();
2103
+ if (!storage.sessions[name]) {
2104
+ throw new Error(`Session '${name}' not found`);
2105
+ }
2106
+ storage.activeSession = name;
2107
+ storage.sessions[name].lastUsed = (/* @__PURE__ */ new Date()).toISOString();
2108
+ await saveSessions(storage);
2109
+ }
2110
+ async function listAllSessions() {
2111
+ const storage = await loadSessions();
2112
+ return Object.entries(storage.sessions).map(([name, config]) => ({
2113
+ name,
2114
+ config,
2115
+ isActive: name === storage.activeSession
2116
+ }));
2117
+ }
2118
+ async function updateSessionInfo(name, serverInfo, capabilities) {
2119
+ const storage = await loadSessions();
2120
+ if (storage.sessions[name]) {
2121
+ storage.sessions[name].serverInfo = serverInfo;
2122
+ storage.sessions[name].capabilities = capabilities;
2123
+ storage.sessions[name].lastUsed = (/* @__PURE__ */ new Date()).toISOString();
2124
+ await saveSessions(storage);
2125
+ }
2126
+ }
2127
+
2127
2128
  // src/commands/client.ts
2128
2129
  var activeSessions = /* @__PURE__ */ new Map();
2129
2130
  async function getOrRestoreSession(sessionName) {
@@ -2151,16 +2152,19 @@ async function getOrRestoreSession(sessionName) {
2151
2152
  }
2152
2153
  try {
2153
2154
  const client = new import_client.MCPClient();
2155
+ const cliClientInfo = getCliClientInfo();
2154
2156
  if (config.type === "http") {
2155
2157
  client.addServer(sessionName, {
2156
2158
  url: config.url,
2157
- headers: config.authToken ? { Authorization: `Bearer ${config.authToken}` } : void 0
2159
+ headers: config.authToken ? { Authorization: `Bearer ${config.authToken}` } : void 0,
2160
+ clientInfo: cliClientInfo
2158
2161
  });
2159
2162
  } else if (config.type === "stdio") {
2160
2163
  client.addServer(sessionName, {
2161
2164
  command: config.command,
2162
2165
  args: config.args || [],
2163
- env: config.env
2166
+ env: config.env,
2167
+ clientInfo: cliClientInfo
2164
2168
  });
2165
2169
  } else {
2166
2170
  console.error(formatError(`Unknown session type: ${config.type}`));
@@ -2175,11 +2179,26 @@ async function getOrRestoreSession(sessionName) {
2175
2179
  return null;
2176
2180
  }
2177
2181
  }
2182
+ function getCliClientInfo() {
2183
+ return {
2184
+ name: "mcp-use CLI",
2185
+ title: "mcp-use CLI",
2186
+ version: (0, import_mcp_use.getPackageVersion)(),
2187
+ description: "mcp-use CLI - Command-line interface for MCP servers",
2188
+ icons: [
2189
+ {
2190
+ src: "https://mcp-use.com/logo.png"
2191
+ }
2192
+ ],
2193
+ websiteUrl: "https://mcp-use.com"
2194
+ };
2195
+ }
2178
2196
  async function connectCommand(urlOrCommand, options) {
2179
2197
  try {
2180
2198
  const sessionName = options.name || `session-${Date.now()}`;
2181
2199
  const client = new import_client.MCPClient();
2182
2200
  let session;
2201
+ const cliClientInfo = getCliClientInfo();
2183
2202
  if (options.stdio) {
2184
2203
  const parts = urlOrCommand.split(" ");
2185
2204
  const command = parts[0];
@@ -2189,7 +2208,8 @@ async function connectCommand(urlOrCommand, options) {
2189
2208
  );
2190
2209
  client.addServer(sessionName, {
2191
2210
  command,
2192
- args
2211
+ args,
2212
+ clientInfo: cliClientInfo
2193
2213
  });
2194
2214
  session = await client.createSession(sessionName);
2195
2215
  await saveSession(sessionName, {
@@ -2202,7 +2222,8 @@ async function connectCommand(urlOrCommand, options) {
2202
2222
  console.error(formatInfo(`Connecting to ${urlOrCommand}...`));
2203
2223
  client.addServer(sessionName, {
2204
2224
  url: urlOrCommand,
2205
- headers: options.auth ? { Authorization: `Bearer ${options.auth}` } : void 0
2225
+ headers: options.auth ? { Authorization: `Bearer ${options.auth}` } : void 0,
2226
+ clientInfo: cliClientInfo
2206
2227
  });
2207
2228
  session = await client.createSession(sessionName);
2208
2229
  await saveSession(sessionName, {