Skip to main content
Glama
jakedx6

Helios-9 MCP Server

by jakedx6

create_project

Create new projects in Helios-9 with name, description, and initial status to organize work and track progress through structured management.

Instructions

Create a new project with specified details

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYesThe name of the project
descriptionNoOptional description of the project
statusNoInitial status of the projectactive

Implementation Reference

  • The primary handler function for the 'create_project' MCP tool. It validates input using CreateProjectSchema, logs the creation attempt, calls the supabaseService helper to persist the project, logs success, and returns the created project object with a confirmation message.
    export const createProject = requireAuth(async (args: any) => {
      const projectData = CreateProjectSchema.parse(args)
      
      logger.info('Creating new project', { name: projectData.name })
      
      const project = await supabaseService.createProject({
        name: projectData.name,
        description: projectData.description || null,
        status: projectData.status
        // Removed metadata as it doesn't exist in the database schema
      })
      
      logger.info('Project created successfully', { project_id: project.id, name: project.name })
      
      return {
        project,
        message: `Project "${project.name}" created successfully`
      }
    })
  • Zod schema used for input validation in the create_project handler. Defines required 'name', optional 'description', and 'status' with default 'active'.
    const CreateProjectSchema = z.object({
      name: z.string().min(1).max(255),
      description: z.string().optional(),
      status: z.enum(['active', 'completed', 'archived']).default('active')
      // Removed priority, metadata as they don't exist in the database schema
    })
  • MCPTool registration object for 'create_project', including name, description, and inputSchema that matches the Zod validation schema.
    export const createProjectTool: MCPTool = {
      name: 'create_project',
      description: 'Create a new project with specified details',
      inputSchema: {
        type: 'object',
        properties: {
          name: {
            type: 'string',
            minLength: 1,
            maxLength: 255,
            description: 'The name of the project'
          },
          description: {
            type: 'string',
            description: 'Optional description of the project'
          },
          status: {
            type: 'string',
            enum: ['active', 'completed', 'archived'],
            default: 'active',
            description: 'Initial status of the project'
          },
          // Removed priority, metadata as they don't exist in the database schema
        },
        required: ['name']
      }
    }
  • Handler registry object mapping tool names to their handler functions, including 'create_project: createProject'. This is likely used for overall MCP tool registration.
    export const projectHandlers = {
      list_projects: listProjects,
      get_project: getProject,
      create_project: createProject,
      update_project: updateProject,
      get_project_context: getProjectContext,
      archive_project: archiveProject,
      duplicate_project: duplicateProject,
      get_project_timeline: getProjectTimeline,
      bulk_update_projects: bulkUpdateProjects
    }
  • supabaseService.createProject helper method (part of ApiClient) that makes the actual POST API request to '/api/mcp/projects' to create the project in the backend, used by the tool handler.
    async createProject(projectData: ProjectInsert): Promise<Project> {
      const response = await this.request<{ project: Project }>('/api/mcp/projects', {
        method: 'POST',
        body: JSON.stringify(projectData),
      })
      
      logger.info(`Project created: ${response.project.name} (${response.project.id})`)
      return response.project
    }

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/jakedx6/helios9-MCP-Server'

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