Skip to main content
Glama

get-project-template

Retrieve complete project template details including body, guide, subject, users, tags, and milestone to create new tasks from templates in Dooray.

Instructions

Get detailed information about a specific project template.

This tool retrieves complete template details including body, guide, subject, users, tags, and milestone. The returned data is intended for creating new tasks from templates.

IMPORTANT - Full Details Returned: This tool returns ALL template fields (not filtered) because:

  • Template data will be used for creating new tasks

  • Need body, guide, subject, users, tags, milestone for task creation

  • This is a detail view, not a list view

Template Macros: Template macros like ${year}, ${month}, etc. are returned as-is (not interpolated). These can be processed when creating tasks if needed.

URL Pattern Recognition: When given a Dooray URL like "https://nhnent.dooray.com/task/PROJECT_ID", extract the PROJECT_ID (the first numeric ID after "/task/") and use it as the projectId parameter.

How to get template IDs: Use the get-project-template-list tool to list all templates in a project and get their IDs.

Examples:

  • Get template details: {"projectId": "123456", "templateId": "789012"}

  • "Show me details of template 789012 in project 123456"

Returns complete template information including:

  • id: Template ID

  • templateName: Template name

  • project: Project info (id, code)

  • body: Template body with mimeType and content (markdown or HTML)

  • guide: Template guide/instructions with mimeType and content

  • subject: Default task subject

  • users: Default assignees (to) and CC

  • tags: Default tag IDs

  • milestone: Default milestone (id, name)

  • priority: Default priority level

  • dueDate, dueDateFlag: Default due date settings

  • isDefault: Whether this is the default template

Use this tool to get full template details before creating a new task from the template.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
projectIdYesProject ID where the template belongs
templateIdYesTemplate ID to retrieve

Implementation Reference

  • The main tool handler that fetches the project template details via API and returns JSON-formatted result or error response.
    export async function getProjectTemplateHandler(args: GetProjectTemplateInput) {
      try {
        const result = await projectsApi.getProjectTemplate({
          projectId: args.projectId,
          templateId: args.templateId,
        });
    
        // Return FULL template (no filtering) - needed for task creation
        return {
          content: [
            {
              type: 'text',
              text: JSON.stringify(result, null, 2),
            },
          ],
        };
      } catch (error) {
        return {
          content: [
            {
              type: 'text',
              text: `Error: ${formatError(error)}`,
            },
          ],
          isError: true,
        };
      }
    }
  • Zod schema for validating tool inputs: projectId and templateId.
    export const getProjectTemplateSchema = z.object({
      projectId: z.string().describe('Project ID where the template belongs'),
      templateId: z.string().describe('Template ID to retrieve'),
    });
  • Tool specification object used for listing the tool in MCP, including name, detailed description, and input schema.
    export const getProjectTemplateTool = {
      name: 'get-project-template',
      description: `Get detailed information about a specific project template.
    
    This tool retrieves complete template details including body, guide, subject, users, tags, and milestone. The returned data is intended for creating new tasks from templates.
    
    **IMPORTANT - Full Details Returned**:
    This tool returns ALL template fields (not filtered) because:
    - Template data will be used for creating new tasks
    - Need body, guide, subject, users, tags, milestone for task creation
    - This is a detail view, not a list view
    
    **Template Macros**:
    Template macros like \${year}, \${month}, etc. are returned as-is (not interpolated). These can be processed when creating tasks if needed.
    
    **URL Pattern Recognition**:
    When given a Dooray URL like "https://nhnent.dooray.com/task/PROJECT_ID", extract the PROJECT_ID (the first numeric ID after "/task/") and use it as the projectId parameter.
    
    **How to get template IDs**:
    Use the \`get-project-template-list\` tool to list all templates in a project and get their IDs.
    
    Examples:
    - Get template details: {"projectId": "123456", "templateId": "789012"}
    - "Show me details of template 789012 in project 123456"
    
    Returns complete template information including:
    - **id**: Template ID
    - **templateName**: Template name
    - **project**: Project info (id, code)
    - **body**: Template body with mimeType and content (markdown or HTML)
    - **guide**: Template guide/instructions with mimeType and content
    - **subject**: Default task subject
    - **users**: Default assignees (to) and CC
    - **tags**: Default tag IDs
    - **milestone**: Default milestone (id, name)
    - **priority**: Default priority level
    - **dueDate**, **dueDateFlag**: Default due date settings
    - **isDefault**: Whether this is the default template
    
    Use this tool to get full template details before creating a new task from the template.`,
      inputSchema: {
        type: 'object',
        properties: {
          projectId: {
            type: 'string',
            description: 'Project ID where the template belongs',
          },
          templateId: {
            type: 'string',
            description: 'Template ID to retrieve',
          },
        },
        required: ['projectId', 'templateId'],
      },
    };
  • src/index.ts:60-60 (registration)
    Registers the tool's handler and schema in the central toolRegistry for call_tool requests.
    'get-project-template': { handler: getProjectTemplateHandler, schema: getProjectTemplateSchema },
  • src/index.ts:83-83 (registration)
    Adds the tool specification to the tools array returned in list_tools requests.
    getProjectTemplateTool,

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/jhl8041/dooray-mcp'

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