Skip to main content
Glama

epic_create

Group related tasks into a feature or workstream by creating an epic within a project. Organizes project tracking by structuring work into manageable components.

Instructions

Create an epic within a project. Epics group related tasks into a feature or workstream.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
project_idYesParent project ID
nameYesEpic name
descriptionNoEpic description
statusNoplanned
priorityNomedium
tagsNo

Implementation Reference

  • The handler function that executes the logic to create an epic in the database.
    function handleEpicCreate(args: Record<string, unknown>) {
      const db = getDb();
      const projectId = args.project_id as number;
      const name = args.name as string;
      const description = (args.description as string) ?? null;
      const status = (args.status as string) ?? 'planned';
      const priority = (args.priority as string) ?? 'medium';
      const tags = JSON.stringify((args.tags as string[]) ?? []);
    
      const epic = db
        .prepare(
          'INSERT INTO epics (project_id, name, description, status, priority, tags) VALUES (?, ?, ?, ?, ?, ?) RETURNING *'
        )
        .get(projectId, name, description, status, priority, tags);
    
      const row = epic as Record<string, unknown>;
      logActivity(db, 'epic', row.id as number, 'created', null, null, null, `Epic '${name}' created in project ${projectId}`);
    
      return epic;
    }
  • The tool definition and input schema for epic_create.
    {
      name: 'epic_create',
      description: 'Create an epic within a project. Epics group related tasks into a feature or workstream.',
      annotations: { title: 'Create Epic', readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false },
      inputSchema: {
        type: 'object',
        properties: {
          project_id: { type: 'integer', description: 'Parent project ID' },
          name: { type: 'string', description: 'Epic name' },
          description: { type: 'string', description: 'Epic description' },
          status: {
            type: 'string',
            enum: ['planned', 'in_progress', 'completed', 'cancelled'],
            default: 'planned',
          },
          priority: {
            type: 'string',
            enum: ['low', 'medium', 'high', 'critical'],
            default: 'medium',
          },
          tags: { type: 'array', items: { type: 'string' } },
        },
        required: ['project_id', 'name'],
      },
    },
  • Registration of the handleEpicCreate function to the epic_create tool key.
    epic_create: handleEpicCreate,

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/spranab/saga-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server