MCPcopy Create free account
hub / github.com/cursor/community-plugins / EditMCPForm

Function EditMCPForm

apps/cursor/src/components/forms/edit-mcp.tsx:53–214  ·  view source on GitHub ↗
({ data }: { data: MCPData })

Source from the content-addressed store, hash-verified

51};
52
53export function EditMCPForm({ data }: { data: MCPData }) {
54 const { execute, isExecuting } = useAction(updateMCPListingAction, {
55 onSuccess: () => {
56 toast.success("MCP listing updated successfully");
57 },
58 onError: () => {
59 toast.error("Failed to update MCP listing");
60 },
61 });
62
63 const form = useForm<z.infer<typeof formSchema>>({
64 resolver: zodResolver(formSchema),
65 defaultValues: {
66 company_id: data?.company_id ?? "",
67 name: data?.name ?? "",
68 description: data?.description ?? "",
69 link: data?.link ?? "",
70 logo: data?.logo ?? "",
71 },
72 });
73
74 const onSubmit = (values: z.infer<typeof formSchema>) => {
75 execute({
76 id: data.id,
77 company_id: values.company_id,
78 name: values.name,
79 description: values.description,
80 link: values.link,
81 logo: values.logo,
82 config: null,
83 });
84 };
85
86 const setLogo = (logo: string) => {
87 form.setValue("logo", logo);
88 };
89
90 return (
91 <Form {...form}>
92 <form onSubmit={form.handleSubmit(onSubmit)} className="space-y-6">
93 <div className="space-y-6 pb-6">
94 <UploadLogo
95 prefix="mcp"
96 onUpload={setLogo}
97 image={form.watch("logo")}
98 />
99
100 <FormField
101 control={form.control}
102 name="name"
103 render={({ field }) => (
104 <FormItem>
105 <FormLabel>Name</FormLabel>
106 <FormControl>
107 <Input
108 placeholder="Resend"
109 {...field}
110 className="placeholder:text-[#878787] border-border"

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected