Skip to main content
Glama

Teamwork MCP

createProject.ts1.58 kB
import logger from '../../utils/logger.js'; import { getApiClientForVersion } from '../core/apiClient.js'; /** * Project creation data interface */ export interface CreateProjectData { name: string; description?: string; companyId?: number; categoryId?: number; startDate?: string; // Format: YYYYMMDD endDate?: string; // Format: YYYYMMDD status?: string; [key: string]: any; // Allow additional properties } /** * Creates a new project in Teamwork * @param projectData The project data to create * @returns The API response with the created project data */ export const createProject = async (projectData: CreateProjectData) => { try { logger.info('Creating new project in Teamwork'); if (!projectData.name) { throw new Error('Project name is required'); } // The v1 API endpoint for creating projects is /projects.json const api = getApiClientForVersion('v1'); // The API expects the project data to be wrapped in a 'project' object const requestData = { project: projectData }; logger.info(`Creating project with name: ${projectData.name}`); const response = await api.post('/projects.json', requestData); logger.info(`Successfully created project: ${projectData.name}`); logger.info(`Project ID: ${response.data?.id || 'Unknown'}`); return response.data; } catch (error: any) { logger.error(`Failed to create project: ${error.message}`); throw new Error(`Failed to create project: ${error.message}`); } }; export default createProject;

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/Vizioz/Teamwork-MCP'

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