Skip to content

Commit 2fcb429

Browse files
author
piexlMax(奇淼
committed
feat: 优化自动化mcp逻辑和成功展示
1 parent a67a8b9 commit 2fcb429

File tree

5 files changed

+12
-16
lines changed

5 files changed

+12
-16
lines changed

server/api/v1/system/auto_code_mcp.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,11 @@ func (a *AutoCodeTemplateApi) MCP(c *gin.Context) {
2424
return
2525
}
2626

27-
err = autoCodeTemplateService.CreateMcp(c.Request.Context(), info)
27+
toolFilePath, err := autoCodeTemplateService.CreateMcp(c.Request.Context(), info)
2828
if err != nil {
2929
response.FailWithMessage("创建失败", c)
3030
global.GVA_LOG.Error(err.Error())
3131
return
3232
}
33-
response.OkWithMessage("创建成功", c)
33+
response.OkWithMessage("创建成功,MCP Tool路径:"+toolFilePath, c)
3434
}

server/resource/mcp/tools.tpl

-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ package mcpTool
33
import (
44
"context"
55
"github.com/mark3labs/mcp-go/mcp"
6-
"time"
76
)
87

98
func init() {

server/service/system/auto_code_mcp.go

+5-5
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import (
1111
"text/template"
1212
)
1313

14-
func (s *autoCodeTemplate) CreateMcp(ctx context.Context, info request.AutoMcpTool) (err error) {
14+
func (s *autoCodeTemplate) CreateMcp(ctx context.Context, info request.AutoMcpTool) (toolFilePath string, err error) {
1515
mcpTemplatePath := filepath.Join(global.GVA_CONFIG.AutoCode.Root, global.GVA_CONFIG.AutoCode.Server, "resource", "mcp", "tools.tpl")
1616
mcpToolPath := filepath.Join(global.GVA_CONFIG.AutoCode.Root, global.GVA_CONFIG.AutoCode.Server, "mcp")
1717

@@ -21,23 +21,23 @@ func (s *autoCodeTemplate) CreateMcp(ctx context.Context, info request.AutoMcpTo
2121

2222
files, err = template.New(templateName).Funcs(autocode.GetTemplateFuncMap()).ParseFiles(mcpTemplatePath)
2323
if err != nil {
24-
return err
24+
return
2525
}
2626

2727
fileName := utils.HumpToUnderscore(info.Name)
2828

29-
toolFilePath := filepath.Join(mcpToolPath, fileName+".go")
29+
toolFilePath = filepath.Join(mcpToolPath, fileName+".go")
3030

3131
f, err := os.Create(toolFilePath)
3232
if err != nil {
33-
return err
33+
return
3434
}
3535
defer f.Close()
3636

3737
// 执行模板,将内容写入文件
3838
err = files.Execute(f, info)
3939
if err != nil {
40-
return err
40+
return
4141
}
4242

4343
return

server/source/system/menu.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -100,8 +100,8 @@ func (i *initMenu) InitializeData(ctx context.Context) (next context.Context, er
100100
{MenuLevel: 1, Hidden: false, ParentId: menuNameMap["systemTools"], Path: "autoPkg", Name: "autoPkg", Component: "view/systemTools/autoPkg/autoPkg.vue", Sort: 0, Meta: Meta{Title: "模板配置", Icon: "folder"}},
101101
{MenuLevel: 1, Hidden: false, ParentId: menuNameMap["systemTools"], Path: "exportTemplate", Name: "exportTemplate", Component: "view/systemTools/exportTemplate/exportTemplate.vue", Sort: 5, Meta: Meta{Title: "导出模板", Icon: "reading"}},
102102
{MenuLevel: 1, Hidden: false, ParentId: menuNameMap["systemTools"], Path: "picture", Name: "picture", Component: "view/systemTools/autoCode/picture.vue", Sort: 6, Meta: Meta{Title: "AI页面绘制", Icon: "picture-filled"}},
103+
{MenuLevel: 1, Hidden: false, ParentId: menuNameMap["systemTools"], Path: "mcpTool", Name: "mcpTool", Component: "view/systemTools/autoCode/mcp.vue", Sort: 7, Meta: Meta{Title: "Mcp Tools模板", Icon: "magnet"}},
103104

104-
// plugin子菜单
105105
{MenuLevel: 1, Hidden: false, ParentId: menuNameMap["plugin"], Path: "https://plugin.gin-vue-admin.com/", Name: "https://plugin.gin-vue-admin.com/", Component: "https://plugin.gin-vue-admin.com/", Sort: 0, Meta: Meta{Title: "插件市场", Icon: "shop"}},
106106
{MenuLevel: 1, Hidden: false, ParentId: menuNameMap["plugin"], Path: "installPlugin", Name: "installPlugin", Component: "view/systemTools/installPlugin/index.vue", Sort: 1, Meta: Meta{Title: "插件安装", Icon: "box"}},
107107
{MenuLevel: 1, Hidden: false, ParentId: menuNameMap["plugin"], Path: "pubPlug", Name: "pubPlug", Component: "view/systemTools/pubPlug/pubPlug.vue", Sort: 3, Meta: Meta{Title: "打包插件", Icon: "files"}},

web/src/view/systemTools/autoCode/mcp.vue

+4-7
Original file line numberDiff line numberDiff line change
@@ -138,13 +138,10 @@ function submit() {
138138
return
139139
}
140140
}
141-
try {
142-
await mcp(form)
143-
ElMessage.success('提交成功')
144-
// 可根据需要清空表单或跳转
145-
} catch (e) {
146-
ElMessage.error('提交失败')
147-
}
141+
const res = await mcp(form)
142+
if (res.code === 0) {
143+
ElMessage.success(res.msg)
144+
}
148145
})
149146
}
150147
</script>

0 commit comments

Comments
 (0)