MCPcopy
hub / github.com/dagger/container-use / createEnvironmentFileDeleteTool

Function createEnvironmentFileDeleteTool

mcpserver/tools.go:799–834  ·  view source on GitHub ↗
(singleTenant bool)

Source from the content-addressed store, hash-verified

797}
798
799func createEnvironmentFileDeleteTool(singleTenant bool) *Tool {
800 return &Tool{
801 Definition: newEnvironmentTool(
802 envToolOptions{
803 name: "environment_file_delete",
804 description: "Deletes a file at the specified path.",
805 useCurrentEnvironment: singleTenant,
806 },
807 mcp.WithString("target_file",
808 mcp.Description("Path of the file to delete, absolute or relative to the workdir."),
809 mcp.Required(),
810 ),
811 ),
812 Handler: func(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error) {
813 repo, env, err := openEnvironment(ctx, request)
814 if err != nil {
815 return nil, err
816 }
817
818 targetFile, err := request.RequireString("target_file")
819 if err != nil {
820 return nil, err
821 }
822
823 if err := env.FileDelete(ctx, request.GetString("explanation", ""), targetFile); err != nil {
824 return nil, fmt.Errorf("failed to delete file: %w", err)
825 }
826
827 if err := repo.Update(ctx, env, request.GetString("explanation", "")); err != nil {
828 return nil, fmt.Errorf("failed to update env: %w", err)
829 }
830
831 return mcp.NewToolResultText(fmt.Sprintf("file %s deleted successfully and committed to container-use/%s remote ref", targetFile, env.ID)), nil
832 },
833 }
834}
835
836func createEnvironmentCheckpointTool(singleTenant bool) *Tool {
837 return &Tool{

Callers 1

createToolsFunction · 0.85

Calls 4

newEnvironmentToolFunction · 0.85
openEnvironmentFunction · 0.85
FileDeleteMethod · 0.45
UpdateMethod · 0.45

Tested by

no test coverage detected