You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add AI-agent help text to mcp and uv commands (#3545)
* JGC-504 - Add AI-agent help text to mcp and uv commands
Complete GetAIDescription() coverage for the umbrella commands that landed
after JGC-473 and were still falling back to the short description in AI mode:
- mcp install / show / uninstall
- uv
Each help.go gains a GetAIDescription() following the JGC-473 template
(when-to-use / prerequisites / runnable examples / gotchas / related), with
examples validated against the commands' real flags. The four call sites in
mcp/cli.go and buildtools/cli.go now route Usage/HelpName through
corecommon.ResolveDescription so the AI text renders when JFROG_CLI_AI_HELP is
truthy or an AI agent is auto-detected.
Hidden/deprecated rt-namespace duplicates and unwired doc stubs (per issue
#3544) are intentionally left out — their canonical visible commands are
already covered, and they are excluded by the JGC-473 skip-hidden policy.
* JGC-504 - Add AI help coverage check to static analysis
Copy file name to clipboardExpand all lines: docs/buildtools/uvcommand/help.go
+23Lines changed: 23 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -6,6 +6,29 @@ func GetDescription() string {
6
6
return"Run uv command"
7
7
}
8
8
9
+
funcGetAIDescription() string {
10
+
return`Run a uv (Python package manager) command through JFrog CLI so dependencies resolve against Artifactory and build-info can be recorded. Arguments are forwarded to the uv binary unchanged; the jf-specific flags are the build-info and server options.
11
+
12
+
When to use:
13
+
- Running 'uv pip install' / 'uv sync' / 'uv add' in a project that resolves through an Artifactory-backed index.
14
+
- Capturing build-info for a uv-based Python build by passing --build-name and --build-number.
15
+
16
+
Prerequisites:
17
+
- uv installed and available on PATH.
18
+
- A configured JFrog Platform server (jf c add or jf login), or pass --server-id.
- All arguments after the uv sub-command are passed straight to uv (the command uses SkipFlagParsing); only --build-name, --build-number, --module, --project, and --server-id are interpreted by jf.
27
+
- Build-info is collected only when --build-name and --build-number are provided; publish it afterwards with 'jf rt build-publish'.
Copy file name to clipboardExpand all lines: docs/mcp/install/help.go
+24Lines changed: 24 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -6,6 +6,30 @@ func GetDescription() string {
6
6
return"Configure an AI agent (cursor or claude) to connect to the remote JFrog MCP server."
7
7
}
8
8
9
+
funcGetAIDescription() string {
10
+
return`Add the remote JFrog MCP server to an AI agent's configuration so the agent can call JFrog Platform tools. Writes the MCP entry for Cursor or Claude Code; authentication is completed via OAuth in the agent itself, so no credentials are written to the agent config.
11
+
12
+
When to use:
13
+
- Onboarding Cursor or Claude Code to the JFrog Platform MCP integration.
14
+
- Adding the MCP server at project scope (default) or user scope (--global).
15
+
16
+
Prerequisites:
17
+
- A configured JFrog Platform server (jf c add or jf login), or pass --server-id / --url.
18
+
- The target agent (Cursor or Claude Code) installed locally.
19
+
20
+
Common patterns:
21
+
$ jf mcp install --agent=cursor
22
+
$ jf mcp install --agent=claude --global
23
+
$ jf mcp install --agent=cursor --dry-run
24
+
25
+
Gotchas:
26
+
- Before writing config, the command verifies the MCP server is reachable; pass --skip-check to bypass that probe.
27
+
- After installing, complete the OAuth authorization in the agent (e.g. run /mcp in Claude Code, or approve the server in Cursor) to activate the connection.
28
+
- Default scope is the current project; --global writes the user-level agent config instead.
Copy file name to clipboardExpand all lines: docs/mcp/show/help.go
+21Lines changed: 21 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -6,6 +6,27 @@ func GetDescription() string {
6
6
return"Print the remote MCP (Model Context Protocol) server endpoint for the configured JFrog Platform."
7
7
}
8
8
9
+
funcGetAIDescription() string {
10
+
return`Print the remote MCP (Model Context Protocol) server endpoint for the configured JFrog Platform, derived as <platform-url>/mcp. Use this to discover the URL an AI agent should connect to, or to confirm which platform the MCP integration points at.
11
+
12
+
When to use:
13
+
- Looking up the MCP endpoint to configure an agent manually (rather than via 'jf mcp install').
14
+
- Verifying which platform / server the MCP integration resolves to before installing.
15
+
16
+
Prerequisites:
17
+
- A configured JFrog Platform server (jf c add or jf login), or pass --server-id / --url.
18
+
19
+
Common patterns:
20
+
$ jf mcp show
21
+
$ jf mcp show --server-id=my-platform --format=json
22
+
23
+
Gotchas:
24
+
- The endpoint defaults to <platform-url>/mcp; override it with --mcp-url or the JFROG_CLI_MCP_URL environment variable.
25
+
- This is the remote, platform-hosted MCP server. It is unrelated to 'jf source-mcp', which runs a local MCP server for source-code analysis.
Copy file name to clipboardExpand all lines: docs/mcp/uninstall/help.go
+21Lines changed: 21 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -6,6 +6,27 @@ func GetDescription() string {
6
6
return"Remove the JFrog MCP server entry previously added to an AI agent's configuration."
7
7
}
8
8
9
+
funcGetAIDescription() string {
10
+
return`Remove the JFrog MCP server entry previously added to an AI agent's configuration (Cursor or Claude Code). Only the JFrog entry is removed; other configured MCP servers are left untouched.
11
+
12
+
When to use:
13
+
- Disconnecting an agent from the JFrog Platform MCP integration.
14
+
- Cleaning up before re-installing against a different platform or scope.
15
+
16
+
Prerequisites:
17
+
- The agent (Cursor or Claude Code) with a JFrog MCP entry previously added by 'jf mcp install'.
18
+
19
+
Common patterns:
20
+
$ jf mcp uninstall --agent=cursor
21
+
$ jf mcp uninstall --agent=claude --global
22
+
23
+
Gotchas:
24
+
- Match the scope used at install time: a --global install is removed with --global; a project install is removed from the project config.
25
+
- If the entry was installed under a non-default name, pass --name to target it.
26
+
27
+
Related: jf mcp install, jf mcp show`
28
+
}
29
+
9
30
funcGetArguments() string {
10
31
return` EXAMPLES
11
32
# Remove the JFrog MCP server from Cursor (current project)
0 commit comments