Skip to content

Commit 8face69

Browse files
committed
host client icons
1 parent a849b6b commit 8face69

File tree

12 files changed

+61
-2
lines changed

12 files changed

+61
-2
lines changed

cmd/docker-mcp/client/config.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -156,6 +156,7 @@ func GetUpdater(vendor string, global bool, cwd string, config Config) (Updater,
156156
type MCPClientCfgBase struct {
157157
DisplayName string `json:"displayName"`
158158
Source string `json:"source"`
159+
Icon string `json:"icon"`
159160
ConfigName string `json:"configName"`
160161
IsMCPCatalogConnected bool `json:"dockerMCPCatalogConnected"`
161162
Err *CfgError `json:"error"`

cmd/docker-mcp/client/config.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ system:
22
claude-desktop:
33
displayName: Claude Desktop
44
source: https://claude.ai/download
5+
icon: https://raw.githubusercontent.com/docker/mcp-gateway/main/img/client/claude.svg
56
installCheckPaths:
67
- /Applications/Claude.app
78
- $AppData\Claude\
@@ -16,6 +17,7 @@ system:
1617
continue:
1718
displayName: Continue.dev
1819
source: https://www.continue.dev/
20+
icon: https://raw.githubusercontent.com/docker/mcp-gateway/main/img/client/continue.svg
1921
installCheckPaths:
2022
- $HOME/.continue
2123
- $USERPROFILE\.continue
@@ -30,6 +32,7 @@ system:
3032
cursor:
3133
displayName: Cursor
3234
source: https://www.cursor.com/
35+
icon: https://raw.githubusercontent.com/docker/mcp-gateway/main/img/client/cursor.svg
3336
installCheckPaths:
3437
- /Applications/Cursor.app
3538
- $AppData/Cursor/
@@ -44,6 +47,7 @@ system:
4447
lmstudio:
4548
displayName: LM Studio
4649
source: https://lmstudio.ai/
50+
icon: https://raw.githubusercontent.com/docker/mcp-gateway/main/img/client/lmstudio.png
4751
installCheckPaths:
4852
- $HOME/.lmstudio
4953
- $USERPROFILE\.lmstudio
@@ -58,6 +62,7 @@ system:
5862
sema4:
5963
displayName: Sema4.ai Studio
6064
source: https://sema4.ai/links/docker-mcp-download
65+
icon: https://raw.githubusercontent.com/docker/mcp-gateway/main/img/client/sema4.png
6166
installCheckPaths:
6267
- $HOME/.sema4ai
6368
- $USERPROFILE\AppData\Local\sema4ai
@@ -73,13 +78,15 @@ project:
7378
cursor:
7479
displayname: Cursor
7580
projectfile: .cursor/mcp.json
81+
icon: https://raw.githubusercontent.com/docker/mcp-gateway/main/img/client/cursor.svg
7682
yq:
7783
list: '.mcpServers | to_entries | map(.value + {"name": .key})'
7884
set: .mcpServers[$NAME] = $JSON
7985
del: del(.mcpServers[$NAME])
8086
vscode:
8187
displayname: VSCode
8288
projectfile: .vscode/mcp.json
89+
icon: https://raw.githubusercontent.com/docker/mcp-gateway/main/img/client/vscode.svg
8390
yq:
8491
list: '.servers | to_entries | map(.value + {"name": .key})'
8592
set: .servers[$NAME] = $JSON+{"type":"stdio"}

cmd/docker-mcp/client/global.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ const (
1414
type globalCfg struct {
1515
DisplayName string `yaml:"displayName"`
1616
Source string `yaml:"source"`
17+
Icon string `yaml:"icon"`
1718
InstallCheckPaths []string `yaml:"installCheckPaths"`
1819
Paths `yaml:"paths"`
1920
YQ `yaml:"yq"`
@@ -68,7 +69,7 @@ func NewGlobalCfgProcessor(g globalCfg) (*GlobalCfgProcessor, error) {
6869
}
6970

7071
func (c *GlobalCfgProcessor) ParseConfig() MCPClientCfg {
71-
result := MCPClientCfg{MCPClientCfgBase: MCPClientCfgBase{DisplayName: c.DisplayName, Source: c.Source}}
72+
result := MCPClientCfg{MCPClientCfgBase: MCPClientCfgBase{DisplayName: c.DisplayName, Source: c.Source, Icon: c.Icon}}
7273

7374
path := c.GetPathsForCurrentOS()
7475
if path == "" {

cmd/docker-mcp/client/gordon_hack.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ func getGordonSetup(ctx context.Context) MCPClientCfg {
1111
MCPClientCfgBase: MCPClientCfgBase{
1212
DisplayName: "Gordon",
1313
Source: "https://docs.docker.com/ai/gordon/",
14+
Icon: "https://raw.githubusercontent.com/docker/mcp-gateway/main/img/client/gordon.png",
1415
ConfigName: vendorGordon,
1516
Err: nil,
1617
},

cmd/docker-mcp/client/local.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import (
88
type localCfg struct {
99
DisplayName string
1010
ProjectFile string
11+
Icon string `yaml:"icon"`
1112
YQ `yaml:"yq"`
1213
}
1314

@@ -30,7 +31,7 @@ func NewLocalCfgProcessor(cfg localCfg, projectRoot string) (*LocalCfgProcessor,
3031
}
3132

3233
func (c *LocalCfgProcessor) Parse() ProjectMCPClientCfg {
33-
result := ProjectMCPClientCfg{MCPClientCfgBase: MCPClientCfgBase{DisplayName: c.DisplayName}}
34+
result := ProjectMCPClientCfg{MCPClientCfgBase: MCPClientCfgBase{DisplayName: c.DisplayName, Icon: c.Icon}}
3435
file := filepath.Join(c.projectRoot, c.ProjectFile)
3536
dir := filepath.Dir(file)
3637
if _, err := os.Stat(dir); err != nil {

img/client/claude.svg

Lines changed: 1 addition & 0 deletions
Loading

img/client/continue.svg

Lines changed: 5 additions & 0 deletions
Loading

img/client/cursor.svg

Lines changed: 1 addition & 0 deletions
Loading

img/client/gordon.png

278 KB
Loading

img/client/lmstudio.png

13.2 KB
Loading

0 commit comments

Comments
 (0)