Skip to main content
Glama
ComplianceCow

ComplianceCow MCP Server

collect_template_input

Validates and processes user-provided template content for task inputs, uploading files for FILE-type inputs and returning references for integration into compliance rules.

Instructions

Collect user input for template-based task inputs.

TEMPLATE INPUT PROCESSING (Enhanced with Progressive Saving):

  • Validates user content against template format (JSON/TOML/YAML)

  • Handles JSON arrays and objects properly

  • Checks for required fields from template structure

  • Uploads validated content as file (ONLY for FILE dataType inputs)

  • Returns file URL for use in rule structure

  • MANDATORY: Gets final confirmation for EVERY input before proceeding

  • CRITICAL: Only processes user-provided content, never use default templates

  • NEW: Prepared for automatic rule updates in confirm step

JSON ARRAY HANDLING (Preserved):

  • Properly validates JSON arrays: [{"key": "value"}, {"key": "value"}]

  • Validates JSON objects: {"key": "value", "nested": {"key": "value"}}

  • Handles complex nested structures with arrays and objects

  • Validates each array element and object property

VALIDATION REQUIREMENTS (Preserved):

  • JSON: Must be valid JSON (arrays/objects) with proper brackets and quotes

  • TOML: Must follow TOML syntax with proper sections [section_name]

  • YAML: Must have correct indentation and structure

  • XML: Must be well-formed XML with proper tags

  • Required fields: All template fields must be present in user content

STREAMLINED WORKFLOW:

  1. User provides template content

  2. Validate and process immediately

  3. Auto-proceed if validation passes

FILE NAMING CONVENTION (Preserved):

  • Format: {task_name}_{input_name}.{extension}

  • Extensions: .json, .toml, .yaml, .xml, .txt based on format

WORKFLOW INTEGRATION (Enhanced):

  1. Called after get_template_guidance() shows template to user

  2. User provides their actual configuration content

  3. This tool validates content (including JSON arrays)

  4. Shows content preview and asks for confirmation

  5. Only after confirmation: uploads file or stores in memory

  6. Returns file URL or memory reference for rule structure

  7. NEW: Prepared for rule update in confirm_template_input()

CRITICAL RULES (Preserved):

  • ONLY upload files for inputs with dataType = "FILE" or "HTTP_CONFIG"

  • Template inputs and HTTP_CONFIG inputs are typically file types and need file uploads

  • Store non-FILE template content in memory

  • ALWAYS get final confirmation before proceeding

  • Handle JSON arrays properly: validate each element

  • Never use template defaults - always use user-provided content

MANDATORY: Task-sequential collection only. Sanitize input names (alphanumeric + underscore).

Args: task_name: Name of the task this input belongs to input_name: Name of the input parameter user_content: Content provided by the user based on the template

Returns: Dict containing validation results and file URL or memory reference, prepared for progressive rule updates

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
task_nameYes
input_nameYes
user_contentYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden. It discloses validation behavior, file upload condition (only for FILE dataType), mandatory confirmation, and rule updates. It covers error-prone details like JSON array handling and sanitization. Lacks details on error handling or idempotency, but overall transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is lengthy and contains redundancy (e.g., 'Preserved' repeated, 'NEW:' temporal markers). It is well-structured with sections, but could be more concise. Some sentences are wordy (e.g., 'MANDATORY: Task-sequential collection only.' could be shorter). Adequate but not optimally concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (3 parameters, no annotations, output schema only described in text), the description covers workflow integration, validation requirements, file naming convention, and return values. It includes critical rules and workflow steps. Missing some edge case handling (e.g., validation failure behavior), but overall complete for a template input collection tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0% description coverage, so the description must compensate. It provides clear semantics for each parameter: `task_name` (task identifier), `input_name` (name of input), and `user_content` (content based on template). It also explains validation formats (JSON/TOML/YAML/XML) and required fields, adding significant meaning beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Collect user input for template-based task inputs.' It provides specific actions (validate, upload, store) and distinguishes from siblings like `collect_parameter_input` and `confirm_template_input` by focusing on template-based inputs. The verb 'collect' and resource 'template input' are precise.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit context on when to use: 'Called after get_template_guidance() shows template to user' and 'Task-sequential collection only.' It also includes critical rules like 'Never use template defaults' and that it is for template inputs, not parameter inputs. However, it does not explicitly list alternatives or when not to use, so slightly incomplete.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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/ComplianceCow/cow-mcp'

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