crear-empresa
Create a new company with required details including name, contact information, address, website, industry, and size classification.
Instructions
Crea una nueva empresa con todos los datos requeridos
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| Yes | |||
| phone | Yes | ||
| address | Yes | ||
| website | Yes | ||
| industry | Yes | ||
| size | Yes |
Implementation Reference
- src/tools/companyCreateTool.ts:23-62 (handler)The createCompanyToolHandler function executes the tool logic: processes input args, calls companyService.createCompany, formats success/error response.export async function createCompanyToolHandler(args: any) { try { // Convertir el tamaño string al enum correspondiente const companyData = { ...args, size: args.size as CompanySize }; const company = await companyService.createCompany(companyData); return { content: [ { type: "text" as const, text: `✅ Empresa creada exitosamente: ID: ${company.id} Nombre: ${company.name} Email: ${company.email} Teléfono: ${company.phone} Dirección: ${company.address} Sitio web: ${company.website} Industria: ${company.industry} Tamaño: ${company.size} Creada: ${new Date(company.created_at).toLocaleString()}` } ] }; } catch (error) { const errorMessage = error instanceof Error ? error.message : 'Error desconocido'; return { content: [ { type: "text" as const, text: `❌ Error al crear la empresa: ${errorMessage}` } ] }; } }
- src/tools/companyCreateTool.ts:8-18 (schema)Zod schema for input validation of company creation: name, email, phone, address, website, industry, size.export const createCompanyInputSchema = { name: z.string().min(1, "El nombre es requerido"), email: z.string().email("Debe ser un email válido"), phone: z.string().min(1, "El teléfono es requerido"), address: z.string().min(1, "La dirección es requerida"), website: z.string().url("Debe ser una URL válida"), industry: z.string().min(1, "La industria es requerida"), size: z.enum(["small", "medium", "large"], { errorMap: () => ({ message: "El tamaño debe ser uno de: small, medium, large" }) }) };
- src/main.ts:53-60 (registration)Registration of the 'crear-empresa' tool in the MCP server, linking schema and handler.server.registerTool( "crear-empresa", { description: "Crea una nueva empresa con todos los datos requeridos", inputSchema: createCompanyInputSchema }, createCompanyToolHandler );