Skip to main content
Glama

get_template

Read-only

Fetch legal agreement templates with field metadata to fill standard documents like NDAs, SAFEs, and employment contracts, producing DOCX files.

Instructions

Fetch a single template definition with field metadata.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
template_idYesTemplate ID, e.g. "common-paper-mutual-nda".

Implementation Reference

  • The `handleGetTemplate` function implements the core logic for retrieving template details, including metadata loading and handling internal, external, and recipe-based templates.
    export function handleGetTemplate(templateId: string): TemplateItem | null {
      const internalDir = findTemplateDir(templateId);
      if (internalDir) {
        try {
          const meta = loadMetadata(internalDir) as RawTemplateMetadata;
          return toTemplateItem(templateId, meta);
        } catch {
          return null;
        }
      }
    
      const externalDir = findExternalDir(templateId);
      if (externalDir) {
        try {
          const meta = loadExternalMetadata(externalDir) as RawTemplateMetadata;
          return toTemplateItem(templateId, meta);
        } catch {
          return null;
        }
      }
    
      const recipeDir = findRecipeDir(templateId);
      if (recipeDir) {
        try {
          const meta = loadRecipeMetadata(recipeDir);
          return recipeToTemplateItem(templateId, meta);
        } catch {
          return null;
        }
      }
    
      return null;
    }
  • api/mcp.ts:467-483 (registration)
    MCP tool registration and request handling for 'get_template' in the main MCP handler.
    if (name === TOOL_GET_TEMPLATE) {
      const parsed = GetTemplateArgsSchema.safeParse(args);
      if (!parsed.success) {
        return toolErrorResult(
          id,
          TOOL_GET_TEMPLATE,
          ErrorCode.INVALID_ARGUMENT,
          'Invalid arguments for get_template.',
          { details: issueDetails(parsed.error) },
        );
      }
    
      const template = handleGetTemplate(parsed.data.template_id);
      if (!template) {
        return toolErrorResult(
          id,
          TOOL_GET_TEMPLATE,
  • Input validation schema (Zod) for the 'get_template' tool arguments.
    const GetTemplateArgsSchema = z.object({
      template_id: z.string().min(1).optional(),
      template: z.string().min(1).optional(),
    }).transform((v) => ({ template_id: v.template_id ?? v.template ?? '' }))

Tool Definition Quality

Score is being calculated. Check back soon.

Install Server

Other Tools

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/open-agreements/open-agreements'

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