create-epic
Create a new Shortcut epic to organize and manage large project initiatives within the Shortcut MCP Server.
Instructions
Create a new Shortcut epic.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | The name of the epic | |
| owner | No | The user ID of the owner of the epic | |
| description | No | A description of the epic | |
| teamId | No | The ID of a team to assign the epic to |
Implementation Reference
- src/tools/epics.ts:104-123 (handler)The main handler function that executes the logic to create a new Shortcut epic using the client.createEpic method and returns a result.async createEpic({ name, owner, teamId: group_id, description, }: { name: string; owner?: string; teamId?: string; description?: string; }): Promise<CallToolResult> { const epic = await this.client.createEpic({ name, group_id, owner_ids: owner ? [owner] : undefined, description, }); return this.toResult(`Epic created with ID: ${epic.id}.`); }
- src/tools/epics.ts:64-74 (registration)Tool registration for 'create-epic', including the tool name, description, input schema, and reference to the handler function.server.tool( "create-epic", "Create a new Shortcut epic.", { name: z.string().describe("The name of the epic"), owner: z.string().optional().describe("The user ID of the owner of the epic"), description: z.string().optional().describe("A description of the epic"), teamId: z.string().optional().describe("The ID of a team to assign the epic to"), }, async (params) => await tools.createEpic(params), );
- src/tools/epics.ts:67-72 (schema)Zod schema defining the input parameters for the create-epic tool: name (required), owner, description, teamId (all optional except name).{ name: z.string().describe("The name of the epic"), owner: z.string().optional().describe("The user ID of the owner of the epic"), description: z.string().optional().describe("A description of the epic"), teamId: z.string().optional().describe("The ID of a team to assign the epic to"), },